- 1、本文档共59页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
**【例3-12】已知男性60岁退休,女性55岁退休,输入一个人的年龄和性别,判断他(她)是已退休还是在工作,并输出结果。输入性别时,用F或f表示女性,用M或m表示男性,当输入的性别不对时,给出错误提示。voidmain(){ intage; charsex; printf(请输入性别和年龄(F(f)/M(m)):); scanf(%c%d,sex,age); if(sex==m||sex==M) { if(age=60) printf(他已退休\n); else printf(他在工作\n); } elseif(sex==f||sex==F) { if(age=55) printf(她已退休\n); else printf(她在工作\n); } else printf(输入数据有误!\n);}3.4switch语句可以采用if-elseif语句处理多分支问题,但是,当分支很多时,采用switch语句会更简洁。例如,在“学生信息管理系统”中,共有12个菜单选项。如果采用if-elseif语句来处理,则程序将非常冗长。switch(表达式){ case常量1:语句序列1;[break;] case常量2:语句序列2;[break;] …case常量n:语句序列n;[break;]default:语句序列n+1;}【例3-13】已知1998年的1、3、5、7、8、10、12月有31天,4、6、9、11月有30天,2月有28天。编程从键盘输入1998年的某个月份,输出该月有多少天。voidmain(){ intx,day; printf(请输入月份(1-12):); scanf(%d,x); switch(x) { case1:day=31;break; case2:day=28;break; case3:day=31;break; case4:day=30;break; case5:day=31;break; case6:day=30;break; case7:day=31;break; case8:day=31;break; case9:day=30;break; case10:day=31;break; case11:day=30;break; case12:day=31;break; } printf(%d月的天数是%d\n,x,day);}如果多个case的执行语句相同,则它们可以共用同一个语句块。voidmain(){intmonth,day;printf(请输入月份(1-12):);scanf(%d,month);switch(month){ case4: case6: case9: case11:day=30;break; case2:day=28;break default:day=31; }printf(%d月的天数是%d\n,month,day);}如省略break,则不会跳出switch,且不再进行条件检测。如果case11和case2后的break删除,则输入4和2,运行结果是多少?【例3-14】从键盘输入一个算术运算式,采用switch语句输出计算结果,算术运算符包括:+、-、*、/、%(求余数),操作数为整数。如输入2+32,则输出34。voidmain(){ inta,b; charop; printf(请输入算术运算式:); scanf(%d%c%d,a,op,b); switch(op) { case+:printf(计算结果为:%d\n,a+b);break; case-:printf(计算结果为:%d\n,a-b);break; case*:printf(计算结果为:%d\n,a*b);break; case/:printf(计算结果为:%f\n,(float)a/b);break; case%:printf(计算结果为:%d\n,a%b);break; default:printf(数据输入错误!\n); }}如果输入2+32,则scanf()如何处理?为了避免除0错误,程序应作何修改?case/: if(b==0)
文档评论(0)