Jadąc za wskazówkami książki napisałem taki program do zliczania słów, znaków i wierszy. Tylko nie rozumiem jak działa tutaj getchar.
Z tego co wyczytałem getchar pobiera pojedyncze znaki, a tu od razu wpisuje cały twks nie znak enter, znak enter. Dlaczego tak jest??
Chciałem tez zrobić tak aby wyczyściło ekran za pomocą system("CLS") i wyświetliło ten tekst który wpisałem ale mi to nie idzie putchar wyświetla tylko jeden znak, %c to samo a %s nie działa bo to nie jest string.
#include <stdio.h>
#include <ctype.h>
#define STOP '|'
#define TAK 1
#define NIE 0
int main(void)
{
char x;
int i;
int LicznikSlow=0, LicznikZnakow=0, LicznikWierszy=0;
int flaga=NIE;
printf("Podaj tekst tekstu:\n");
while((x=getchar()) != STOP)
{
LicznikZnakow++;
if(x=='\n')
{
LicznikWierszy++;
}
if(!isspace(x) && flaga==NIE)
{
flaga=TAK;
LicznikSlow++;
}
if(isspace(x) && flaga==TAK)
{
flaga=NIE;
}
}
printf("Tekst zawiera %d slow, %d znakow, %d wierszy\n", LicznikSlow, LicznikZnakow, LicznikWierszy);
system("pause");
return 0;
}