实验报告四 选择结构程序设计
- 格式:doc
- 大小:859.00 KB
- 文档页数:7
实验4 选择结构程序设计实验4选择结构程序设计实验4结构选择与程序设计一、实验目的1.掌握C语言中逻辑量的表示和使用。
2.掌握if语句和switch语句的使用。
3.熟悉各种表达式作为if语句及switch语句的条件。
4.了解turboc程序的基本调试方法。
二、实验内容1.验证性实验(1)分析程序的运行结果。
① 运行以下程序,输入1-7之间的任意数字,并观察程序#includevoidmain(){intweek的运行结果;printf(\scanf(\switch(week){case1:printf(\case2:printf(\case3:printf(\case4:printf(\case5:printf (\case6:printf(\case7:printf(\default:printf(\}}② 运行以下程序5次,输入数据分别为1、2、3、4和5。
请观察每次的操作结果,并根据结果分析原因。
#includevoidmain(){intn,a=0,b=0,c=0,d=0,k=0;scanf(\switch(n){case1:b++;break;case2:c++;案例3:d++;打破case4:k++;default:a++;}printf(\}(2)输入x的不同值,以下程序将求一给定“y=f(x)”函数的值。
#包括#includevoidmain(){floatx,y;scanf(\if(x<0)y=fabs(x);elseif(x<10)y=x*x;elsey=log10(x);printf(\}2.填写程序的空格(1)以下程序的功能是将用户输入的字母进行大小写转换,即若输入小写字母则将其转换为大写字母,如输入大写字母则将其转为小写字母,若输入非字母字符则输出提示信息。
#includevoidmain(){charc;scanf(\如果('a'<=c&&c>='z')c=c-32;elseif(‘a’<=c&&c>=‘z’)c=c+32;elseprintf(\printf(\}(2)公司将立即增加工资。
实验四选择结构程序设计在程序设计的世界里,选择结构就像是一个智能的决策者,根据不同的条件来决定程序的走向。
这一结构在解决各种实际问题中发挥着至关重要的作用,让程序变得更加灵活和高效。
选择结构,简单来说,就是让程序在运行时能够根据某些条件的判断结果,选择执行不同的代码块。
想象一下,你正在编写一个程序,要根据用户输入的成绩来判断他是否及格。
如果成绩大于等于 60 分,就输出“及格”;否则,输出“不及格”。
这就是一个典型的选择结构应用场景。
在大多数编程语言中,实现选择结构主要有两种方式:if 语句和switch 语句。
先来说说 if 语句。
它的基本形式是“if (条件) {代码块}”。
如果条件为真,就执行花括号里的代码块;如果条件为假,就跳过这个代码块,继续执行后面的代码。
比如说,我们要判断一个数是否为正数,可以这样写:```javaint num = 5;if (num > 0) {Systemoutprintln("这是一个正数");}```除了简单的 if 语句,还有 ifelse 语句。
它的形式是“if (条件) {代码块 1 } else {代码块 2 }”。
如果条件为真,执行代码块 1;如果条件为假,执行代码块 2。
例如,判断一个数是奇数还是偶数:```javaint num = 6;if (num % 2 == 0) {Systemoutprintln("这是一个偶数");} else {Systemoutprintln("这是一个奇数");}```另外,还有 ifelse ifelse 语句,可以处理多个条件的情况。
比如,根据学生的成绩划分等级:```javaint score = 85;if (score >= 90) {Systemoutprintln("优秀");} else if (score >= 80) {Systemoutprintln("良好");} else if (score >= 70) {Systemoutprintln("中等");} else if (score >= 60) {Systemoutprintln("及格");} else {Systemoutprintln("不及格");}```接下来,再讲讲 switch 语句。
实验四选择结构程序设计一、实验目的1.正确使用关系表达式和逻辑表达式表达条件。
2.学习分支语句if和switch的使用方法。
3.进一步熟悉TC集成环境的使用方法,学习TC环境提供的调试工具。
二、实验内容1.调试下列程序,使之具有如下功能:输入a、b、c三个整数,求最小值。
写出调试过程。
main(){ int a,b,c;scanf("%d%d%d",a,b,c);if((a>b)&&(a>c))if(b<c)printf("min=%d\n",b);elseprintf("min=%d\n",c);if((a<b)&&(a<c))printf("min=%d\n",a);}程序中包含有一些错误,按下述步骤进行调试。
⑴设置观测变量。
按<Alt+B>键,屏幕弹出"Add watch"窗口,在窗口中可输入要观察的变量或表达式,此处输入a,重复以上操作并分别输入b、c,在屏幕下方的"message"窗口显示变量名a、b、c,且变量名的后面有提示,如a的后面是undefined symbol 'a',这是因为程序没有运行,变量没有登记,所以TC环境不知道a是什么。
⑵单步执行程序。
按<F8>键,屏幕上半部"Edit"窗口中的程序第一行程序的文字背景色变为兰色,表示此语句将被执行。
连续按<F8>键,兰色条一句句下移。
⑶通过单步执行发现程序中的错误。
当单步执行到scanf()函数一句时,屏幕自动切换到DOS窗口,等待用户的输入,假定我们输入"1 2 3",变量a、b、c接受后应在屏幕信息窗口显示出来,但是此时我们看到的却不是我们输入的数据。
这时我们就要检查程序。
选择结构编程实验报告一、实验目的本次实验旨在探究选择结构在编程中的应用,以及掌握选择结构编程的基本技巧和方法。
通过实验,进一步提升自己的编程能力。
二、实验内容实验内容包括使用选择结构编写简单的程序,并进行运行测试和调试。
具体的实验任务如下:1. 根据用户输入的数字,判断其奇偶性。
2. 根据用户输入的年份,判断其是否为闰年。
3. 根据用户输入的分数,判断其对应的等级(优秀、良好、及格、不及格)。
三、实验步骤实验步骤如下:1. 判断奇偶性pythonnum = int(input("请输入一个整数:"))if num % 2 == 0:print("该数字为偶数。
")else:print("该数字为奇数。
")2. 判断闰年pythonyear = int(input("请输入一个年份:"))if year % 4 == 0 and year % 100 != 0 or year % 400 == 0:print("该年份为闰年。
")else:print("该年份不是闰年。
")3. 判断等级pythonscore = int(input("请输入一个分数:"))if score >= 90:print("优秀")elif score >= 80:print("良好")elif score >= 60:print("及格")else:print("不及格")四、实验结果与分析经过测试和调试,以上三个程序均能正常运行并得到正确的结果。
运行实验中的示例代码时,我们可以根据输入的不同数据,看到输出结果的变化,从而验证选择结构在程序中的作用。
五、实验总结通过本次实验,我对选择结构编程有了更深入的理解。
第1篇一、实验目的1. 理解选择分支结构的概念和作用。
2. 掌握选择分支结构的语法和执行流程。
3. 学会使用选择分支结构进行简单的程序设计。
二、实验环境1. 操作系统:Windows 102. 编程语言:C语言3. 编译器:Code::Blocks三、实验内容1. 实验一:简单if语句实验目的:理解if语句的基本用法。
实验步骤:(1)编写一个C语言程序,包含一个变量a。
(2)使用if语句判断变量a的值是否大于10。
(3)如果条件成立,输出“a大于10”;否则,输出“a不大于10”。
实验代码:```cinclude <stdio.h>int main() {int a = 5;if (a > 10) {printf("a大于10\n");} else {printf("a不大于10\n");}return 0;}```2. 实验二:if-else语句实验目的:理解if-else语句的基本用法。
实验步骤:(1)编写一个C语言程序,包含两个变量a和b。
(2)使用if-else语句判断变量a的值是否大于变量b的值。
(3)如果条件成立,输出“a大于b”;否则,输出“a不大于b”。
实验代码:```cinclude <stdio.h>int main() {int a = 10, b = 5;if (a > b) {printf("a大于b\n");} else {printf("a不大于b\n");}return 0;}```3. 实验三:嵌套if语句实验目的:理解嵌套if语句的基本用法。
实验步骤:(1)编写一个C语言程序,包含三个变量a、b和c。
(2)使用嵌套if语句判断变量a、b和c的值,输出最大值。
实验代码:```cinclude <stdio.h>int main() {int a = 10, b = 20, c = 30;if (a > b) {if (a > c) {printf("最大值是:%d\n", a);} else {printf("最大值是:%d\n", c);}} else {if (b > c) {printf("最大值是:%d\n", b);} else {printf("最大值是:%d\n", c);}}return 0;}```4. 实验四:switch语句实验目的:理解switch语句的基本用法。
实验四 选择结构程序设计一、实验目的1.掌握关系、逻辑表达式的正确书写形式。
2.学习结构化程序的控制流程。
3.掌握单分支与双分支条件语句的使用。
4.掌握多分支条件语句(If … Then … ElseIf )的使用。
5.掌握Select Case 语句的使用及与多分支条件语句的区别。
6.熟悉选择结构程序设计,灵活使用各种分支语句。
7.学习掌握程序调试方法。
二、实验内容1.将实验三的“计算器3”另存为“计算器4”,按图4.7修改成“计算器4”的界面。
运行时单击“=”按钮,执行所选算术运算符按钮的运算,运算结果显示在文本框中。
编写事件过程及代码实现“计算器4”各运算符的运算功能。
(1)用If ……ElseIf ……End If 结构编写“=”按钮的事件过程及代码。
(2)用Select Case ……End Select 结构编写“=”按钮的事件过程及代码。
图4.7 实验1界面设计 图4.8 实验2界面设计 2.在文本框中输入三角形的三个边a 、b 、c ,计算三角形的面积并保留三位小数。
界面设计如图4.8所示。
三角形面积计算公式如下:P =( a + b + c )/ 2 S = )(*)(*)(*c p b p a p p ---要求:(1)用IsNumeric 函数对文本框输入的内容进行判断,若为非数字字符,显示“输入错误!重新输入”,清空该文本框,该文本框获得焦点。
(2)判断输入的三边是否能构成三角形,能构成三角形,计算三角形的面积。
否则用MsgBox 显示“不能构成三角形”的信息。
提示:对多个文本框输入数据的合法性用(LostFocus )进行判断,应防止文本框出现争夺焦点,可以在(LostFocus )事件过程中使用如下判断语句。
If Not IsNumeric(Text2) And Text2 <> "" Then3.编一模拟袖珍计算器的完整程序,运行界面如图4.9所示。
实验四 选择结构和循环结构程序设计实验目的:1.掌握建立和执行M 文件的方法 2.掌握利用if 语句实现选择结构的方法 3.掌握利用switch 语句实现多分支选择结构的方法 4.掌握利用for 语句实现循环结构的方法 5.掌握利用while 语句实现循环结构的方法 6. 熟悉利用向量运算来代替循环操作的方法实验内容:1. 求分段函数的值。
3及2其它,1x 且50,653且0,6222≠⎪⎩⎪⎨⎧--≠<≤+--≠<-+=x x x x x x x x x x y用if 语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y 值。
x=input('请输入x 的值:x=');if(x<0&x~=-3)y=x.*x+x-6elseif(x>=0&x<5&x~=2&x~=3)y=x.*x-5.*x+6elsey=x.*x-x-1end请输入x 的值:x=[-5.0 -3.0 1.0 2.0 2.5 3.0 5.0]y =29.0000 11.0000 -1.0000 1.0000 2.7500 5.0000 19.00002. 输入一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。
其中90分~100分为A ,80分~89分为B ,70分~79分为C ,60分~69分为D ,60分以下为E 。
要求:a) 分别用if 语句和switch 语句实现。
If 语句x=input('请输入分数:')if(x<=100&x>=90)disp('A')elseif(x>=80&x<=89)disp('B')elseif(x>=70&x<=79)disp('C')elseif(x>=60&x<=69)disp('D')elseif(x<60)disp('E')end请输入分数:95x =95Aswitch语句c=input('请输入分数:')switch ccase num2cell(90:100)disp('A')case num2cell(80:89)disp('B')case num2cell(70:79)disp('C')case num2cell(60:69)disp('D')case num2cell(0:59)disp('E')end请输入分数:83c =83Bb)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
实验报告课程名称:高级语言程序设计实验四:选择结构程序设计班级:学生姓名:学号:专业:指导教师:学期:2011-2012学年上学期云南大学信息学院一、 实验目的1、掌握关系运算和逻辑运算2、掌握选择结构相关语句的使用3、训练所学知识的综合应用二、 知识要点1、关系运算及运算符2、逻辑运算及运算符3、选择结构相关语句if 、if-else 、if 嵌套、switch 等的意义、语法格式及使用4、容易混淆的“==”与“=”运算符三、 实验预习(要求做实验前完成)1、写出6种比较运算符:2、写出3种逻辑运算符:3、“a 和b 都是正数”的逻辑表达式是:4、“a 比b 大,或者c 比b 大” 的逻辑表达式是:5、“a 等于b ,但是c 不等于d ” 的逻辑表达式是:6、“y 大于等于x1且小于等于x2” 的逻辑表达式是:7、“x 不等于0” 的逻辑表达式是:四、 实验内容 (要求提供:① 算法描述或流程图 ② 源程序 )1、编程序,计算下面分段函数的值(if-else )⎪⎩⎪⎨⎧≥-<≤+<+=)15(102)150(53)0(10x x x x x x y2、编写程序,输入一个小写英文字母,如果它位于字母表的前半部分,输出它的后一个字母;位于后半部分时输出它的前一个字母(if-else )。
3、输入某学生的考试成绩等级A 、B 、C 、D (或a 、b 、c 、d ),要求按照等级输出对应的分数段。
A 级对应的分数段为85~100分;B 级对应分数段为70~84;C 级对应分数段为60~69;D 级对应分数段位60分以下(switch )。
4、输入某学生的考试成绩,如果在90分以上,输出“A ”;80~89分输出“B ”;70~79分输出“C ”;60~69分输出“D ”;60分以下则输出“E ”(if-else 或swiitch )。
五、实验结果(要求写出运行界面及输出的运行结果)六、实验小结。
输入以下数据进行调试:
1)x=4 输出y=7
2)x=0 输出y=0
3)x=20 输出y=49
(2)从键盘上输入三个实数,它们分别代表三条线段的长度,请写一个判断这三条线段所组成的三角形属于什么类型(不等边,等腰,等边或不构成三角形)的C程序;如果能构成三角形,求出三角形的面积(取小数2位)。
编程实现(10分)用下面的数据运行程序,记录程序的输出结果(10分):
a B c 类型三角形面积
1.58
2.37 1.58 等腰三角形 1.24
3.21
4.25
5.16 不等边三角形
6.81
2.48 2.48 2.48 等边三角形 2.66
2.35 9.28
3.83 不能构成三角形
程序为:
#include <stdio.h>
#include <math.h>
int main(void)
{
float a,b,c,p,s;
printf("请输入三边:");
scanf("%f%f%f",&a,&b,&c);
if(a>0&&b>0&&c>0)
{
p=(a+b+c)/2;
if(a+b>c&&a+c>b&&b+c>a)
{
班级:计算机科学与技术1902班姓名:张雅茹学号:193202238
附加题:(请单独一页打印)
(1) 身高预测(20分)
男性成人身高=(父亲身高+母亲身高)*0.54(cm)
女性成人身高=(父亲身高*0.923+母亲身高)/2(cm)
此外,若喜爱体育运动,则可增加身高2%;若有良好的饮食习惯,则可增加身高1.5%。
请编程从键盘输入小孩的性别、父母身高、是否喜爱体育锻炼、是否有良好的饮食习惯,利用给定公式和升高测量方法对身高进行预测。
程序是:
#include<stdio.h>
void main()
{
float a, b, m;
int sex, y, n;
printf("请输入父亲身高:b=");
scanf("%f", &b);
printf("请输入母亲身高:m=");
scanf("%f", &m);
printf("请输入待测小孩的性别:sex=");
scanf("%d", &sex);
if (sex == 8)
a = (
b + m)*0.54;
a = (e*0.923 + g) / 2;
printf("是否喜爱运动:");
scanf("%d", &y);
if (y == 1)
{
{
a = a + a * 0.02;
printf("是否有良好的饮食习惯:"); scanf("%d", &n);
if (n == 1)
{
a = a + a * 0.015;
printf("预测身高为:%.2f", a);
}
else
printf("预测身高为:%.2f", a);
else
{
printf("是否有良好的饮食习惯:"); scanf("%d", &n);
}
if (n == 1)
{
a = a + a * 0.015;
printf("预测身高为:%.2f", a);
}
else
printf("预测身高为:%.2f", a);
}
}。