实验六-选择结构程序设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验六-选择结构程序设计(3)【实验目的】
1.了解C语句表示逻辑量的方法,0代表假和1代表真;
2.正确使用关系表达式和逻辑表达式表达条件。

3.熟练掌握switch语句。

【实验内容】
1、准备知识
SWITCH语句的基本形式
例1:score的值为5时,输出结果是??
switch(score)
{ default: printf(“data error!”);
case 5: printf(“Very good!”);break;
case 4: printf(“Good!”); break;
case 3: printf(“Pass!”); break;
case 2: printf(“Fail!”); break;
}
例2:case后可包含多个可执行语句,且不必加{ }
grade=’B’
switch(grade){
case …A‟:
case …B‟:
case …C‟:
printf(“score>60\n”);
break;
……..
}
例3:要求按照考试成绩的等级输出百分制分数段,用switch语句实现:switch(grade)
{case ′A′∶printf(”85~100\n”);BREAK;
case ′B′∶printf (”70~84\n”);
case ′C′∶printf (”60~69\n”);
case ′D′∶printf (”<60\n”);
default∶(printf “error\n”);

例4:break语句在switch语句中的应用:
位置:位于每个case分支的最后面
作用:控制程序跳出switch语句,继续执行switch后面的第一条语句。

例5:多个case可共用一组执行语句
说明:
(1) switch后面括弧内的“表达式”,ANSI标准允许它为任何类型,。

(2) 当表达式的值与某一个case后面的常量表达式的值相等时,就执行此case后面的语句,若所有的case中的常量表达式的值都没有与表达式的值匹配的,就执行default后面的语句。

(3) 每一个case的常量表达式的值必须互不相同,否则就会出现互相矛盾的现象(对表达式的同一个值,有两种或多种执行方案)。

(4) 执行完一个case后面的语句后,流程控制转移到下一个case继续执行。

“case常量表达式”只是起语句标号作用,并不是在条件判断。

在执行switch语句时,根据switch后面表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断。

应该在执行一个case分支后,可以用一个break语句来终止switch语句的执行。

(5) 多个可以共用一组执行语句。

2、【练习】:
(1)在屏幕上显示一长如下所显示的时间表
*****TIME*****
1morning
2afternoon
3night
please enter you choice;
操作人员根据提示进行选择,程序根据输入的时间序号现实相应的问候信息,当选择1时显示”Good morning”,选择2时显示”Good afternoon”,选择3时显示“Good night”,对于其他的选择显示“Selection error!”分别用switch语句和IF语句两种方式编程实现。

(2)某托儿所收2岁到6岁的孩子,2岁、3岁孩子进小班(Lower class);4岁孩子进中班(Middle class);5岁、6岁孩子进大班(Higher class)。

编写程序(分别用switch语句和IF语句两种方式编程),输入孩子年龄,输出年龄及进入的班号。

(3)输入一个月份值,输出该月份有多少天?1、3、5、7、8、10、12月为31天,4、6、9、11月为30天,2月为28天。

当输入的数字不在1~12之间的时候输出“数字不合要求”(用switch语句)
(4)某个自动加油站有'a',b','c'三种汽油,单价分别为1.50,1.35,1.18(元/千克),也提供了"自己加"或"协助加"两个服务等级,这样用户可以得到5%或10%的优惠.本程序针对用户输入加油量a,汽油品种b和服务类型c('f'--自动,'m'-- 自己,'e'--协助),输出应付款m(用switch语句)
3、【实训心得】。

相关文档
最新文档