我已经在Visual Studio中的C ++中输入了if else代码,它表明在Else和Else if中应该有一条语句
我的代码是
#include <iostream>
using namespace std;
int main()
{
float marks, result;
cout << "Enter your Marks:";
cin >> marks;
if(marks>=50 && marks <= 100);
{
cout << "Passed";
}
else if (marks < 50 && marks>=0);
{
cout << "The grade is F ";
}
else
{
cout << "Enter marks correctly";
}
}
output is
Enter your marks:97
passedenter marks correctly
if和in else中的两个语句都打印为什么??
答案 0 :(得分:4)
问题是在这里
if(marks>=50 && marks <= 100);
您有不应该存在的;
。因此,;
是if
语句的主体。这意味着“什么都不做”。结果,以下
{
cout << "Passed";
}
...与if
语句无关,将始终执行。之后就是这个:
else if (marks < 50 && marks>=0);
这里有同样的问题,但是else
无法编译,因为之前没有if
。请记住,else
之前的代码块错误地不是if
的一部分。相反,您想要的是这样:
if(marks>=50 && marks <= 100)
{
cout << "Passed";
}
else if (marks < 50 && marks>=0)
{
cout << "The grade is F ";
}
else
{
cout << "Enter marks correctly";
}