Online Compiler C

#include <stdio.h> int main() { long long c,average=0,sum=0,i=0; while ('c'!='.'){ sum=sum+c; i++; } average=sum/i; printf("%lld",average); return 0; }
这段代码试图计算输入数字的平均值,但存在几个关键问题。

代码中 `while ('c'!='.')` 这个条件永远为真,因为字符 `'c'` 永远不会等于字符 `'.'`,所以循环会无限执行。同时,变量 `c` 没有从输入读取数据,导致累加的值是未初始化的。

- 你需要从标准输入读取数据,比如使用 `scanf` 函数,并将读取的值存入变量 `c`。
- 循环条件应该检查读取操作是否成功,或者检查输入的值是否为某个结束标记(比如 `'.'`),而不是比较两个固定字符。