问题描述
小雅刚刚考完语文、数学、英语的三门期中考试,她想请你编个程序来帮她算算她的平均分。
要求输入三个正整数,分别表示三科考试的分数,输出它们的平均值。
输入
一行,包括三个正整数,两两之间用一个空格分隔。
输出
一个数,表示输入的三个数的平均值。(注意:结果请保留 33 位小数)。
样例
输入
75 88 99
输出
87.333
说明
特别说明:
输入的三个正整数均不超过 150,输出的数应该使用 double 类型的。
代码1
#include <iostream>
#include <iomanip> // 用于设置输出精度
using namespace std;
int main() {
int score1, score2, score3;
cin >> score1 >> score2 >> score3;
double average = (score1 + score2 + score3) / 3.0; // 计算平均值
cout << fixed << setprecision(3) << average << endl; // 输出结果,保留 3 位小数
return 0;
}
这段代码通过输入三个正整数分别表示语文、数学、英语的分数,计算它们的平均值并输出。首先,使用三个变量 score1、score2、score3 分别接收输入的三个分数值。然后,计算平均值,使用除法时注意至少有一个操作数为浮点数,以保证得到正确的结果。最后,使用 fixed
和 setprecision
控制输出的精度,保留 3 位小数,并输出结果。
代码2
#include <iostream>
using namespace std;
int main() {
int score1, score2, score3;
cin >> score1 >> score2 >> score3;
double average = (score1 + score2 + score3) / 3.0; // 计算平均值
printf("%.3f\n", average); // 使用 printf 来输出结果,保留 3 位小数
return 0;
}
这段代码与之前的代码逻辑相同,使用三个变量分别接收输入的三个分数值,计算平均值,并使用 printf
函数输出结果。%.3f
表示输出一个浮点数,并保留 3 位小数。