我刚刚开始用c ++编程,并尝试创建一个程序,根据您输入的分数返回您的成绩。 然而,虽然A级是正确的,但我注意到其他等级返回了一些错误的结果。我将粘贴下面的代码,如果有人可以看一下,我将非常感激!
#include <stdafx.h>
#include <iostream>
using namespace std;
void printgrade(double score);
int main() {
double score;
std::cout << "Hello, Please enter your score: " << std::endl;
std::cin >> score;
printgrade(score);
system("pause");
return 0;
}
void printgrade (double score) {
if (score >= 90.0)
std::cout << " A " << std::endl;
else if (score <= 80.0)
std::cout << " B " << std::endl;
else if (score >= 70.0)
std::cout << " C " << std::endl;
else if (score >= 60.0)
std::cout << " D " << std::endl;
else if (score >= 50.0)
std::cout << " E " << std::endl;
else if (score >= 40.0)
std::cout << " F " << std::endl;
}
答案 0 :(得分:1)
if (score >= 90.0)
std::cout << " A " << std::endl;
else if (score <= 80.0)
std::cout << " B " << std::endl;
else if (score >= 70.0)
std::cout << " C " << std::endl;
score <= 80
条件应更改为>=
。
按照目前的情况,您(按优先顺序)获得A
>= 90
,B
<= 80
以及C
{1}} >= 70
。由于这涵盖了所有的可能性,因此无法获得其他成绩。