第四章 选择分支结构程序设计_第1页
第四章 选择分支结构程序设计_第2页
第四章 选择分支结构程序设计_第3页
第四章 选择分支结构程序设计_第4页
第四章 选择分支结构程序设计_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第四章选择分支结构程序设计第1页,共83页,2023年,2月20日,星期三C语言程序设计例:

银行存款的例子设银行定期存款年利率rate一年3.8%二年4.50%三年5.22%五年及以上5.76%并已知存款期为n年,存款本金为capital元,编程计算n年后本息之和deposit.第2页,共83页,2023年,2月20日,星期三C语言程序设计例:用C语言实现图示的分段函数。

sin(x)/xx=0y=

1x=0分析问题(建立数学模型,选择公式

),确定算法。

输入x;判断x值;根据x值,计算y值;输出y值。显然②③顺序结构不能实现,需用选择结构。第3页,共83页,2023年,2月20日,星期三C语言程序设计

2.写出算法描述第4页,共83页,2023年,2月20日,星期三C语言程序设计

3.编写程序:用计算机语言写出实现算法的程序。#include<stdio.h>#include<math.h>voidmain(){floatx,y;printf(“Enterx:”);scanf(“%f”,&x);

if(x!=0.0)y=sin(x)/x;elsey=1;printf(“x=%5.2f\ty=%7.2f\n”,x,y);}第5页,共83页,2023年,2月20日,星期三C语言程序设计

3.编写程序:用计算机语言写出实现算法的程序。#include<stdio.h>#include<math.h>voidmain(){floatx,y;printf(“Enterx:”);scanf(“%f”,&x);

if(x!=0.0)y=sin(x)/x;elsey=1;printf(“x=%5.2f\ty=%7.2f\n”,x,y);}第6页,共83页,2023年,2月20日,星期三C语言程序设计

4.输入(编辑)程序,编译、连接、执行程序,输出结果(测试)第7页,共83页,2023年,2月20日,星期三C语言程序设计选择结构是三种基本结构(顺序、选择、循环)之一。选择结构的特点是:程序的流程是由多条支路构成的,在程序的一次执行过程中,根据不同的情况,只有一条支路被选择执行,而其它支路上的语句被直接跳过。在C语言中,提供了if语句和switch语句来实现选择结构。第8页,共83页,2023年,2月20日,星期三4.1关系运算符和关系表达式

4.1.1关系运算符及其优先次序关系运算:是对两个量进行“比较运算”。关系运算符:第9页,共83页,2023年,2月20日,星期三4.1关系运算符和关系表达式

4.1.1关系运算符及其优先次序3.关于优先级别:前4种关系运算符的优先级别相同,后两种也相同。前4种高于后两种。算术运算符、关系运算符、赋值运算符。

低第10页,共83页,2023年,2月20日,星期三4.1关系运算符和关系表达式4.1.1关系运算符及其优先次序

例:c>a+b 等价于c>(a+b);关系运算符的优先级低于算术运算符a>b==c 等价于(a>b)==c;“>”优先级高于“==”a==b<c等价于a==(b<c);“<”优先级高于“==”a=b>c 等价于a=(b>c);关系运算符的优先级高于赋值运算符。第11页,共83页,2023年,2月20日,星期三4.1关系运算符和关系表达式4.1.2

关系表达式

1.用关系运算符将两个表达式(算术、关系、逻辑、赋值表达式等)连接起来的有意义的表达式,称为关系表达式。

如:x!=0;‘a’==‘A’;a*a+b*b<Y*Y;说明:数值量比较,数字的大小字符量比较,ASCII码比较第12页,共83页,2023年,2月20日,星期三4.1关系运算符和关系表达式4.1.2

关系表达式2.关系表达式的值是一个逻辑值,即“真”或“假”。C语言编译系统,真(1),假(0).例:假如a=1,b=-5,c=‘a’,则:c>a+b;

a==b<c;

a=b<c;上述表达式的值是?1,1,1.第13页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.1逻辑运算符及其优先顺序C语言提供三种逻辑运算符:(1)&&逻辑与(2)||逻辑或(3)!逻辑非逻辑运算的真值表:aba&&ba||b真真真真真假假真假真假真假假假假a!a真假假真第14页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.1逻辑运算符及其优先顺序例:逻辑运算举例a&&b若a、b为真,则a&&b为真。a||b若a、b之一为真,则a||b为真。!a若a为真,则!a为假,反之若a为假,则!a为真。第15页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.1逻辑运算符及其优先顺序3.在一个逻辑表达式中如果包含多个逻辑运算符,则按照以下的优先顺序:(1)!(非),-&&(与),-||(或)高低(2)!(非)高算术运算符关系运算符

