求助:C/C++中switch case的用法!
语言规定在case标号后面必须是一个常量表达式。那么如果我想要做这样一道题,90--100分输出‘A’,80--90分输出‘B’......那么我的case标号后面该怎样...
语言规定在case标号后面必须是一个常量表达式。
那么如果我想要做这样一道题,90--100分输出‘A’,80--90分输出‘B’... ...
那么我的case标号后面该怎样写表达式?比较这样有一定范围的数字不可能一一列出。而case标号又规定必须用常量,那么该怎样写呢? 展开
那么如果我想要做这样一道题,90--100分输出‘A’,80--90分输出‘B’... ...
那么我的case标号后面该怎样写表达式?比较这样有一定范围的数字不可能一一列出。而case标号又规定必须用常量,那么该怎样写呢? 展开
展开全部
switch语法格式如下:
switch(表达式){
case 常量表达式1: 语句1;
case 常量表达式2: 语句2;
…
case 常量表达式n: 语句n;
default: 语句n+1;
}
示例代码:
#include <stdio.h>
int main()
{
int a;
printf("input integer number: ");
scanf("%d",&a);
switch (a)
{
case 1:printf("Monday\n"); break;
case 2:printf("Tuesday\n"); break;
case 3:printf("Wednesday\n"); break;
case 4:printf("Thursday\n"); break;
case 5:printf("Friday\n"); break;
case 6:printf("Saturday\n"); break;
case 7:printf("Sunday\n"); break;
default:printf("error\n");
}
return 0;
}
在使用switch语句时应注意以下几点:
1.每个case后的语句执行完成后,都应该有break语句;否则程序会顺序执行下面的case,直到遇到第一个break时跳出。
2.在case后的各常量表达式的值不能相同,否则会出现错误。
3.在case后,允许有多个语句,可以不用{}括起来。
4.各case和default子句的先后顺序可以变动,而不会影响程序执行结果。
5.default子句可以省略不用。
展开全部
把这一定范围的 条件 转换成 一个常量。
如:
int fenshu; //代表分数
int biaohao //标号
baiohao=fenshu/10;
switch(biaohao)
{
case 10 :
printf("A");
break;
case 9:
printf("A");
break;
}
如:
int fenshu; //代表分数
int biaohao //标号
baiohao=fenshu/10;
switch(biaohao)
{
case 10 :
printf("A");
break;
case 9:
printf("A");
break;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以不用case啊
int iFenShu ;
...
if ( iFenShu >= 90 && iFenShu <= 100 )
{
//输出A
}
else if ( iFenShu >= 80 && iFenShu < 90 )
{
//输出B
}
...
如果非用case ,可以这样写
switch( iFenShu )
{
case 100:
case 99:
case 98:
...
case 90:
// 输出A
break; //省略了九个break
...
}
int iFenShu ;
...
if ( iFenShu >= 90 && iFenShu <= 100 )
{
//输出A
}
else if ( iFenShu >= 80 && iFenShu < 90 )
{
//输出B
}
...
如果非用case ,可以这样写
switch( iFenShu )
{
case 100:
case 99:
case 98:
...
case 90:
// 输出A
break; //省略了九个break
...
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询