安 徽 工 程 大 学
高级语言程序设计 实 验 报 告
班级 姓名 同组者 / 成绩 日期 2019.10.10 指导教师
实验名称 选择结构程序设计 一、 实验目的
1. 学会正确使用关系运算符和关系表达式。
2. 学会正确使用逻辑运算符、逻辑表达式以及关系表达式等。 3. 熟悉掌握if语句和switch语句的用法。
4. 熟悉选择结构程序中的语句执行过程,掌握选择结构程序设计的方法。
二、 实验内容
1. 编写程序,判断从键盘上输入的一个字符类型,并按下列要求输出。 (1)若该字符是数字,输出字符串“0~9”。
(2)若该字符是大写或者小写字母,输出字符串“A~z”。 (3)若该字符是其他字母,输出“!,@,……”。
完善P56页第一个源程序,对源程序进行编译、连接并运行,完成调试报告。
2. 编程并上机调试。
(1)给出一个不多于4位的正整数,求它是几位数。
(2)给出一个百分制成绩,要求输出成绩等级'A'、'B'、'C'、'D'、'E'。90分以上为'A',80~90分为'B'70~79分为'C',60~69分为'D',60分以下为'E'。用switch语句来实现。
(3)输入4个整数,要求按从小到大的顺序输出。 (4)输入3个整数,将最大数与最小数输出。
(5)输入一个字符,如果是数字字符,把它转换成相应的数字输出;如果不是,则以十进制整数形式输出其ASCⅠⅠ码值。
*思考题
第 1 页
3. 若在实验内容1的程序第8行的语句else if (_)后多输入了一个分号,即“else if (_);”,分析程序,写出预期结果,然后输入调试,查看运行结果与预期结果是否一致并分析原因。
4. 若在实验内容1的程序第8行的语句else if(_)法人括号内输入c>='A'&&c<='z'后,判断在调试时是否能得到正确结果,并分析原因。
三、 算法流程图或实验步骤(可根据需要增删、修改)
1. (1)算法流程图 #include
(2)实验步骤
Files→New→Files→C++source File→文件名:program3011.c→位置:E:\\123\\→确定→完善源程序→Buid→是→确认0error(s) 0warning(s)后→BuidExecute→查看运行结果
2. (1)算法流程图: #include
int a,b;
第 2 页
char c;
scanf(\if(c>='0'&&c<='9')
printf(\printf(\printf(\\\n\
else if((c>='a'&&c<='z')||(c>='A'&&c<='Z')) else
}
scanf(\b=a/10; if (b==0)
printf(\该数是一位数\
else if (b>=1&&b<=9)
printf(\该数是两位数\
else if (b>=10&&b<=99)
printf(\该数是三位数\
else
printf(\该数是四位数\
实验步骤:
Files→Close Workspace→Files→New→Files→C++source File→文件名:program3021.c→位置:E:\\123\\→确定→输入代码→Buid→是→确认0error(s) 0warning(s)后→BuidExecute→查看并验证运行结果
(2)算法流程图: #include
int a,b;
scanf(\b=a/10; switch(b) {
case(10):printf(\case(9):printf(\case(8):printf(\case(7):printf(\case(6):printf(\
第 3 页
}
default:printf(\}
实验步骤:
Files→Close Workspace→Files→New→Files→C++source File→文件名:program3022.c→位置:E:\\123\\→确定→输入代码→Buid→是→确认0error(s) 0warning(s)后→BuidExecute→查看并验证运行结果
(3)算法流程图: #include
scanf(\ if (a>b) { t=a; a=b; b=t;
}
else if (a>c) { t=a; a=c; c=t;
}
else if (a>d) {
t=a;
第 4 页