switch语句怎么用啊 具体

作者&投稿:管温 (若有异议请与网页底部的电邮联系)
switch语句怎么用啊~

Java语言基础(选择结构switch语句的基本使用)

#include
int main()
{
int day,month,year,sum=0,leap;
printf("输入年月日如2019 7 12
");
scanf("%d %d %d",&year,&month,&day);
switch(month)
{
case 1:sum=0;break;
case 2:sum=31;break;
case 3:sum=59;break;
case 4:sum=90;break;
case 5:sum=120;break;
case 6:sum=151;break;
case 7:sum=181;break;
case 8:sum=212;break;
case 9:sum=243;break;
case 10:sum=273;break;
case 11:sum=304;break;
case 12:sum=334;break;
default:printf("data error");break;
}
sum=sum+day;
if((year%400==0||(year%4==0&&year%100!=0))&&month>2)
sum++;
printf("这是这一年的第%d天。",sum);
return 0;
}
方法2
#include
int day_of_year(int (*p)[13],int year,int month,int day)
{
int i,leap;
leap=(year%100!=0 && year%4 ==0||year%400 ==0);
for(i=1;i<month;i++)
day+=*(*(p+leap)+i);
return day;
}
main()
{
static int day_tab[][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}};
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
printf("%d
",day_of_year(day_tab,a,b,c));
}

执行过程:

  1. 先计算并获得switch后面小括号里的表达式或变量值,然后将计算结果顺序与每个case后的常量比较。

  2. 当二者相等时,执行个case块中的代码,当遇到break时,就跳出switch选择结构,执行switch选择结构之后的代码。

  3. 如果任何一个case之后的常量与switch后的小括号中的值相等,则执行switch尾部的default块中代码。



一般形式:

switch(表达式){

case 常量表达式1: 语句1;
case 常量表达式2: 语句2;

case 常量表达式n: 语句n;
default: 语句n+1;
}

意思是先计算表达式的值,再逐个和case 后的常量表达式比较,若不等则继续往下比较,若一直不等,则执行default后的语句;若等于某一个常量表达式,则从这个表达式后的语句开始执行,并执行后面所有case后的语句。

与if语句的不同:If语句中若判断为真则只执行这个判断后的语句,执行完就跳出if语句,不会执行其他if语句;

而switch语句不会在执行判断为真后的语句之后跳出循环,而是继续执行后面所有case语句。在每一case语句之后增加break 语句, 使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果。

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");
}
注意:
1.case后的常量表达式不能相同;

2. case后的语句可以有多个且不用花括号括起来;

3.case和default子句的先后顺序可以先后变动,default子句可以省略不用;

switch语句的用法详解
C语言还提供了另一种用于多分支选择的switch语句, 其一般形式为:
switch(表达式){
case常量表达式1: 语句1;
case常量表达式2: 语句2;

case常量表达式n: 语句n;
default:语句n+1;}

其语义是:计算表达式的值。并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时, 即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句。如表达式的值与所有case后的常量表达式均不相同时,则执行default后的语句。
main()
{ int a; printf("input integer number: "); scanf("%d",&a); switch (a)
{ case 1:printf("Monday\n"); case 2:printf("Tuesday\n"); case 3:printf("Wednesday\n"); case 4:printf("Thursday\n"); case 5:printf("Friday\n"); case 6:printf("Saturday\n"); case 7:printf("Sunday\n"); default:printf("error\n");
}
}

本程序是要求输入一个数字,输出一个英文单词。但是当输入4之后,却执行了case4以及以后的所有语句,输出了Wednesday及以后的所有单词。这当然是不希望的。为什么会出现这种情况呢?这恰恰反应了switch语句的一个特点。在switch语句中,“case 常量表达式”只相当于一个语句标号, 表达式的值和某标号相等则转向该标号执行,但不能在执行完该标号的语句后自动跳出整个switch 语句,所以出现了继续执行所有后面case语句的情况。这是与前面介绍的if语句完全不同的,应特别注意。
为了避免上述情况,C语言还提供了一种break语句,专用于跳出switch语句,break 语句只有关键字break,没有参数。在后面还将详细介绍。修改例题的程序,在每一case语句之后增加break 语句, 使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果。
switch 的分支语句一共有 n+1 种,而我们通常希望的都是选择其中的一个分支来执行,执行完后就结束整个 switch 语句,而继续执行 switch后面的语句,此时就可以通过在每个分支后加上 break 语句来实现了。如下:
switch (表达式)
{ case 常量表达式1: 语句1; break; case 常量表达式2: 语句2; break;
...... case 常量表达式n: 语句n; break; default: 语句n+1; break;
}

