求平均值(坑点-数据精度)

#include<stdio.h>

int main()
{
    int a,b,c;
    double average_value;

    scanf("%d%d%d",&a,&b,&c);
    average_value = (double)((a+b+c)/3);//

    printf("%.6lf",average_value);
    return 0;
}

当上面的3变成3.0的时候就通过了,不知道为什么。个人感觉是因为整数之间运算仍然是整数,而浮点数和整数之间的运算,最后的结果是浮点数。

全部评论
是的
点赞 回复 分享
发布于 2019-10-17 13:39
我觉得你有了(double)就能通了。 我的这个就通过了  #include<stdio.h> int main(){     int a,b,c;     double  d;     scanf("%d%d%d",&a,&b,&c);     d=(double)(a+b+c)/3;     printf("%lf",d);     return 0; }
点赞 回复 分享
发布于 2021-10-16 10:04

相关推荐

SinyWu:七院电话面的时候问我有没有女朋友,一听异地说你赶紧分。我:???
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务