Online Compiler C

// 统计输入文本中数字字符(0-9)的个数,文本以英文句点 '.' 结束 #include <stdio.h> int main() { char ch; int sum=0; while(1) { scanf("%c",&ch); if(ch=='.')//遇到.终止 { break; } if(ch>='0'&&ch<='9')//字符为数字字符:计数count+1 { sum=sum+ch; } } printf("%d\n",count); return 0; }
这段代码试图统计输入文本中数字字符(0-9)的个数,但存在几个问题。

- 变量 `sum` 被用来累加数字字符的ASCII码值,而不是计数。你需要一个变量来记录数字字符出现的次数,每次遇到数字字符时应该让这个计数加1,而不是加上字符本身。
- 最后输出时使用了未定义的变量 `count`,而程序中实际定义的是 `sum`。输出变量名需要与定义和累加的变量名一致。