我正在制作一个成绩日志应用程序,我在这里有这段代码,因为我不打算工作.(它编译很好,没有错误,但不起作用)(请记住我是C++的初学者,谢谢你的时间和知识,以帮助我学习).(测试核心是从一系列问题中得出的,如果正确则值为+1,如果错误则为-1.
我认为错误是在=>它与另一个相冲突但我不知道如何为ex赋值.如果得分<20 cout =失败,如果它的<40失败好但是看到20是<40所以一个覆盖另一个如果它从20-40 cout =失败好并且如果它从0 - 20 cout =失败我怎么能放.我希望你明白我的意思.
int testscore;
string studentmark;
if ( testscore == 10 )
{
studentmark == ( "failed" );
}
else if ( testscore >= 11 && testscore <= 20 )
{
studentmark == ( "closebutfailed" );
}
else if ( testscore >= 21 && testscore <= 30)
{
studentmark == ( "passed" );
}
else if ( testscore >= 31 && testscore <= 40 )
{
studentmark == ("excelent");
}
else if ( testscore >=49 )
{
studentmark == ("hasteachersbook");
}
cout << "Studentmark is:" << studentmark << endl;
Run Code Online (Sandbox Code Playgroud)
Eli*_*ght 14
首先,您的问题是您应该使用单个等号进行分配,例如
studentmark = "failed";
/// ^^^^ Note single =
Run Code Online (Sandbox Code Playgroud)
其次,你最好把这些if语句写成
if (testscore <= 10) { ... }
else if (testscore <= 20) { ... }
else if (testscore <= 30) { ... }
...
Run Code Online (Sandbox Code Playgroud)
因为这更容易阅读,并且else声明的存在意味着您不必测试testscore大于您已经涵盖的数量.
| 归档时间: |
|
| 查看次数: |
174 次 |
| 最近记录: |