标签:
输入机票原价(3到4位的正整数,单位:元),再输入机票打折率(小数点后最多一位数字)。编程计算打折后机票 的实际价格(单位:元。计算结果要将个位数四舍五入到十位数“元”)。输入只有一行两个数(两数间用一个空格分隔),第一个为整数,表示机票原价,第二个 整数或实数(如是实数,小数点后最多1位数字)表示打折率。
输入样例1:
888 7
输出样例1:
620
输入样例2:
1255 7
输出样例2:
880
输入只有一行两个数(两数间用一个空格分隔),第一个为整数,表示机票原价,第二个整数或实数(如是实数,小数点后最多1位数字)表示打折率。
输出只有一行一个正整数,表示打折后的机票价格。
888 7
620
原机票价格大于100小于9999,打折率大于1小于9.9。
思路:这题有点复杂,可以用两个float浮点数保存机票价格和打折率,然后计算乘积除以100(为什么要除以100,因为要保留到十位,如果除以10的话只是保留到了个位,最后再将结果乘回10),可以用:=(int)(x+0.5)>(int)x?(int)x+1:(int)x 这个代码来实现四舍五入,int类型的y,浮点数类型的x,返回的就是四舍五入后的结果
代码如下:
1 #include <stdio.h> 2 int main() 3 { 4 float a,b; 5 float c; 6 int ans; 7 scanf("%f%f",&a,&b); 8 c=a*b/100; 9 ans=(int)(c+0.5)>(int)c?(int)c+1:(int)c; 10 printf("%d\n",ans*10); 11 return 0; 12 }
标签:
原文地址:http://www.cnblogs.com/geek-007/p/5671714.html