&&||赋值运算符低第16页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.1逻辑运算符及其优先顺序例:a>b&&x>y等价于(a>b)&&(x>y)a==b||x==y等价于(a==b)||(x==y)!a||a>b等价于(!a)||(a>b)第17页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.2逻辑表达式1.逻辑量:当一个量(可以是基本类型的常量或变量)用作判断的时候,C编译系统认为:非0真,0假2.逻辑表达式:用逻辑运算符(逻辑与、逻辑或、逻辑非)将关系表达式或逻辑量连接起来的有意义的表达式叫逻辑表达式。第18页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.2逻辑表达式3.逻辑表达式的值:真(1),假(0)。4.C语言编译系统在给出逻辑运算结果时,以1代表“真”,以0代表“假”,但在判断一个量是否为“真”时,以0代表“假”,以非0代表“真”(即认为一个非0的数值是“真”)。第19页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.2逻辑表达式例:若a=4,则!a值为0(假)。若a=4,b=5,则a&&b值为1(真),a||b值为1(真),!a||b值为1(真)4&&0||2值为1(真)‘c’&&’d’(真)值为1

第20页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.2逻辑表达式例:计算:5>3&&2||8<4-!0(注意运算符优先级、数值所起作用-是逻辑值,原值)第21页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.2逻辑表达式

在逻辑表达式的求解中,并不是所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符。第22页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.2逻辑表达式例如:a&&b&&c,只有a为真,才需要判别b的值;只有a、b都为真,才需要判别c的值。只要a为假,此时整个表达式已经确定为假,就不必判别b,c;如果a为真,b为假,不判断c。a||b||c,只要a为真,整个表达式已经确定为真,就不必判断b和c;只有a为假,才判断b;a、b都为假才判断c。第23页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.2逻辑表达式例:有以下程序

main()

{inta=1,b=2,m=0,n=0,k;

k=(n=b>a)||(m=a<b);

printf("%d,%d\n",k,m);

}

程序运行后的输出结果是

A)0,0B)0,1C)1,0D)1,1

第24页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.2逻辑表达式

掌握C语言的关系运算符和逻辑运算符后,可以用一个逻辑表达式来表示一个复杂的条件。

例如:判断某一年是否闰年。闰年:能被4整除,但不能被100整除;或能被400整除。(year%4==0&&year%100!=0)||year%400==0

表达式为“真”,闰年条件成立,是闰年,否则非闰年。

第25页,共83页,2023年,2月20日,星期三4.2逻辑运算符和逻辑表达式4.2.2逻辑表达式作业:写出C语言的表达式1.|x|>22.x≤1+a并y≤b

3.的定义域

fabs(x)>2或x>2||x<-2x<=1+a&&y<=b(x>=2||x<=1)&&x!=0或(x-1)*(x-2)>=0&&x!=0

第26页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式1.条件执行if(表达式)语句if(p)A第27页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式1.if(p)A例:

if(x>y)printf(“%d”,x);例:if(x>y){t=a;a=b;b=t;}第28页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式复合语句:用一对花括号{}包围起来的一条和多条语句。复合语句的形式:{

语句1;语句2;语句3;……}第29页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式

复合语句在选择结构,循环结构中经常用到。我们在逻辑上把复合语句看成是一条语句。第30页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式

例:要求用户输入一个实数,然后求出这个实数的绝对值。第31页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式2.分支执行

if(表达式)语句1else语句2

即if(p)AelseB当P为真时(非0)执行A,否则执行B或后续语句。

第32页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式2.分支执行

例:if(a>0)printf(“Aisapositive\n”);elseprintf(“Aisnotapositive\n”);A和B可以使单一语句,也可以是复合语句。else部分不能独立存在,前面一定有;和if语句。

第33页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式

注意:在if和else后面可以是单条语句,也可以是复合语句,如果使用了复合语句,一定要用花括号括起来,语句块后面不要“;”号。第34页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式例如:if(a+b>c&&b+c>a&&c+a>b){s=0.5*(a+b+c);area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“%f”,area);}elseprintf(“itisnotatriangle”);第35页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式在C语言中,表达式P的值是非0时,系统均按真值处理。

例(1)

if(‘a’)printf(“ok!”);(2)x=-5;if(x)printf(“ok!”);(3)y=0;if(y==0)printf(“ok!”);if(y)printf(“ok!”);第36页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式else子句不能单独使用,必须是if语句的一部分,与if配对使用。(缩排的格式)