加了这个 break 语句后,一旦“常量表达式 x”与“表达式”的值相等了,那么就执行“语句 x”,执行完毕后,由于有了 break 则直接跳出 switch 语句,继续执行 switch 语句后面的程序了,这样就可以避免执行不必要的语句。把上面改成下面
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");
}
}

在使用switch语句时还应注意以下几点:
在case后的各常量表达式的值不能相同,否则会出现错误。
在case后,允许有多个语句,可以不用{}括起来。
各case和default子句的先后顺序可以变动,而不会影响程序执行结果。
default子句可以省略不用。


你惊动了witch是啥梗
其中witch的设定为蹲在阴暗角落,一旦有动静就会扑过来干你,而在惊动witch的时候,左下角的对话框就会显示“你惊扰了witch”,后来在一些搞笑视频里,弹幕有时也会发类似于“你惊动了某某”这样的语句来增加喜感。witch的身上只有破烂不堪的上衣和内裤,橙黄色的眼睛,肤色发白,血红色的双手。她很敏感...

条件分支语句有哪些?
if条件分支语句,witch条件分支语句。1、if条件分支语句:这是最基本和最常用的条件分支语句,用于根据条件判断执行对应的代码块。2、witch条件分支语句:这个语句可以根据一个变量的值,从多个case中选择一个执行对应的代码块。

witch 用法
什么语言都不能实现 switch只能做等值判断 不能做区间判断

