求编程:输入学生成绩(百分制),判断该成绩的等级(优秀.良好,中等,及格,不及格)

如题所述

/*求编程:输入学生成绩,判断该成绩的等级;............by Mr.Kong*/
#include<stdio.h>
main()
{
int score,a;
printf("请输入学生的成绩:");
do
{
scanf("%d",&score);

while(score<0||score>100); /*学生的成绩在0至100之间*/
a=score/10;
switch(a)
{
case 10:
case 9:
printf("优秀"); /*成绩大于90分为优秀*/
break;
case 8:
case 7:
printf("中等"); /*成绩在70至80分之间为中等*/
break;
case 6:
printf("及格"); /*成绩在60至70分之间为及格*/
break;
default :
printf("不及格"); /*成绩在低于60分为不及格*/
break;
}

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-27
Private Sub Command1_Click()
Dim a As Integer
a = Val(InputBox(""))
Select Case a
Case 0 To 59
MsgBox "不及格"
Case 60 To 69
MsgBox "及格"
Case 70 To 79
MsgBox "中等"
Case 80 To 89
MsgBox "良好"
Case 90 To 100
MsgBox "优秀"
Case Else
MsgBox "输入非法"
End Select
End Sub本回答被网友采纳
第2个回答  2017-07-12
假设成绩为x,看是输入还是读取文件啥的

if( x >= 60 && x < 70 )
{
printf("中等.\n" );
}
else if( x >= 70 && x < 80 )
{
.......
}
写上一串if else 做

或者用switch来做
switch( x/10 )
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
printf( "不及格.\n" );
break;
case 6:
...
break;
case 7:
...
break;
case 8:
...
break;
case 9:
case 10:
...
break;
defualt
...
break;
第3个回答  2017-08-07
#include<stdio.h>
int main(void)
{
double a;
printf("输入成绩");
scanf("%lf",&a);
if(a>=90){
printf("该成绩为优秀");}
else if(a>=80){
printf("该成绩为良好");}
else if(a>=70){
printf("该成绩为中等");}
else if(a>=60){
printf("该成绩为及格");}
else if(a<60){
printf("该成绩为不及格");}
return 0;}
第4个回答  2013-10-27
如果是输入百分制的话上面的代码可能会出现问题,因为他没有过滤百分号

Private Sub form_Click()
a = InputBox("请输入成绩", "提示")
If InStr(a, "%") > 0 Then '如果含有成绩里含有百分号时则替换为空防止出错
a = Replace(a, "%", "")
Else
If InStr(a, "% ") = 0 Then '如果没有百分号则正常运行
a = a
End If
End If
Select Case a
Case 1 To 60
MsgBox "不及格"
Case 61 To 80
MsgBox "优良"
Case 81 To 100
MsgBox "优秀"
Case Else
MsgBox "成绩出错"
End Select
End Sub
相似回答