例:if(n>6)if(n<12)printf(“n大于6且小雨12\n”);elseprintf(“n小于等于6\n”);第37页,共83页,2023年,2月20日,星期三4.3if语句例:以下程序运行后的输出结果是

main()

{inta=1,b=3,c=5;

if(c=a+b)printf("yes\n");

elseprintf("no\n");

}

yes第38页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式例:比较a和b的大小,并将大值赋给max,并打印出max的值。编程步骤:1.确定算法,画出流程图;2.写出程序;3.上机编译;4.测试。第39页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式#include<stdio.h>(注意程序的缩排)voidmain(){floata,b,max;printf("pleaseinputa,b:");scanf("%f%f",&a,&b);if(a>b){printf("\na>b\n");max=a;}else{printf("a<=b\n");max=b;}printf(“\nmax=%f\n",max);}第40页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式例:从键盘上输入a,b,c三个数,按从大到小输出。(难点:交换数据算法)第41页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式#include<stdio.h>voidmain(){inta,b,c,t;printf(“Entera,b,c:”);scanf(“%d%d%d”,&a,&b,&c);if(a<b)/*t-临时变量*/{t=a;a=b;b=t;}/*交换a,b*/if(a<c){t=a;a=c;c=t;}if(b<c){t=b;b=c;c=t;}printf(“\n%d%d%d\n”,a,b,c);}第42页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式3.

elseif形式(阶梯式的elseif语句)第43页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式3.

elseif形式(阶梯式的elseif语句)

系统自上而下逐步判断条件P,一旦发现某个条件Pi满足时,则执行与它相关的语句Si,并跳过其它剩余的阶梯。若所有的条件均不满足,执行最后一个else语句或后续语句。第44页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式例:评价学生的成绩

score>=90优秀score>=80良好score>=70中等score>=60及格score<60不及格第45页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式#include<stdio.h>voidmain(){floatscore;printf(“inputscore:”);scanf(“%f”,&score);if(score>=90)printf(“Excellent!\n”);elseif(score>=80)printf(“Good!\n”);elseif(score>=70)printf(“Middle!\n”);elseif(score>=60)printf(“Pass!\n”);elseprintf(“Fail!\n”);}第46页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式例:模拟超市的优惠购物。根据顾客购物数以及所购商品单价计算顾客应付金额,计算中要进行优惠打折。具体打折规定是:购物超过10件按8折优惠;购物超过100件,按7折优惠。第47页,共83页,2023年,2月20日,星期三4.3if语句4.3.1if语句三种形式#include"stdio.h"#definerate11.0#definerate20.8#definerate30.7voidmain(){intnum;floatprice,money;printf("pleaseinputmumandprince:");scanf("%d%f",&num,&price);if(num>100)money=rate3*price*num;elseif(num>10)money=rate2*price*num;elsemoney=rate1*price*num;printf("moneyis%f",money);}第48页,共83页,2023年,2月20日,星期三4.3if语句4.3.2if语句的嵌套

if语句的嵌套:if语句的if块或else块中,又包含一个if语句。

if(…)

if(…)语句1;

else语句2;

else

if(…)语句3;

else语句4;注意:应当注意if与else的配对关系。else总是与它上面的最近的未配对的if配对。特别是if/else子句数目不一样时(if子句数量只会大于或等于else子句数量)

第49页,共83页,2023年,2月20日,星期三4.3if语句4.3.2if语句的嵌套

例:编一个程序,输入x,输出y。输入x

yx<-3?n

y=x-1yn输出y。#include<stdio.h>#include<math.h>voidmain(){floatx,y;scanf(“f%”,&x);if(x<-3)y=x-1;elseif(x<=3)y=sqrt(9-x*x);elsey=log10(x);printf(/n“%f%f/n”,x,y);}第50页,共83页,2023年,2月20日,星期三4.3if语句4.3.2if语句的嵌套比较例:1.if(x)if(y)printf(‘1’);elseprintf(“2”);2.if(x){if(y)printf(‘1’);}elseprintf(“2”);说明:通过加{},可以改变else的层位,从而改变程序的执行流程。第51页,共83页,2023年,2月20日,星期三4.3if语句4.3.2if语句的嵌套例:下面程序的运行结果是_____.#include<stdio.h>viodmain(){inta=2,b=3,c=1;if(a>b)if(a>c)printf(“%d\n”,a);elseprintf(“%d\n”,b);printf(“over!\n”);}over!第52页,共83页,2023年,2月20日,星期三4.3if语句4.3.2if语句的嵌套例:判定某年是否闰年。闰年:能被4整除,但不能被100整除;或能被400整除。注意:leap是标志性变量,在C语言中经常用到。第53页,共83页,2023年,2月20日,星期三4.3if语句4.3.2if语句的嵌套#include<stdio.h>viodmain(){intyear,leap;printf(“Whichyear?”);scanf(“%d”,year);if(year%400==0)leap=1;elseif(year%4==0)if(year%100==0)leap=0;elseleap=1;elseleap=0;if(leap=1)printf(“%disaleapyear”,year);elseprintf(“%disnotaleapyear”);}第54页,共83页,2023年,2月20日,星期三4.3if语句