输入1—7的整数,用witch case 语句转换成星期几,并输入这个星期几...
int main(){ int num;scanf("%d", &num);switch (num){ case 1:printf("星期一\\n"); break;case 2:printf("星期二\\n"); break;case 3:printf("星期三\\n"); break;case 4:printf("星期四\\n"); break;case 5:printf("星期五\\n"); break;case 6:printf("星期六\\n"); break;...

c语言程序设计实验报告内容 c语言程序设计实验报告内容范文
else、if…else if语句和witch语句格式及使用方法,掌握if语句中的嵌套关系和匹配原则,利用if语句和switch语句实现分支选择结构。熟练掌握while语句、do…while语句和for语句格式及使用方法,掌握三种循环控制语句的循环过程以及循环结构的嵌套,利用循环语句实现循环结构。掌握简单、常用的算法,并在编程过程中...

英语--请问这个句子该怎么翻译
Witch-king: You fool. No man can kill me! Die now.Éowyn: I am no man!这其实是一个双关,Witch-king(安格玛巫王,也就是戒灵王)的意思是“没有人可以杀死我”而Éowyn(伊欧温)的意思则是“可我不是男人”(因为她是Woman,女人)这句话在魔戒的故事中是有背景的,并...

唔都阿怒怒是什么歌
《WitchDoctor》。唔依唔阿阿是一首丹麦语(Dansk)歌,唔依唔阿阿是《WitchDoctor》歌曲中的谐音语句。Hey!WitchDoctor!Giveusthemagicword!(嘿巫医告诉我们咒语是什么)。Allright,you、go、ooo、ooo、ooo、aha、ting、tang(好吧你就说唔依唔阿阿)。《WitchDoctor》是Cartoons乐队于1998间发售单曲...

请帮忙翻译成英语!!要语句通顺,无语法问题
Today, I read" the sleeping beauty", the story is the major content of the king and the queen gave birth to a beautiful princess in the Kingdom, there are thirteen divination female, but the king had invited twelve, they all give the Princess Wishes, but the thirteenth witch ...

100词的英语童话 睡美人,语句要通顺、不要直接拿翻译软件弄,好的给分...
lilac fairy did not offer blessings, she put the witch's curse, make the princess won't die. Princess are still asleep, until there was a true love to the princess who came to give a kiss, will wake up the princess.So the king ordered the ban the use of spindle. But t...

C语言 条件语句
if(表达式) 语句1;如果表达式的值为非0,则执行语句1,否则跳过语句继续执行下面的语句。如果语句1有多于一条语句要执行时, 必须使用{} 把这些语句包括在其中, 此时条件语句形式为:if(表达式){ 语句体1,2,3;} 例如:if(x>=0) y=x;if(a||b&&c){ z=a+b;c+=z;} if--else语句 除了...

阳春市19143118561: switch语句用法 -
诸葛官活诺: switch是多分支语句的关键词,在很多语言中都有使用,一般都是跟case配套使用,c语言中格式举例如下:switch (a) { case 1:处理程序 case 2:处理程序.............case n:处理程序 default:处理程序 } 其中a为变量,case后面为常量或常量表达式,处理程序可以由多条语句组成,处理程序一般以break;作为结束.

阳春市19143118561: 请详细举例解释说明下switch语句的用法? -
诸葛官活诺: if-else-end语句所对应的是多重判断选择,而有时也会遇到多分支判断选择的问题.MATLAB语言为解决多分支判断选择提供了switch-case语句.switch-case语句的一般表达形式为:switch〈选择判断量〉Case 选择判断值1选择判断语句1case ...

阳春市19143118561: switch语句用法(在编程中switch常与哪个语句搭配使用)
诸葛官活诺: 1、switch()语句的工作原理:通过判断case后的表达式与switch后的表达式是否匹配,一旦case匹配,则不管后面的case是否匹配,都将依次执行后面的程序代码,直...

阳春市19143118561: C语言中switch语句的用法 -
诸葛官活诺: 在每个case语句后加上break语句(即在每个printf语句后加上一句break;),执行break后直接跳出switch.这样就只输出一个了

阳春市19143118561: switch语句怎么用啊 具体啊! -
诸葛官活诺: switch(){case : case :...... }先说语法,再说注意事项switch的判断变量类型只能是字符型或者整型,请注意,只有这两种才可以switch后面紧跟的那个小括号里面就是 要判断的变量名称 然后switch要求它后面的大括号完整,不能不写case 后面加...

阳春市19143118561: c语言switch语句怎么用 -
诸葛官活诺: switch(表达式){ case常量表达式1: 语句1; case常量表达式2: 语句2; … case常量表达式n: 语句n; default : 语句n+1; }每一case语句之后增加break 语句, 使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果.

阳春市19143118561: 请问c语言中switch语句究竟是怎么用啊? -
诸葛官活诺: switch (表达式或属性){ case 值1 : 语句1 break; case 值2 : 语句2 break; ... default : 值n break; } 从表达式或属性值等于某个case语句后的值开始,它下方的所有语句都会一直运行,直到遇到一个break为止.随后,switch语句将结束,程...

阳春市19143118561: 求教c语言中switch 语句的详细用法 -
诸葛官活诺: switch(a){ case 1:{ printf("this 1\r\n"); break;} case 2:{ printf("this 2\r\n"); break;} } ~~~~~~~~~~~~~~~~~~~~~~~~~~

阳春市19143118561: switch 语句 到底有哪些用法 这样使用它 -
诸葛官活诺: switch语句 C语言还提供了另一种用于多分支选择的switch语句, 其一般形式为: switch(表达式){ case常量表达式1: 语句1; case常量表达式2: 语句2; … case常量表达式n: 语句n; default : 语句n+1; } 其语义是:计算表达式的值. 并逐...

阳春市19143118561: 怎么用switch语句? -
诸葛官活诺: switch语句的语法如下(switch,case和default是关键字): switch ( 表达式) { case 常量表达式1 :语句1;break;case 常量表达式2 :语句2;break; ……case 常量表达式n :语句n;break; default:语句n+1;break;} 说明:break退出{ } case后...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网