题解 | #学生基本信息输入输出#
学生基本信息输入输出
https://www.nowcoder.com/practice/58b6a69b4bf943b49d2cd3c15770b9fd
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
int main(int argc, const char *argv[])
{
unsigned int number;
double grade1, grade2, grade3;
scanf("%u;%lf,%lf,%lf", &number, &grade1, &grade2, &grade3);
printf("The each subject score of No. %u is %.2lf, %.2lf, %.2lf.", number,
(round(grade1 * 100)) / 100, (round(grade2 * 100)) / 100, (round(grade3 * 100)) / 100);
return 0;
}
请注意,题目中有这么一句话:“注:输出成绩时需进行四舍五入且保留2位小数”。round()函数对浮点数四舍五入求近似值,参数和返回值均为double,但round四舍五入保留的是整数,即保留0位小数,所以我们先将成绩*100,用round四舍五入后再/100,从而实现四舍五入且保留2位小数。



上海得物信息集团有限公司公司福利 1251人发布