⑴ c语言:多个CASE语句相同情况的处理
用switch最麻烦了.#include "stdio.h"void main()
{
int y,m,d=0;
printf("请输入月份:");
scanf("%d",&m);
switch(m)
{
case 1:
d=31;
break;
case 2:
d=28;
break;
case 3:
d=31;
break;
case 4:
d=30;
break;
case 5:
d=31;
break;
case 6:
d=30;
break;
case 7:
d=31;
break;
case 8:
d=31;
break;
case 9:
d=30;
break;
case 10:
d=31;
break;
case 11:
d=30;
break;
case 12:
d=31;
break;
} printf("%d年%d月有%d天\n",2006,m,d);
} 简单的:#include "stdio.h"void main()
{
int n[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int y,m;
printf("请输入年份:");
scanf("%d",&y);
printf("请输入月份:");
scanf("%d",&m);
if(y%4==0&&y%100!=0||y%400==0)n[1]=29;
printf("%d年%d月有%d天\n",y,m,n[m-1]);
}
⑵ c语言,case1后面没有语句就是指和case2后面的语句相同还有为什么ar=9输出了2次不是
case1 执行无代码 因为前面有个FOR循环 因此SWITCH语句执行三次 J=3时 执行CASE3 结束 J=2时 执行CASE2 结束 J=1时 因为CASE1无BREAK; 因此要执行到CASE2才能跳出
其中--i 和i++的区别时 前者是先减一再使用 后者是 使用后再加1 因此程序分别输出
ar=9 ; ar=9 ;ar=11
⑶ C语言中用switch语句的时候,为什么有些case后面没有语句的,如case10: case9:printf("优秀");
c语言中
switch语句其实每个case都会判断的,所以要用break跳出
有时候两个不同的case需要做相同的处理
例如case10 case 9都是优秀
那么 case10: 之后不写任何语句,也不写break
那么也会运行紧跟着的case 9:后面的语句,显示优秀
就应为用这样的极值,所以在正常的case情况运行完后,要记得加break
而在多个case有共同操作的时候,可以把他们写在一起中间都不用break
最后只用写一次共同操作的代码,一个break
⑷ java switch 两个case有少部分不同大部分一样,能合并代码吗
在进入switch之前,设置sound=1, 1 2 就不需要赋值,3的时候赋值为2就行
⑸ switch 语句中 当若干分支需要执行相同操作时,可以使多个case分支共用一组语句。
switch(i)的语法很特殊.每一个case后的值和switch(i)中的i值比,相同就执行这个分支.但执行每个分支结束时,一般都加上break;这样就跳出了switch语句.但你要把"多个case分支共用一组语句"这样就可以把break去掉.像楼上所编的那样...
看看这个:
#include<stdio.h>
void main()
{
switch(0)
{
case 0: printf("i=0\n");
case 1: printf("i=1\n");break;
case 2: printf("i=2\n");
//default: printf("other\n");
}
switch(1)
{
case 0: printf("i=0\n");
case 1: printf("i=1\n");break;
case 2: printf("i=2\n");
//default: printf("other\n");
}
}
⑹ VC++ 里Switch case语句中,有多个case语句执行相同的操作,应该怎样编写代码
switch()
{
case 1:
break;
case 2:
break;
case N:
break;
default:
break;
}
printf("argc=%d",argc);
这种程度的优化 编译器生成代码的时候会自动进行的。
⑺ C语言中关于case编写,输入几个数字输出相同的编写
#include<stdio.h>
#include<stdlib.h>
intmain()
{
inti;
scanf("%d",&i);
switch(i)
{
case1:case2:case3:case4:case5:case6:case7:case8:case9:
printf("yes");
break;
case-1:case-2:case-3:case-4:case-5:case-6:case-7:case-8:case-9:
printf("no");
break;
}
return0;
}
⑻ C语言switch case后如何执行多条命令
1、首先编写图示代码,在这个例子中会依次将i的值和每个case后面的常量进行比较,如果成立就会执行后面的语句,如果不成立就会继续进行下一条对比。
⑼ c语言中case的意思和用法
c语言中case是和switch一起使用的,构成switch—case语句,进行判断选择,case是用来表示选择结构的。
switch语句的一般形式为:
switch(表达式){
case 常量表达式1: 语句1;
case 常量表达式2: 语句2;
…
case 常量表达式n: 语句n;
default: 语句n+1;}
其语义是:计算表达式的值。 并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时, 即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句。如表达式的值与所有case后的常量表达式均不相同时,则执行default后的语句。
(9)c多个case有部分命令相同扩展阅读
任何switch语句都必须遵循以下规则:
1、只能针对基本数据类型中的整型类型使用switch,这些类型包括int、char等。对于其他类型,则必须使用if语句。
2、switch()的参数类型不能为实型 。
3、case标签必须是常量表达式(constantExpression),如42或者"42"。
4、case标签必须是惟一性的表达式;也就是说,不允许两个case具有相同的值。
⑽ switch语句中case后面的值可以相同
一个switch语句中, case后面的值 不可以相同。一个值只能用一次,不能重复用。
因为这些值,是程序执行的入口,若重复了,就产生了歧义。为避免歧义,若用重了,编译不能通过。
不同的几个switch语句, 各自定义的 case后面的值,可以相同,因为 它们在自己的定义域里,彼此互不相干。