信息科学技术学院《C语言程序设计》实验指导书
实验1.5 switch选择结构
一、实验目的
1.熟练掌握switch语句。
2.掌握省略break的case语句的执行方式。
3.比较if语句的嵌套及if、switch多路分支语句。
二、实验学时数
2学时 三、实验步骤 (一)阅读程序
1. 输入并运行以下程序,观察运行结果。 #include
switch(i)
{ case 1:printf(\case 2:printf(\case 3:printf(\case 4:printf(\}
printf(\return 0; }
分析结果 运行结果 (二)完成程序
要求:按照给定题目要求,参照出现的语句,填写程序空白处。 1. 以下程序实现的功能是: -1 x<0,请将以下程序补充完整 y= 0 x=0 1 x>0
#include
{ int x,y;scanf(“%d”,&x);
第 24 页
信息科学技术学院《C语言程序设计》实验指导书
switch(x<0)
{case 1: ;break; case 0:switch(x==0) { case 1;y=0;break;
case 0:y=1;
}
}
printf(“y=%d\\n”,y); return 0; }
2.用switch结构编写一个处理四则运算的程序。 #include
{ float v1,v2;char op;
printf(“please type your expression:\\n”); scanf(“%f%c%f”,&v1,&op,&v2); switch( )
{case ‘+’:printf(“%1.0f+%1.0f=%1.0f\\n”,v1,v2,v1+v2);break; case ‘ ’:printf(“%1.0f-%1.0f=%1.0f\\n”,v1,v2,v1-v2); break; case ‘*’:printf(“%1.0f*%1.0f=%1.0f\\n”,v1,v2,v1*v2); break; case ‘/’:
if( ){printf(“除数为零\\n”);break;} else
{printf(“%1.0f/%1.0f=%1.0f\\n”,v1,v2,v1/v2);break;} default:printf(“运算符错误\\n”);
} return 0;
}
3.输入某年某月某日,判断这一天是这一年的第几天?
程序分析:以3 月5 日为例,应该先把前两个月的加起来,然后再加上5 天即本年的第几天,特殊情况,闰年且输入月份大于3 时需考虑多加一天。 #include
{ int day,month,year,sum,leap;
printf(\scanf(\
第 25 页
信息科学技术学院《C语言程序设计》实验指导书
switch(month)/*先计算某月以前月份的总天数*/ {
case 1:________;break; case 2:sum=31;break; case 3:sum=59;break; case 4:sum=90;break; case 5:sum=120;break; case 6:sum=151;break; case 7:sum=181;break; case 8:sum=212;break; case 9:sum=243;break; case 10:sum=273;break; case 11:sum=304;break; case 12:sum=334;break;
default:printf(\}
sum=sum+day; /*再加上某天的天数*/
if(year@0==0||(_______________))/*判断是不是闰年*/
leap=1; else
leap=0;
if(______________________)/*如果是闰年且月份大于2,总天数应该加一天*/ _____________;
printf(\ \\n \return 0; }
(三)编写程序
1. 以下4种水果([1]苹果[2]梨[3]桔子[4]芒果)单价分别是2.0元/公斤,2.5元/公斤,3.0元/公斤,4.5元/公斤,请输入水果编号、重量,计算应付款。 2.从键盘输入1-7,显示输出该日期对应的英文日期
(Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,sunday)名称。
3.己知某公司员工的保底薪水为500,某月所接工程的利润p与利润提成的关系如下:(计量单位:元)(选作)
p<=1000 没有提成 1000
提成15%
5000
第 26 页
信息科学技术学院《C语言程序设计》实验指导书
1.编写程序实现运输公司对用户计算运费。路程(s)越远,每公里运费越低。 2.考虑一个自动售货机,提供如下选择: [1]矿泉水 [2]巧克力 [3]爆米花 [4] 果汁
[5] 显示购买商品的数量 [6] 退出系统
第 27 页
信息科学技术学院《C语言程序设计》实验指导书
实验2循环结构及数组(共8学时)
实验2.1 循环结构(2学时)
2.1.1 while循环和do…while循环及二者比较 2.1.2 for循环 2.1.3循环嵌套
一、实验目的
1. 掌握while ,do-while,for 循环语句的使用与区别; 2. 掌握循环条件、循环体、循环终止等循环要素; 4. 理解循环执行过程。 5. 熟练使用循环语句编写程序。 二、实验学时数
2学时 三、实验步骤 (一)阅读程序
1. #include
b-=a ; a++ ;
printf(“a=%d,b=%d\\n”,a,b); }
分析结果 运行结果 return 0;
2. #include
{ int x=2 ,y=6 , z=3;
do
while(z-->0&&++x<5) ;
第 28 页
y=y-1;