4.3.2if语句的嵌套或者程序写成:#include<stdio.h>viodmain(){intyear,leap;printf(“Whichyear?”);scanf(“%d”,year);if((year%4==0)&&(year%100!=0)||(year%400==0))leap=1;elseleap=0;if(leap=1)printf(“%disaleapyear”,year);elseprintf(“%disnotaleapyear”);}第55页,共83页,2023年,2月20日,星期三4.3if语句4.3.2if语句的嵌套

例:判断某人是否属于肥胖体型。根据身高与体重因素,医务工作者经广泛的调查分析给出了以下“体指数”对肥胖程度的划分:体指数t=体重w/(身高h)²(w单位为千克,h单位为米)

当t<18时,为低体重;当t介于18到25之间时,为正常体重;当t介于25到27之间时,为超重体重;当t>=27时,为肥胖。编程从键盘输入你的身高和体重,根据给定公式计算体指数,然后判断你的体重属于何种类型。

第56页,共83页,2023年,2月20日,星期三4.3if语句4.3.2if语句的嵌套#include<stdio.h>voidmain(){floath,w,t;printf("Pleaseenterh,w:");scanf("%f,%f",&h,&w);t=w/(h*h);if(t<18)printf("t=%f\tLowerweight!\n",t);elseif(t<25)printf("t=%f\tStandardweight!\n",t);elseif(t<27)printf("t=%f\tHigherweight!\n",t);elseprintf("t=%f\tToofat!\n",t);}第57页,共83页,2023年,2月20日,星期三4.3if语句4.3.3条件运算符(?:)条件表达式的一般形式:表达式1?表达式2:表达式3例如:条件运算符来处理a>b?a:b;说明:(1)条件运算符的执行顺序:先求解表达式1,若为非0(真)则求解表达式2,表达式2的值就是整个条件表达式的值。若表达式1的值为0(假),则求解表达式3,此时表达式3的值就是整个条件表达式的值。第58页,共83页,2023年,2月20日,星期三4.3if语句4.3.3条件运算符(?:)说明:(2)条件运算符的优先级高于赋值运算符,低于关系运算符和算术运算符。例如:max=a>b?a:b等价于:max=((a>b)?a:b)

(3)条件运算符的结合性“自右向左”。例如:a>b?a:c>d?c:d。先考虑优先级、再考虑结合性:上面表达式等价与(a>b)?a:((c>d)?c:d)。

第59页,共83页,2023年,2月20日,星期三4.3if语句4.3.3条件运算符(?:)说明:(4)表达式2和表达式3不仅可以是数值表达式,还可以是赋值表达式,函数表达式。例如:a>b?(a=100):(b=100);a>b?prinf(“%d”,a):prinf(“%d”,b);

(5)表达式1,表达式2,表达式3的类型都可以不同。条件表达式值的类型是表达式2,表达式3中类型较高的类型。例如:x>y?1:1.5整个表达式类型为实型。第60页,共83页,2023年,2月20日,星期三4.3if语句

4.3.3条件运算符(?:)例从键盘输入你和你朋友的年龄,编程判断谁的年龄最大,并打印最大者的年龄。第61页,共83页,2023年,2月20日,星期三4.3if语句

4.3.3条件运算符(?:)#include<stdio.h>voidmain(){intyourage,hisage,max;printf("Pleaseenteryourage:");scanf("%d",&yourage);printf("Pleaseenteryourfriend'sage:");scanf("%d",&hisage);if(hisage==yourage)printf("hisageisequaltoyourage.");else{max=(hisage>yourage)?hisage:yourage;printf("theolderageis%d\n",max);}}第62页,共83页,2023年,2月20日,星期三4.3if语句

4.3.3条件运算符(?:)

例:输入一个字符,如果是大写字母,转换为小写,如果不是不转换。最后输出。#include<stdio.h>voidmain(){charch;scanf(“%c”,&ch);ch=(ch>=’A’&&ch<=’Z’)?(ch+32):ch;printf(“%c”,ch);}

第63页,共83页,2023年,2月20日,星期三4.3if语句4.3.3条件运算符(?:)

