【题目描述】请编写一个C程序,在终端用键盘输入字符串,以Ctrl+Z组合键表示输入完毕,统计输入的字符串中空格符、制表符、换行符的个数,并显示统计的结果。
【代码实现】
# include <stdio.h>
int main()
{int space = 0, tab = 0, enter = 0; // 分别将空格符、制表符、换行符的个数初始化为0char ch; // 字符变量保存读入的字符while (scanf("%c", & ch) != EOF) {if (ch == ' ') { // 空格符 ++space;} else if (ch == '\t') { // 制表符 ++tab;} else if (ch == '\n'){ // 换行符 ++enter; }}printf("space = %d, tab = %d, enter = %d\n", space, tab, enter); // 输出结果 return 0;
}
# include <stdio.h>
int main()
{int space = 0, tab = 0, enter = 0; // 分别将空格符、制表符、换行符的个数初始化为0char ch;ch = getchar(); // 换成scanf函数不输出结果了!!!while (ch != EOF) {if (ch == ' ') { // 空格符 ++space;} else if (ch == '\t') { // 制表符 ++tab;} else if (ch == '\n'){ // 换行符 ++enter; }ch = getchar(); // 换成scanf函数不输出结果了!!!}printf("space = %d, tab = %d, enter = %d\n", space, tab, enter); // 输出结果 return 0;
}
以上代码需要按两次Ctrl+Z组合键才能结束,奇怪。。。。