实验二 选择结构程序设计if.pdf
实验二选择结构程序设计
一、实验目的及任务:
1、了解C语句表示逻辑量的方法(以0代表假以1代表真)。
2.学会正确使用逻辑运算符和逻辑表达式的方法。
3.熟悉i语句和switch语句。
4.结合程序掌握一些简单的算法。
二、实验环境
TC编程环境;主机操作系统为Windows2000或WindowsXP;
三、预备知识
要深入理解选择结构的特点,掌握各自的语句实现。
四、实验内容
本实验要求编程解决以下问题,然后上机调试运行程序。
xx1
1.y2x11x10
3x11x10
用scan函数输入x的值,求y的值。
程序提示:
main函数结构如下:
定义实型变量x与y
使用scan函数输入x的值
ifx1
y=x
else
ifx10
y=2x-1
else
y=3x-11
输出x的值与y的值
2.给出一个百分制的成绩,要求输出成绩等级A,B,C,D,E。90分及以上为A,
80-89为B,70-79为C,60-69为D,60分以下为E。要求从键盘输
入成绩,然后输出相应等级,分别用i语句和switch语句实现。
程序提示:
(1)使用i语句的main函数结构如下:
定义float型变量score,char型变量grade
输入百分制成绩赋给score
ifscore=90
grade=A
elseifscore=80
grade=B
elseifscore=70
grade=C
elseifscore=60
grade=D
elsegrade=E
输出百分制成绩和等级。
(2)使用switch语句的main函数结构如下:
定义float型变量score,char型变量grade
输入百分制成绩赋给score
switch(int(score/10))
{
case10:
case9:grade=A;break;
case8:grade=B;break;
case7:grade=C;break;
case6:grade=D;break;
default:grade=E;break;
}
输出百分制成绩和等级
3.编程实现:输入一个不多于5位的正整数,要求:(1)输出它是几位数,(2)分别输
出每一位数字,(3)按逆序输出各位数字,如原数为321,则应输出123。
应准备以下测试数据
要处理的数为1位正整数;
要处理的数为2位正整数;
要处理的数为3位正整数;
要处理的数为4位正整数;
要处理的数为5位正整数;
除此之外,程序还应当对不合法的输出作必要的处理。例如:
输入负数;
输入的数超过5位;
程序提示:main函数结构如下:
定义long型变量num,int型变量c1,c2,c3,c4,c5
输入一个不超过5位的正整数赋给num
ifnum99999
输出:输入的数超过5位
elseifnum0
输出:输入的数是一个负数
else
{
求得num的各位数分别赋给C1,C2,C3,C4,C5
c1=num/10000;
c2=(num-c1*10000)/1000;
c3=(num/100)%10;
c4=(num/10)%10;
c5=num%10;
if(c10)
{printf(\n%ld是一个5位数\n,num);
printf(其各位分别为:%1d,%1d,%1d,%1d,%1d\n,c1,c2,c3,c4,c5);
printf(逆序输出为:%1d%1d%1d%1d%1d\n,c5,c4,c3,c