例:输入一个字符,如果是大写字母,转换为小写,如果不是不转换。最后输出。考虑:编程通过键盘输入一个字符,判断该字符是数字字符(digitcharacter)、字母(englishcharacter)、空格(spacecharacter)还是其他字符(othercharacter)

。第64页,共83页,2023年,2月20日,星期三4.4

switch语句

多分支可以使用嵌套的if语句处理,但如果分支较多,嵌套的if语句层数多,程序冗长,降低可读性。

C语言中switch语句亦称多分支选择语句,它比用嵌套的if语句实现多路分支问题,其程序结构清晰、易读。第65页,共83页,2023年,2月20日,星期三4.4

switch语句1.switch语句一般形式:switch(表达式e){case常量表达式C1:语句1

case常量表达式C2:语句2………

case常量表达式Cn:语句n[default:语句n+1]}

第66页,共83页,2023年,2月20日,星期三4.4

switch语句

说明:(1)switch括号后面的表达式e,允许为任何类型,例如整型、字符型、枚举型。(2)常量表达式Ci必须与表达式e类型一致(整型和字符型可以通用)。

第67页,共83页,2023年,2月20日,星期三4.4

switch语句

2.执行过程

(1)计算“表达式e”的值。(2)当“表达式e”的值与某case后的“常量表达式Ci”的值一致时,就执行此case后面的语句i。直到遇到break语句和switch语句的“}”。(3)如果“表达式e”的值与所有常量表达式均不一致,就执行default后面的语句(如果没有default就执行跳出switch,执行switch语句后面的语句)。

第68页,共83页,2023年,2月20日,星期三4.4

switch语句

注意:(1)常量表达式Ci仅起语句标号的作用,不做求值判断。(2)常量表达式Ci的值必须是唯一的,没有先后次序。(3)多个case可以共用一组执行语句。(注意break使用的位置)(4)case后面如果有多条语句,不必用{}括起来。

第69页,共83页,2023年,2月20日,星期三4.4

switch语句

只有switch语句和break语句配合起来,才能形成真正意义上的多分支。第70页,共83页,2023年,2月20日,星期三4.4

switch语句

例:设有声明语句inta=1,b=0;则执行以下语句后输出为______.switch(a){case1:switch(b){case0:printf("**0**");break;case1:printf("**1**");break;}case2:printf("**2**");break;}**0****2**第71页,共83页,2023年,2月20日,星期三4.4

switch语句问题:本题中没有break语句,执行结果会怎么样?如何解决这个问题?#include<stdio.h>voidmain(){float

score;printf(“pleaseinputthescore:”);scanf(“%f”,&score);switch((int)score/10){case10:case9:printf(“excellent!\n”);case8:printf(“good!\n”);case7:printf(“middle!\n”);case6:printf(“pass!\n”);default:printf(“fail!\n”);}}第72页,共83页,2023年,2月20日,星期三4.5

应用程序举例

例:物流公司对用户计算运费,收费标准随距离变化如下:

s<250km不折扣;250km≤s<500km%2;500km≤s<1000km%5;1000km≤s<2000km%8;2000km≤s<3000km%103000km≤s%15;计费按照运输距离s货物重量w进行,设每公里每吨货物基本运费为p,考虑折扣d时,总运费计算公式为

f=p*w*s*(1-d);第73页,共83页,2023年,2月20日,星期三4.5

应用程序举例

例:物流公司对用户计算运费,收费标准随距离变化如下:

分析:int(s/250)0:d=0;1:d=0.02;2、3:d=0.05;4~11:d=0.10;

其它d=1.5;第74页,共83页,2023年,2月20日,星期三4.5

应用程序举例

#include<stdio.h>voidmain(){floatf,w,p,s,d;printf(“inputunitprice,space,weight:”);

scanf(“%f%f%f”,p,s,w);switch((int)s/250){case0:d=0;break;case1:d=0.02;break;case2:case3:d=0.05;break;case4:case5:case6:case7:d=0.08;break;case8:case9:case10:case11:d=0.1;break;default:d=0.15}}第75页,共83页,2023年,2月20日,星期三4.5

应用程序举例

例:读入一个年份和月份,打印出该月有多少天(考虑闰年),用switch语句编程。#include<stdio.h>voidmain(){intyear,month;printf("Inputyear,month:");scanf("%d,%d",&year,&month);switch(month){case1:case3:case5:case7:case8:case10:case12:printf("31days\n");break;

第76页,共83页,2023年,2月20日,星期三4.5

应用程序举例

case2:if((year%4==0&&year%100!=0)||(year%400==0))

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论