- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * switch多分支选择结构 switch语句(开关语句) 在一个表达式可能的一组固定数量的值中进行选择,并采取不同的动作。 选择结构 switch(表达式) { case 常量表达式_1: 语句1; [break;] case 常量表达式_2: 语句2; [break;] …… case 常量表达式_n: 语句n; [break;] [default: 语句n+1; [break;]] } 条件表达式:整型/字符型表达式(或枚举表达式) 常量表达式:整型/字符型常量表达式 * switch语句 举例 根据考试成绩的等级打印相应的分数段。 选择结构 #include stdio.h int main() { char grade; grade=getchar(); switch(grade) { case ‘A’: printf(“85~100\n”); case ‘B’: printf(“70~84\n”); case ‘C’: printf(“60~69\n”); case ‘D’: printf(“60\n”); default: printf(“error\n”); } return 0; } B 70~84 60~69 60 error ? * switch语句 举例 结果分析 流程图 选择结构 print “60~69” print “70~84” print “85~100” print “60” print “error” ‘A’ ‘B’ ‘C’ ‘D’ default grade * switch语句 举例 正确的流程图 选择结构 print “60~69” print “70~84” print “85~100” print “60” print “error” ‘A’ ‘B’ ‘C’ ‘D’ default grade * void main() { float grade; grade=getchar(); switch(grade) { case ‘A’: printf(“85~100\n”); break; case ‘B’: printf(“70~84\n”); break; case ‘C’: printf(“60~69\n”); break; case ‘D’: printf(“60\n”); break; default: printf(“error\n”); } } switch语句中的break 举例 得到正确结果 选择结构 B 70~84 break语句 跳转至switch语句之后的第一条语句 OK * switch语句 举例 完成一个简单的计算器程序,能实现两个浮点数的加、减、乘、除运算。(例4.6) 选择结构 print a*b print a-b print a+b print a/b print “error” ‘+’ ‘-’ ‘*’ ‘/’ default operator * switch语句 举例 源代码 选择结构 #include stdio.h int main() { float a,b; char c; printf(“输入表达式: a+(-,*,/)b \n); scanf(%f%c%f,a,c,b); switch(c) { case +: printf(%f\n,a+b);break; case -: printf(%f\n,a-b);break; case *: printf(%f\n,a*b);break; case /: printf(%f\n,a/b);break; default: printf(input error\n); } return 0; } * switch语句 举例 问题:根据输入的月份,给出当月的天数。 选择结构 #include stdio.h int main() { int month, day; scanf(%d, month); switch (month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: day=31; break; case 4: case 6: case 9:
文档评论(0)