题目作者:龚雄兴 湖北文理学院
本题目要求读入2个整数A和B,其中A是应到人数,B是实到人数,请编程输出其出勤率(百分比形式,保留一位小数)。
输入格式:
在一行中给出2个不超过1000的非负整数A和B,以空格分隔,你可以假定这两个数据都是合理数据。
输出格式:
在一行中以\出勤率=B/A=百分比%\的形式输出出勤率(保留一位小数,除汉字外均为西文字符)。
输入样例:
76 71
输出样例:
\出勤率=71/76=93.4%\
思路1:因为要得到浮点数,所以直接声明浮点数A,B进行读入和计算
注意:题目主要的难点时输出格式问题,(1)要输出'\',需要用转移字符'\\';(2)要输出'%',需要些两个和%,即'%%';(3)保留n位浮点数,用%.nf。
代码1:
#include <stdio.h>
int main () {
float A,B;
scanf("%f%f", &A,&B);
printf("\\出勤率=%.0f/%.0f=%.1f%%\\",B,A,B/A*100);
return 0;
}
思路2:如果非要用整数读入A,B,也不是不可以,但是要注意在计算B/A时,要把B强制转化为浮点数或者给B前面乘以1.0,否则B/A中的除就是整除,只能得到整数。
代码2:
#include <stdio.h>
int main () {
int A,B;
scanf("%d%d", &A,&B);
printf("\\出勤率=%d/%d=%.1f%%\\",B,A,1.0*B/A*100);
return 0;
}