Tyto stránky již nejsou udržovány. Obsah je postupně přesouván/aktualizován na adrese chytrosti.marrek.cz.
1/1
Na této stránce jsou k dispozici zdrojové soubory, které jsem vytvářel při výkladu během výuky. Nejsou to ukázkové a bezchybné zdrojové soubory. Ba naopak, jsou to pracovní neučesané verze, které vznikaly interaktivně ve výuce, často s cílem ukázat, že "takto se to nemá".
1 /*
2 * Soubor: 20101101-Mon-wc.c
3 * Datum: 01.11.2010 10:04
4 * Autor: Marek Nožka, nozka z@vináč spseol tečka cz
5 * Licence: GNU/GPL
6 * Úloha: program pro počítání slov, řádků a písmen
7 */
8
9 #include <stdio.h>
10
11 /////////////////////////////////////////////////////
12 #define SLOVO 1
13 #define BILYZNAK 0
14 /**
15 * Hlavní program.
16 */
17 int main(void)
18 {
19 int c; // proměnná pro ukládání načteného znaku
20 int slova = 0; // počet slov
21 int radky = 0; // počet řádků
22 int znaky = 0; // počet znaků
23 int poloha; // udává jestli jsem uvnitř slova nebo vně slova
24
25 poloha = BILYZNAK;
26 while ((c = getchar()) != EOF) {
27 if ( c != '\n' ) {
28 ++znaky;
29 } else {
30 ++radky;
31 }
32 if ( c == ' ' || c == '\t' || c == '\n' ) {
33 poloha = BILYZNAK;
34 } else if ( poloha == BILYZNAK ) {
35 ++slova;
36 poloha = SLOVO;
37 }
38 }
39 printf("\t %d %d %d\n",radky,slova,znaky);
40 return 0;
41 }