高级天翼
求为什么错了?90分?
#include<bits/stdc++.h>
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
int main(void)
{
double a,b,c,x;
double sum=0;
cin>>a>>b>>c;
sum=a+b+c;//加起来
x=sum-((int)(sum));//取小数部分
if(x>=0.0&&x<=0.4)//是0到4的话
x=0.0;//小数部分变成0
else
x=0.5;//小数部分变成5
sum=(int)sum+x;//整数部分加小数部分
printf("%.1f",sum);
return 0;
}
大神速速答!!!我写了注释,应该能看懂的。
李泽远在2019-07-27 09:29:08追加了内容
24酷町币谁要啊??!!
快快快!!!
还有经验值!!!
告诉我哪错了??!!
24酷町币加上lots of经验值!!
李泽远在2019-07-27 09:35:44追加了内容
友军支援我!!!
(看头像)
(看头像)
(看头像)
初级启示者
首先你的头文件太多了,浪费内存和时间,此题只用cstdio或者再加个iostream就够够了。
这道题可以把
if(x>=0.0&&x<=0.4)//是0到4的话
改成
if(x>=0.0&&x<0.5)//是0到4的话
至于为什么这么改,我以前的范老师好像说过因为担心x是(两位小数?),我也记得不太清了,只记得说好像x万一大于0.4并且小于0.5,就得这样写...建议你可以问下老师。
我以前也是差不多你这种写法,但是后来改了AC。
建议不要main(void)写法,万一return值为1呢?
初级光能
修练者
2133的问题我也是搜的,网址是第一个问题的,没有抄袭,信不信看你,还有这题这么解:
首先sum累加三个的总价sum=m+n+h;(变量我用原题的),如果sum-强转int的sum>=0.5的话,输出强转int的sum再原样输出".5"
否则输出强转int的sum再原样输出".0"。
条件判断:if(sum-(int)sum>=0.5)
成立输出:cout<<(int)sum<<".5";
不成立输出:cout<<(int)sum<<".0";
望采纳谢谢,思路不清楚请留言,我会看的。
还有最重要的:
面壁者,那谁家的小谁•李泽远 我是你的破壁人 陈思远