编写程序,输入 3 个整数,计算并输出它们的平均值(结果保留2位小数)。

这是我写的:#include<stdio.h>intmain(void){inta,b,c;doubleaverage;scanf("%d%d%d",&a,&b,&c);... 这是我写的: #include <stdio.h> int main(void) { int a,b,c; double average; scanf("%d%d%d",&a,&b,&c); average=(a+b+c)/3; printf("average = %.2f\n", average); return 0; } 虽然定义了average为double,但输出来怎么还是整数,比如: 输入2 3 9,出来是4.00 展开
 我来答
百度网友e7d358b
2018-02-27 · TA获得超过1964个赞
知道小有建树答主
回答量:1399
采纳率:89%
帮助的人:164万
展开全部
因为这句average=(a+b+c)/3中的“/”是整除符号,所以计算结果会自动取整的。
如果需要保留小数时,必须将其中一个除数转换为浮点数,因此应该改为:
average=(double)(a+b+c)/3 或者
average=(a+b+c)/3.00
悉珈蓝许t2
推荐于2018-02-28 · TA获得超过110个赞
知道答主
回答量:179
采纳率:100%
帮助的人:139万
展开全部
注意average=(a+b+c)/3;这句 首先从右边开始执行,计算出的结果仍为int型 当下一步开始赋值时才会转化为double型 所以,这里的int的4就转为double的4.00
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
抹不净的痕迹
2018-02-27
知道答主
回答量:2
采纳率:0%
帮助的人:1487
展开全部
average=1.0*(a+b+c)/3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阳明谭殷东9k
2018-02-27
知道答主
回答量:14
采纳率:0%
帮助的人:9.8万
展开全部
3改成3.0试试?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式