#include<stdio.h> int main(void) { char ch; int n,m,j; while((ch = getchar()) != '#') { if( ch == ' ') { n++; } else if(ch == '\n') { m++; } else j++; } printf("%d,%d,%d",n,m,j); return 0; }有什么问题?
时间: 2024-02-10 11:12:13 浏览: 72
#include <stdio.h>
4星 · 用户满意度95%
在程序中,变量 `n`、`m` 和 `j` 在定义时没有被初始化,导致它们的初始值是未知的。这可能会导致程序输出的结果不正确。
为了避免这个问题,应该在定义变量时给它们赋一个初始值,例如将它们都初始化为 0:
```c
int n = 0, m = 0, j = 0;
```
另外,程序中的输出语句 `printf("%d,%d,%d",n,m,j);` 可能需要加上换行符,以使输出更清晰:
```c
printf("%d,%d,%d\n", n, m, j);
```
这样输出结果后会自动换行。
阅读全文