c➕➕写程序,输人10个学生的考试分数(0~100),然后根据每个学生的分数,判断并显示每个学生的学号和等级。学号由1到10,等级关系为: 90≤分数≤100 80≤分数<90 等级= Q 60≤分数<80 0≤分数<60 当分数<0或分数>100时,显示输人错并重新输人。
时间: 2024-10-15 08:27:16 浏览: 21
c代码-编程实现:输入10个学生的6门课成绩,分别求出每个学生的平均成绩。
5星 · 资源好评率100%
在C++中编写这样的程序,可以按照以下步骤进行:
```cpp
#include <iostream>
#include <string>
int main() {
int scores[10];
for (int i = 0; i < 10; ++i) {
std::cout << "请输入第" << (i + 1) << "位学生的分数(0-100):" << std::endl;
// 输入检查
while (!(std::cin >> scores[i])) { // 如果输入错误,回退并提示用户重新输入
std::cout << "输入错误,请输入0-100之间的整数:" << std::endl;
std::cin.clear(); // 清除错误状态标志
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n'); // 清空缓冲区
}
if (scores[i] > 100 || scores[i] < 0) {
std::cout << "输入错误,分数应为0-100之间,请重新输入:" << std::endl;
i--; // 回退本次循环,继续下一次输入
continue;
}
std::string grade;
if (scores[i] >= 90) {
grade = "A";
} else if (scores[i] >= 80) {
grade = "Q"; // 由于题目需求,这里直接用英文表示“优秀”
} else if (scores[i] >= 60) {
grade = "P";
} else {
grade = "F"; // 一般及格
}
std::cout << "学生学号:" << i+1 << ", 分数:" << scores[i] << ", 等级:" << grade << std::endl;
}
return 0;
}
```
阅读全文