解题思路:
其实不需要开数组,一个一个字符读入并判断就好了
注意事项:
结束不是'\0',也不是'\n',而是'EOF',即文件结束
参考代码:
#include <stdio.h> int main() { int word = 0, number = 0, space = 0, others = 0; int ch; while ((ch = getchar()) != EOF) { if ('a' <= ch && ch <= 'z' || 'A' <= ch && ch <= 'Z') { word++; } else if ('0' <= ch && ch <= '9') { number++; } else if (ch == ' ') { space++; } else { others++; } } printf("%d %d %d %d", word, number, space, others); return 0; }
0.0分
3 人评分
校门外的树 (C语言代码)浏览:699 |
时间转换 (Java代码)浏览:560 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:574 |
C语言程序设计教程(第三版)课后习题8.7 (C语言代码)浏览:583 |
简单的a+b (C语言代码)浏览:780 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:459 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:906 |
数字游戏 (C++代码)浏览:1121 |
川哥的吩咐 (C语言代码)浏览:596 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:556 |
ET 2018-06-30 22:08:22 |
诈尸来回复,,因为我用getchar读入的,而不是scanf("%s",.....)末尾没有\0