为什最后没算出来平均数

img

我刚接触c语言,不太熟悉,不明白我刚才写的程序为什么最后我输入1 2 3,系统没有算出来平均数,我是哪里错了嘛,我觉得我应该是在最后输入数字的时候又错了

scanf("%d", &number);
你缺少了取地址

【以下回答由 GPT 生成】

问题的原因在于你在输入数字的循环中没有正确更新sumcount的值,你需要把计算平均数的代码放到循环的外面。

以下是修改后的代码:

#include <stdio.h>

int main(){
    int number;
    int count = 0;
    int sum = 0;

    printf("输入数字n: ");
    scanf("%d", &number);

    while(number != -1){
        sum = sum + number;
        count++;

        scanf("%d", &number);
    }

    double average = (double)sum/count;
    printf("平均数为: %f", average);

    return 0;
}

这样修改后,程序会在用户输入-1之前持续接收数字,并计算它们的总和和个数。当用户输入-1时,循环结束,然后计算平均数并输出。

希望这个解决方案能帮助到你。如果还有其他问题,请随时提问。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^