C++编程实现输入一个成绩等级(A,B,C,D,E)输出对应的百分制成绩。我的这个怎么改呀?帮我一下吧,谢谢!!

2024-12-04 20:57:05
推荐回答(4个)
回答(1):

char a;与下面的if (strcmp(a,s2)=0)是有类型不一致的。

strcmp要求比较的是字符串 char[] 或者 char*
这里你可以这么改
把s1到s4声明成char, char s1='A';....
比较的时候直接 if(s1 == a)

注意大小写。

回答(2):

#include
using namespace std;

int main( )
{
char grade;
cout << "请输入成绩等级(A、B、C、D、F): ";
cin >> grade;

switch( grade )
{
case 'A' : case 'a' :
cout << "90-100\n";
break;
case 'B' : case 'b' :
cout << "80-89\n";
break;
case 'C' : case 'c' :
cout << "70-79\n";
break;
case 'D' : case 'd' :
cout << "60-69\n";
break;
case 'F' : case 'f' :
cout << "0-59\n";
break;
default : cout << "error\n";
}
}

望采纳。

回答(3):

1.你不能拿一个字符和字符串比较
2.逻辑运算符 等于 "==" 不是"="

回答(4):

switch(grade)
{case'A':cout<<"85~100\n";break;
case'B':cout<<"70~84\n";break;
case'C':cout<<"60~69\n";break;
case'D':cout<<"<60\n";break;
default:cout<<"error\n";break;
}