http://acm.hdu.edu.cn/showproblem.php?pid=4493
题意是输入12个数据,让你求平均值,但是要去除尾零,就像100.00只要输出100
其实这题有点不严密,像这组数据
2
100.995
100.995
100.995
100.995
100.995
100.995
100.995
100.995
100.995
100.995
100.995
100.995
输出100,其他可以过的输出100.10以及101都可以
用自己的方法死活不可以过,上网搜了一下,都是各显神通啊,题目也是有点坑
写个题解记录下,也是发现一种方法(+0.005)
遇到题,还是不能急,慢慢想解决办法。。。。。。。。。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
double n,m,sum;
int i,j,t;
scanf("%d",&t);
while(t--)
{
sum=0.0;
for(i=0;i<12;i++)
{
scanf("%lf",&n);
sum+=n;
}//printf("%lf^",sum);
sum/=12.0;
//sum+=0.005;
int data;
data=(int)((sum+0.005)*100);
int a,b,c;
a=(data%10);
b=(data/10%10);//printf("%d%d^",a,b);
if(a==0&&b==0)
printf("$%d
",(int )sum);
else if(a==0)
printf("$%.1lf
",sum);
else printf("$%.2lf
",sum);
}
return 0;
}