嗨,伙计们,我刚刚用C语言用记事本++和Cygwin写了一个小程序所以代码如下:
#include <stdio.h>
int main()
{
int c, i, countLetters, countWords;
int arr[30];
countLetters = countWords = 0;
for(i = 0; i < 30; ++i)
arr[i] = 0;
while(c = getchar() != EOF)
if(c >= '0' && c <= '9')
++arr[c - '0'];
else if (c == ' ' || c == '\n' || c == '\t')
++countWords;
else
++countLetters;
printf("countWords = %d, countLetters = %d\n",
countWords, countLetters );
}
但程序不计算单词数,而是将单词数为字母,并将其打印为字母和单词=0我错在哪里,因为连我的老师都不能给我答案。。。
最佳答案
尝试使用花括号,而c = getchar()
需要括号。
while((c = getchar()) != EOF) {
^ ^
/* Stuff. */
}
关于c - C程序的错误输出没有错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7268228/