用switch语句怎样判断成绩的等级
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用switch语句怎样判断成绩的等级相关的知识,希望对你有一定的参考价值。
#include <stdio.h>
#include <stdlib.h>
int main ( )
int grade,rate;
printf("所得成绩:\\n");
scanf("%d",&grade);
rate=(grade>=60)+(grade>=70)+(grade>=80)+(grade>=90);
switch(rate)
case 0:
printf("输出等级:E");
break;
case 1:
printf("输出等级:D");
break;
case 2:
printf("输出等级:C");
break;
case 3:
printf("输出等级:B");
break;
default:
printf("输出等级:A");
return 0;
扩展资料:
代码知识总结:
1.if语句的嵌套要注意大括号的一一对应,实现if--else的正确匹配;
2.switch...case..break语句不要误丢break,case后面跟的是变量,且case后面要加空格;
3.运算符要注意优先级;
4.缩进格式并不能暗示else的匹配;
5.在if和else后面总要用到,即使只有一条语句。
参考资料:
百度百科-switch
#include<stdio.h> //头文件
int main() //定义主函数
int score,n; //分数为整型score,n
printf("请输入分数:\\n"); //输出分数的值
scanf("%lf",&score); //输入分数的值
n=score/10;
switch(n) //进入循环体,进行循环
case 10:
case 9:printf("A(最好)\\n");break;
case 8:printf("B(优秀)\\n");break;
case 7:printf("C(良好)\\n");break;
case 6:printf("D(及格)\\n");break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:printf("E(不及格)\\n");break; //不合格时,输出不合格
default:printf("Error!\\n");
扩展资料
switch语句的基本形式
switch(表达式)
case 常量表达式1: 语句1;
case常量表达式2: 语句2;
......
case常量表达式n: 语句n;
default: 语句n+1;
说明
switch后面的括号内的表达式,ANSI标准允许为任何类型。
当表达式与某一个case后面的常量表达式相等时,就执行case后面的语句,若没有匹配,则执行default后面的语句。
每一个case的常量表达式的值须互不相同,否则便会出现矛盾。各个case和default的出现次序不影响结果。
执行完一个case语句,流程就转移到下一个case并继续执行.因此在case的分支后,加break语句来跳出switch语句。
参考资料来源:百度百科—switch循环
例:用switch来判断用户输入的成绩应该属于哪个范围。60一下不及格,60-70及格,70-80良好,80-90优秀,90以上学霸
<script type="text/javascript">
var score=parseInt(prompt('请输入你的成绩'));
switch(true)
case score>=0&&score<60:
alert('不及格');
break;
case score>60&&score<=70:
alert('及格');
break;
case score>70&&score<=80:
alert('良好');
break
case score>80&&score<=90:
alert('优秀');
break;
case score>90&&score<=100:
alert('优秀');
break;
default:
alert('输入不合法');
</script>
扩展资料:
代码知识总结:
1.if语句的嵌套要注意大括号的一一对应,实现if--else的正确匹配;
2.switch...case..break语句不要误丢break,case后面跟的是变量,且case后面要加空格;
3.运算符要注意优先级;
4.缩进格式并不能暗示else的匹配;
5.在if和else后面总要用到,即使只有一条语句。
参考资料:百度百科-switch
参考技术C通过判断学生成绩来展示switch语句的使用,目标:判断学生成绩的等级,90-100分为A级,80-89为B级,70-79为C级,60-69为D级,60以下不及格。
package main
import "fmt"
func main() StudentGrade(-50)
func StudentGrade(g int )
switch
case g>=90&&g<=100:
fmt.Println("A等级")
case g>=80&&g<90:
fmt.Println("B等级")
case g>=70&&g<80:
fmt.Println("C等级")
case g>=60&&g<70:
fmt.Println("D等级")
case g>=0&&g<60:
fmt.Println("不及格")
default:
fmt.Println("输入的成绩有误!!!")
break
扩展资料
switch语句使用规则
1、switch 语句中的 expression 是一个常量表达式,必须是一个整型或枚举类型。
2、在一个 switch 中可以有任意数量的 case 语句。每个 case 后跟一个要比较的值和一个冒号。
3、case 的 constant-expression 必须与 switch 中的变量具有相同的数据类型,且必须是一个常量或字面量。
4、当被测试的变量等于 case 中的常量时,case 后跟的语句将被执行,直到遇到 break 语句为止。
5、当遇到 break 语句时,switch 终止,控制流将跳转到 switch 语句后的下一行。
6、不是每一个 case 都需要包含 break。如果 case 语句不包含 break,控制流将会 继续 后续的 case,直到遇到 break 为止。
7、一个 switch 语句可以有一个可选的 default case,出现在 switch 的结尾。default case 可用于在上面所有 case 都不为真时执行一个任务。default case 中的 break 语句不是必需的。
参考技术D switch(成绩)case 成绩>90:
printf("A");break;
case 成绩>=80&&成绩<=90:
printf("B");break;
case 成绩>=60&&成绩<80:
printf("C");break;
case 成绩<60:
printf("d");break;
本回答被提问者和网友采纳
2016-10-14
1.判断成绩等级。
给定一百分制成绩,要求输出成绩的等级。90以上为A,80-89为B,70-79为C,60-69为D,60分以下为E,输入大于100或小于0时输出“输入数据错误”。 分别用if和用switch语句实现
#include <stdio.h> void main() { int a; printf("请输入成绩\\n"); scanf("%d",&a); if(a<0||a>100) { printf("error\\n"); } else if(a>=90) { printf("A\\n"); } else if(a>=80) { printf("B\\n"); } else if(a>=70) { printf("C\\n"); } else if(a>=60) { printf("D\\n"); } else { printf("E\\n"); } }
总结:①格式要写规范,不能忘记大括号
②printf中不能加&
#include <stdio.h> void main() { int a; printf("请输入成绩\\n"); scanf("%d",&a); if(a>100||a<0) { printf("error\\n"); } else switch(a/10) { case 10: case 9: printf("A\\n");break; case 8: printf("B\\n");break; case 7: printf("C\\n");break; case 6: printf("D\\n");break; default :printf("E\\n"); } }
总结:①注意case后面的是常量
②注意写switch函数时要加大括号
2. 判断整数位数及逆序输出。
输入一个不多于5位数的正整数,判断它是几位数并逆序输出。注意验证数据的合法性。
#include<stdio.h> int main() { int a,b,c,d,e,f,g; printf("请输入一个数字\\n") ; scanf("%d",&a); if(a>=100000||a<0) { printf("error\\n"); } else if(a>=10000&&a<99999) { b=a/10000; c=a/1000%10; d=a/100%10; e=a/10%10; f=a%10; g=f*10000+e*1000+d*100+c*10+b; printf("该数字是五位数,它的逆序为%05d\\n",g); } else if(a>=1000&&a<9999) { b=a/1000; c=a/100%10; d=a/10%10; e=a%10; f=e*1000+d*100+c*10+b; printf("该数字是四位数,它的逆序为%04d\\n",f); } else if(a>=100&&a<999) { b=a/100; c=a/10%10; d=a%10; e=d*100+c*10+b; printf("该数字是三位数,它的逆序为%03d\\n",e); } else if(a>=10&&a<99) { b=a/10; c=a%10; d=c*10+b; printf("该数字是两位数,它的逆序为%02d\\n",d); } else if(a>=0&&a<9) { printf("该数字是一位数,它的逆序为%d\\n",a); } return 0; }
总结:①注意算法要正确 细心
②算式和输出函数都要写在大括号里
3. 回文数问题
给定一个5位数,判断它是否是回文数。例如:12321是回文数。回文数的特点是个位和万位相同,十位和千位相同。
#include <stdio.h> void main() { int a; printf("请输入一个五位数\\n"); scanf("%d",&a); if(a/100000>0||a<0) { printf("error\\n"); } else if(a/10000==a%10&&a/1000%10==a/10%10) { printf("yes\\n"); } else { printf("no\\n"); } }
总结:注意scanf函数所在的位置
4. 计算分段函数
y=-x+2.5 0 <= x < 5
y=2-1.5(x-3)(x-3) 5 <= x < 10
y=x/2-1.5 10 <= x < 20
输入x的值(x为整数),输出y的值,结果保留3位小数。
#include <stdio.h> void main() { int x; float y; printf("请输入一个数字\\n"); scanf("%d",&x); if(x>=0&&x<5) { y=2.5-x; printf("%.3lf",y); } else if(x>=5&&x<10) { y=2-1.5*(x-3)*(x-3); printf("%.3lf",y); } else if(x>=10&&x<20) { y=x/2.0-1.5; printf("%.3lf",y); } }
总结:①注意是保留三位小数,弄清%.3lf是保留三位小数 不够用零补
②要注意y不一定是整数不能用int 要用float
以上是关于用switch语句怎样判断成绩的等级的主要内容,如果未能解决你的问题,请参考以下文章
php语言编写switch判断成绩代码。分别输出优秀、良好、中等、及格和不及格。
php语言编写switch判断成绩代码。分别输出优秀、良好、中等、及格和不及格。