写一个c++程序 小明的妈妈非常关心小明的成绩,每次考试后都会问小明是否进步了。机智的小明会努力找出之前比这次成绩低的试卷进行比较,如果找到了,他会回答妈妈自己进步了(Y),如果没找到,他只能回答妈妈没进步(N)。已知小明的次成绩,请问每次妈妈询问小明,小明的回答是怎么样的。输入为2行,第1行是一个整数 n(n<=100),即考试成绩的数量,第二行是 n个整数,即每次考试成绩。输入保证不大于100,考试成绩在0到100之间。 输出n行,每行是小明的回答(Y或N)
时间: 2024-04-17 07:24:27 浏览: 133
请帮小明同学设计一个程序,输入上次考试成绩(int)和本次考试成绩(int),然后输出成绩提高的百分比,保留两位小数位
非常抱歉,之前给出的答案有误。以下是修正后的C++程序,可以满足你的要求:
```cpp
#include <iostream>
#include <vector>
int main() {
int n;
std::cin >> n;
std::vector<int> scores(n);
for (int i = 0; i < n; ++i) {
std::cin >> scores[i];
}
std::vector<char> answers(n, 'N');
for (int i = 1; i < n; ++i) {
for (int j = i - 1; j >= 0; --j) {
if (scores[i] < scores[j]) {
answers[i] = 'Y';
break;
}
}
}
for (int i = 0; i < n; ++i) {
std::cout << answers[i] << std::endl;
}
return 0;
}
```
这个程序首先读取考试成绩的数量 `n`,然后读取 `n` 个整数作为每次考试的成绩。接下来,程序会遍历这些成绩,从当前考试开始,逐个与之前的考试进行比较,如果找到了比之前成绩低的试卷,将回答设为 'Y'。最后,程序输出每次小明的回答('Y'或'N')。
希望这个修正后的程序能够满足你的需求!如果你有任何其他问题,请随时问我。
阅读全文