这段代码试图从输入中读取字符直到遇到句号,然后计算这些字符的平均值并输出。但代码中存在几个问题。
- 你在循环中同时使用了 `getchar()` 和 `scanf("%c",&c)`,这会导致每次循环读取两个字符,而不是一个。你只需要保留其中一种读取方式。
- 变量 `c` 是 `char` 类型,但 `sum` 是 `long long`。当你把字符加到 `sum` 时,实际上加的是字符的 ASCII 码值,而不是字符本身。你需要确认这是否是你想要的平均值含义。
- 当 `i` 为 0 时(即第一个字符就是句号),`average=sum/i` 会导致除零错误。