Ⅰ c语言编程题
1.将程序段填充完整(实现12个月每个月天数的输出)
case 1: case 3: case 5: case 7: case 8: case 10: case 12: days=31;break;
case 4: case 6: case 9: case 11: days=30;break;
case 2:
if((yy%4==0 && yy%100!=0) || yy%400==0) days=29;
else days=28;
break;
2.输入4个整数a,b,c,d,编写程序,将它们按从大到小的顺序输出(if语句实现)
int a,b,c,d;
scanf("%d %d %d %d",&a,&b,&c,&d);
if(a>b && a>c && a>d) printf("%d ",a);
if(b>a && b>c && b>d) printf("%d ",b);
if(c>a && c>b && c>d) printf("%d ",c);
if(d>a && d>b && d>c) printf("%d ",d);
3.假设奖金税率如下(ma代表税前奖金且ma>0,r代表税率),利用switch语句编写程序对输入的一个奖金数,输出税率和应交税款及实得奖金数(扣除奖金税后)。
int ma;
float r,ts,sd;
scanf("%d",&ma);
switch(ma/1000)
{
case 0: r=0;break;
case 1: r=0.05;break;
case 2: r=0.08;break;
default: r=0
Ⅱ switch(C语言中)是什么意思
C语言中的SWITCH是计算表达式的值。
并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时,
即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句。
其一般形式为:
switch(表达式)。case
常量表达式1:
语句1 case
常量;表达式2:
语句2
case
常量;
表达式n:
语句n, default:
语句n+1。switch
是分支语句,就是比较强大的if集;
default为不满足所有的switch条件则后面的句子被执行。一般将default写在switch中的最后。
C语言虽然没有限制
if
else
能够处理的分支数量,但当分支过多时;
用
if
else
处理会不太方便,而且容易出现
if
else
配对出错的情况。
(2)c语言奖金税率switch表示扩展阅读:
switch语法
1、Switch用在编程中,如C语言中它经常跟Case一起使用,是一个判断选择代码。其功能就是控制业务流程流转的。
2、直线翻译:switch语句,即“切换”语句;case即“情况”。
3、switch语句非常有用,但在使用时必须谨慎。所写的任何switch语句都必须遵循以下规则:
4、只能针对基本数据类型中的整型类型使用switch,这些类型包括int、char等。
5、对于其他类型,则必须使用if语句。switch()的参数类型不能为实型
。
6、case标签必须是常量表达式(constantExpression),如42或者"42"。
7、case标签必须是惟一性的表达式;也就是说,不允许两个case具有相同的值。
参考资料来源:网络:switch
Ⅲ C语言switch语句问题(初学)
1.case2:case3:语句1;break;
这样的语句,当表达式满足2或3的时候,都要执行语句1
因为case2中为空语句,它没有break语句,继续执行case3的语句,直到遇见break语句为止,case3中有break语句所以终止了,如果没有继续往下执行,
2.题目中I<=100000时,如I=50000时,t=0,执行case0语句,注意:当I=100000(仅此一个取值)时t=1,但是你不能因此就把处理语句写在case1中,应为case1中还包括100000<I<200000的情况,可以把I=100000时的情况与100000<I<200000的情况一起处理,放在case1中如答案:bonus=bon1+(i-100000)*0.075;break;i=100000时(i-100000)*0.075=0,只有bon1=100000*0.1的利润,不影响处理结果,而你的处理方法就忽略了100000<I<200000也是t=1的情况,从而每次都把case语句错位了
100000<I<=200000时,如I=150000你的t=I/100000;t是整形的,所以t=1或2(t=2的情况留到后面与200000<I<300000,t=2的情况一起处理),因此应该把你的处理写在case1中。
200000<I<=400000,t=2或3或4(4的情况后面处理)所以程序中case2与case3要执行相同语句。
400000<I<=600000时t=4或5或6(6的情况后面处理),case4和case5执行相同语句,语句要写在case5中。
600000<I<=1000000时t=6,7,8,9,10(10的情况后面处理)case6,7,8,9执行相同语句,语句要写在case9中。
最后,你只需将上面t=10的情况与I>1000000d的情况一起处理,应该把你的处理写在case10中。