如果有四个输入,如何使用switch语句

How to use switch statements if you have four inputs

本文关键字:何使用 switch 语句 输入 四个 如果      更新时间:2023-10-16

一个班一学期有四次考试。输入每个考试成绩并分配相应的分数。

90及以上为A
80到89是B
70到79是C
60到69是D
低于60为F
低于0是无效的

我只能使用1个输入而不是4个进行编码

#include<iostream>
using namespace std;
int main(){
int a;
cout<<"Input Examination Score: ";
cin>>a;
switch (a / 10){
case 0: 
case 1: 
case 2: 
case 3:
case 4:
case 5: cout <<"Equivalent is F"<<endl;
break;
case 6: cout <<"Equivalent is D"<<endl;
break;
case 7: cout <<"Equivalent is C"<<endl;
break;
case 8: cout <<"Equivalent is B"<<endl;
break;
case 9:
case 10: cout <<"Equivalent is A"<<endl;
break;
default: cout <<"Invalid Score"<<endl;
break;
}

您可以用不同的方式来实现这一点。您可以使用for循环或while/do-while循环。

for(int i = 0; i < 4; i++) // runs 4 times
{
    //Do your thing
}

或者,您可以创建一个值为4的变量,使用while/do-while循环每学期减少1,直到它为0。

使用循环多次读取输入,然后在打印结果时计算平均值:

#include<iostream>
using namespace std;
int main(){
    int number_grades = 4;
    int sum = 0;
    for (int i=0; i<number_grades; ++i) {
        int a;
        cout<<"Input Examination Score: ";
        cin>>a;
        sum +=a;
    }
    switch ((sum/number_grades) / 10){
    case 0: 
    case 1: 
    case 2: 
    case 3:
    case 4:
    case 5: cout <<"Equivalent is F"<<endl;
        break;
    case 6: cout <<"Equivalent is D"<<endl;
        break;
    case 7: cout <<"Equivalent is C"<<endl;
        break;
    case 8: cout <<"Equivalent is B"<<endl;
        break;
    case 9:
    case 10: cout <<"Equivalent is A"<<endl;
        break;
    default: cout <<"Invalid Score"<<endl;
        break;
    }
    return 0;
}