
程商序设计 switch选择结构 主讲:曾志华
switch选择结构 主讲:曾志华

选择结构-switch语句 、身程设 switch语句结构流程图 switch语句结构形式 switch(整型表达式 计算表达式的值 case常量1: 如果等于常量1 表达式 语句1; 常量1 其他值 break; 常量2 常量 case常量2: 如果等于常量2 语句2; 语句1 语句2 语句n 语句n+1 break; default 如果没有找到匹配的值 语句n+1;
选择结构-switch语句 switch(整型表达式) { case 常量1: 语句1; break; case 常量2: 语句2; break; …… default : 语句n+1; } switch语句结构流程图 switch语句结构形式 表达式 语句1 语句2 语句n 语句n+1 常量1 常量2 常量n 其他值 计算表达式的值 如果等于常量1 如果等于常量2 如果没有找到匹配的值

选择结构-switchi语句 程序设计 #include "stdio.h" void main( 如果输入1,请问输出什么结果? intx=0; printf("请输入一个数字:"): scanf("%d",&x); switch(x) 如果没有break,则将自动执行该语句后面的语句。 case 1:printf("你n"): //break; case2:printf("好n"): //break; case3:printf("朋趴n")i //break; case4:printf(友n")i //break; default: printf('输入错误n"):
选择结构-switch语句 #include "stdio.h" void main() { int x = 0; printf("请输入一个数字:"); scanf("%d",&x); switch(x) { case 1: printf("你\n"); //break; case 2: printf("好\n"); //break; case 3: printf("朋\n"); //break; case 4: printf("友\n"); //break; default: printf("输入错误\n"); } } 如果输入1,请问输出什么结果? 如果没有break,则将自动执行该语句后面的语句

switch结构示例 例:从键盘输入一个学生的成绩, 如果成绩大于90分,则输出“优”, 如果成绩在80和90分之间,则输出“良”, 如果成绩在70和80分之间,则输出“中”, 如果成绩在60和70分之间,则输出“及格”, 如果成绩在60分以下,则输出“不及格
switch结构示例 例: 从键盘输入一个学生的成绩, 如果成绩大于90分,则输出“优” , 如果成绩在80和90分之间,则输出“良” , 如果成绩在70和80分之间,则输出“中” , 如果成绩在60和70分之间,则输出“及格” , 如果成绩在60分以下,则输出“不及格”

switch结构示例 int score; case6:printf("及格!\n")i int temp; break; printf("请输入学生成绩:")i case 7:printf("!n"); scanf("%od",&score); temp score/10; break; switch(temp) case8:printf("良!\n")i break; case 0: case9:printf("优!n")i case 1: 多个case可共用一组执行语句 break; case 2: default: case 3: case 4: printf("输入错误!"); case5:printf("不及格!\n")i break;
switch结构示例 int score; int temp; printf("请输入学生成绩:"); scanf("%d",&score); temp = score/10; switch(temp) { case 0: case 1: case 2: case 3: case 4: case 5: printf("不及格!\n"); break; case 6: printf("及格!\n"); break; case 7: printf("中!\n"); break; case 8: printf("良!\n"); break; case 9: printf("优!\n"); break; default: printf("输入错误!"); } 多个case可共用一组执行语句

习题 身程序设计 1计算器 描述 一个景简单的计算器,支持十,,*,/四种运算。仅需考虑输入输出为整数的情况,数 据和运算结果不会超过int表示的范圆。 输入:输入只有一行,共有三个参数,其中第1、2个参数为整数,第3个参数为操作 符(十,,*/)。 输出:输出只有一行,一个整数,为运算结果。然而: 1.如果出现除数为0的情况,则输出:Divided by zero! 2.如果出现无效的操作符(即不为+,,*,/之一),则输出:Invalid operator! 样例输入 12+ 样创输出 3
1 计算器 描述 一个最简单的计算器,支持+, -, *, / 四种运算。仅需考虑输入输出为整数的情况,数 据和运算结果不会超过int表示的范围。 输入:输入只有一行,共有三个参数,其中第1、2个参数为整数,第3个参数为操作 符(+,-,*,/)。 输出:输出只有一行,一个整数,为运算结果。然而: 1. 如果出现除数为0的情况,则输出:Divided by zero! 2. 如果出现无效的操作符(即不为 +, -, *, / 之一),则输出:Invalid operator! 样例输入 1 2 + 样例输出 3 习题

与程序设计 int main() case '/' f(n2=0) int n1,n2,result; char opt; scanf("%d%d%c",&n1,&n2,&opt); printf("Divided by zero!"); switch(opt) } else case'+': result n1 n2; result n1/n2; printf("%d",result); printf("%d",result); breakj case '-' break; result n1 n2; default: printf("%d",result); break; printf("Invalid operator!"); case'*': break; result n1 *n2; printf("%d",result); return 0; break;