In the below code, I am attempting to count the number of letters and number of words in a phrase. In researching the return values of isalpha(), I noted that when a letter is present the first character isalpha() output is 1. But the second character isalpha() output is 2? The phrase that was input into this example was the following: How do you organize? Can someone help me with why I am not getting uniform output for the "H" character and the "o" character?
Code:#include <stdio.h> #include <ctype.h> int main(void) { int ch; float avg = 0; int spaces = 0; int letters = 0; int test = 0; int ltrcnt = 0; int spccnt = 0; while((ch = getchar()) != '\n') { test = isalpha(ch); if(isalpha(ch) == 2) { ltrcnt++; } if(isspace(ch) == 8) { spccnt++; } } printf("The Number Of Words Are %d , The Number Of Letters Are %d ",(spccnt+1),ltrcnt); }



LinkBack URL
About LinkBacks



