实验4 选择结构程序设计
实验4 选择结构程序设计
![实验4 选择结构程序设计](https://img.taocdn.com/s3/m/bdd49852bf23482fb4daa58da0116c175f0e1e45.png)
实验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)公司将立即增加工资。
实验四选择结构程序设计
![实验四选择结构程序设计](https://img.taocdn.com/s3/m/c851b30249d7c1c708a1284ac850ad02de8007c8.png)
实验四选择结构程序设计在程序设计的世界里,选择结构就像是一个智能的决策者,根据不同的条件来决定程序的走向。
这一结构在解决各种实际问题中发挥着至关重要的作用,让程序变得更加灵活和高效。
选择结构,简单来说,就是让程序在运行时能够根据某些条件的判断结果,选择执行不同的代码块。
想象一下,你正在编写一个程序,要根据用户输入的成绩来判断他是否及格。
如果成绩大于等于 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 语句。
实验四_选择结构程序设计
![实验四_选择结构程序设计](https://img.taocdn.com/s3/m/9ad2bfbb65ce0508763213b2.png)
实验四选择结构程序设计实验目的与要求:1、学会正确使用逻辑运算符和逻辑表达式的方法。
2、掌握程序的书写风格。
3、熟练掌握if语句的使用。
4、熟练掌握switch语句的使用。
实验内容:1、程序填空。
以下程序功能:有一函数:x (x<1)y= 2x-1 (1≤x≤10)3x-11 (x≥10)用scanf函数输入x的值,求y值。
运行程序,输入x的值(分别为x<1、1≤x<10、x≥10三种情况),检查输出的y值是否正确。
#include "stdio.h"void main(){float x,y;printf("请输入x的值:");scanf("___1___",&x);if(___2___)printf("y的值为:%f\n",y=x);else if(___3___&&___4___)printf("y的值为:%f\n",_____5____);elseprintf("y的值为:%f\n",y=3*x-11);}程序改错。
程序功能:计算器程序。
用户输入两个运算数和四则运算符,输出计算结果。
#include "stdio.h"void main(){double x,y;char ch;printf("请输入两个运算数和四则运算符(例4+5):");/***************found******************/scanf("%d%c%lf",&x,&ch,&y);switch(ch){/***************found******************/case '+':printf("结果为:%f\n",x+y);case '-':printf("结果为:%f\n",x-y);break;case '*':printf("结果为:%f\n",x*y);break;/***************found******************/case '/':printf("结果为:%f\n",x\y);break;}}3、程序设计题。
实验4 选择结构程序设计
![实验4 选择结构程序设计](https://img.taocdn.com/s3/m/4416dbdc80eb6294dd886c16.png)
实验四 选择结构程序设计(4学时)实验前必须做的操作.........——..新建文件夹:......首先在各自对应的计算机ncre(k:)盘上对应座位号文件夹内新建一个文件夹,文件夹的名字为“班级+学号的后两位+姓名”,如座位号为K02,航海1111班、学号后两位是02的、姓名为“张强”的同学,则其对应的文件夹名字是:航海111102张强。
然后在刚才建好的文件夹里面再建立一个文件夹,文件夹为“实验4”。
【实验目的】1、 理解C 语言表示逻辑量的方法(以0代表“假”,以非0代表“真”)。
2、 进一步巩固printf()和scanf()函数的使用方法。
3、 学会正确使用关系运算符和关系表达式、逻辑运算符和逻辑表达式。
4、 掌握if 语句三种形式的用法。
5、 掌握switch 、break 语句的用法。
6、 熟悉选择结构程序段中语句的执行过程。
7、 学会设计分支结构的程序,结合程序掌握一些基本的算法。
8、 巩固利用VC++对C 程序的查错方法,进一步提高修改程序错误的能力。
9、 学习跟踪调试程序,掌握简单的单步调试方法。
【实验内容】[实验任务一]:程序的跟踪调试和变量值的监视练习(可不上交、但必须操作、理解,掌握其方法) 程序跟踪调试实例4-1:程序跟踪调试和变量值的监视示例(请仔细按以下各步骤进行操作):输入x ,计算并输出下列分段函数 f(x) 的值(保留1位小数)。
(需要存盘)⎪⎩⎪⎨⎧=≠=0001)(x x x x f10.0f(10.00) = 0.1【操作步骤】:(1)输入源程序,并以error4_1.c 文件名最终保存在实验4文件夹里,然后执行“编译/Build ”—>“编译/Compile ”,出现第一个编译错误是:双击该出错信息,箭头指向else 所在行,出错信息指出在else 前缺少分号。
在y = 1 / x 后面补上分号后,重新编译,新出现的第一个出错信息(警告信息):双击该错误信息,箭头指向scanf("%f", x);所在行,出错原因是x 的前面少了&。
实验四 选择结构程序设计
![实验四 选择结构程序设计](https://img.taocdn.com/s3/m/f42153442b160b4e767fcf8d.png)
实验四 选择结构程序设计
(设计型 4学时)
一、实验目的
1.掌握逻辑表达式的正确使用方法。
2.掌握单分支、双分支和多分支条件语句结构的使用方法。
二、实验内容
1 有函数:
⎪⎩⎪⎨⎧≥-<≤-<=)
10(124)101(2
3)1(x x x x x x
y 写一个程序,输入x 值后,则输出相应y 值。
要求
用“If …ElseIf …EndIf ”和用“Select Case ”两种方法完
成该题目。
【提示】
注意区分1≤x<10和1<=x And x<10有什么不同。
2编写一个判断给定坐标在第几象限的程序,界面
如图3-1所示。
3 编写一个简易学生成绩管理系统,要求输入姓名
和成绩,点击“添加”按钮后,在文本框中追加并换行显示“姓名”、“成绩”和“合格”或
“不合格”信息,如图3-2所示。
【提示】
换行追加并且显示时,可用Text1.Text = Text1.Text & vbCrLf & (待追加并显示的字符串),同时应该将Text1的MultiLine 属性设置为True ,ScrollBars 属性设置为Both 。
进一步要求:按照≥90为“优”,≥80为“良”,≥70为“中”,≥60为“及格”,<60为“不及格”来划分并显示上述信息。
图3-1 实验3-2程序运行界面 图3-2 实验3-3程序运行界面。
实验4 编写选择结构程序
![实验4 编写选择结构程序](https://img.taocdn.com/s3/m/5d7a557231b765ce05081473.png)
实验4 编写选择结构程序一、实验目的1.了解C语言表示逻辑值的方法。
2.学会正确使用逻辑运算符和逻辑表达式的方法。
3.熟悉if语句和switch语句。
4.结合程序掌握一些简单的算法。
5.学习调试程序的方法。
二、实验内容本实验要求编程解决以下问题,然后上机调试运行程序。
1.编程实现:输入3个整数,要求按由小到大的顺序输出。
得到正确结果后,修改程序使之按由大到小的顺序输出。
main函数结构如下:int a,b,c,t;输入3个整数:赋给a,b,c;if(a>b) 交换a,bif(a>c) 交换a,cif(b>c) 交换b,c输出a,b,c2.给出一个百分制的成绩,要求输出成绩等级A,B,C,D,E。
90分及以上为A,80-89为B,70-79为C,60-69为D,60分以下为E。
要求从键盘输入成绩,然后输出相应等级,分别用if语句和switch语句实现。
程序提示:(1)使用if语句的main函数结构如下:定义float型变量score,char型变量grade输入百分制成绩赋给scoreif score>=90grade='A'else if score>=80grade='B'else if score>=70grade='C'else if score>=60grade='D'else grade='E'输出百分制成绩和等级。
(2)使用switch语句的main函数结构如下:定义float型变量score,char型变量grade输入百分制成绩赋给scoreswitch(int(score/10)){case 10:case 9: grade='A';break;case 8: grade='B';break;case 7: grade='C';break;case 6: grade='D';break;default: grade='E';break;}输出百分制成绩和等级3.实验总结。
实验四 选择结构程序设计
![实验四 选择结构程序设计](https://img.taocdn.com/s3/m/7d6647204b35eefdc8d333b9.png)
实验四选择结构程序设计一、实验目的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接受后应在屏幕信息窗口显示出来,但是此时我们看到的却不是我们输入的数据。
这时我们就要检查程序。
实验4 选择结构程序设计
![实验4 选择结构程序设计](https://img.taocdn.com/s3/m/0ac8505ca9114431b90d6c85ec3a87c241288a5a.png)
实验4 选择结构程序设计1.实验目的(1)熟练掌握if语句的三种形式,在实际中能根据具体情况灵活选择某种形式的if语句(2)进一步熟悉关系表达式和逻辑表达式(3)熟练掌握switch语句的功能、格式和执行过程(4)能用switch语句实现简单的选择功能2.实验内容2.1基础知识(1)在横线上填上适当的标点符号。
该程序的功能是输出a、b中的最大值。
#include “stdio.h”void main(){ int a,b,t;scanf("%d %d",&a,&b);if___b>a_______ t=a;a=b;b=t;____ptintf("\nmax=%d",a);}(2)在横线上填上适当的标点符号。
将题(1)改写成if—else的形式:#include “stdio.h”void main(){ int a,b,t;scanf("%d %d",&a,&b);if___a>b_______ptintf("\nmax=%d",a);____ /* 思考:此处的符号是否可以省略?什么情况下不能省略?*/else____ptintf("\nmax=%d",b);____}(3)在横线上填上适当的标点符号。
switch (表达式){ case_____常量表达式1____ 语句1____case_____常量表达式2____ 语句2____……default____ 语句n____ }(4)对于if—else语句,如果分支较多,有时用swtich语句更加合适,swtich语句是多分支选择结构,其执行过程:首先比较___________与___________是否相等,如果相等,则执行case后面的语句,如果都不相等,则执行__________。
2.2阅读程序(1)#include “stdio.h”void main(){ int number;printf(“number=“);scanf(“%d”,&number);if (number%10==0) printf(“%d是10的倍数。
实验四 选择结构程序设计
![实验四 选择结构程序设计](https://img.taocdn.com/s3/m/565d6a7e7fd5360cbb1adb09.png)
实验四 选择结构程序设计一、实验目的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所示。
实验4 选择结构程序设计(二)
![实验4 选择结构程序设计(二)](https://img.taocdn.com/s3/m/c49aabb71a37f111f0855b00.png)
实验报告课程名称C语言程序设计实验项目实验四专业计科班级2班姓名谭宁学号13030213 指导教师实验成绩年月日实验4 选择结构程序设计(二)一、实验目的1.掌握C语言中有关逻辑运算符及逻辑表达式的使用。
2.正确使用条件控制语句(if语句、switch语句)进行选择结构程序设计。
二、实验题目及要求1、用?表达式计算四级成绩是否通过,大于425分则输出通过,否则输出不通过。
源代码:#include<stdio.h>void main(){int a;scanf("%d",&a);printf("%s",a>=425 ? "通过":"不通过");}运行结果截屏:2、用?表达式对输入的一个字母进行判断,如果是大写则转换为小写,如果是小写则转换为大写输出。
源代码:#include<stdio.h> int main(void) { char ch; scanf("%c",&ch); printf("%c",ch>='a'&&ch<='z' ? ch-32 : ch+32);return 0; } 运行结果截屏:3、从键盘上输入x 的值,按下式计算y 的值。
(要求用两种if 结构实现,一种是串行if 结构,无论什么数都必须比较三次;一种是多分枝if 结构,可以减少比较次数)x<12 1 1x<10311 x 10x y x x ⎧⎪=-≤⎨⎪-≥⎩源代码:#include"stdio.h" int main(void) {double x,y;printf("qingshuruyigeshu\n"); scanf("%lf",&x); if(x<1) y=x;if(x>=1 && x<=10) y=2*x-1; if (x>=10) y=3*x-11; printf("y=%lf\n",y); return 0; } 运行结果截屏:4、编写程序,给出一个百分制成绩,要求输出相应的等级A、B、C、D、E。
MATLAB实验四 选择结构和循环结构程序设计
![MATLAB实验四 选择结构和循环结构程序设计](https://img.taocdn.com/s3/m/7c4222e8a300a6c30d229f1b.png)
实验四 选择结构和循环结构程序设计实验目的: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)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
实验报告4
![实验报告4](https://img.taocdn.com/s3/m/c4f9cae0aeaad1f346933f3d.png)
实验报告课程名称:高级语言程序设计实验四:选择结构程序设计班级:学生姓名:学号:专业:指导教师:学期: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 )。
五、实验结果(要求写出运行界面及输出的运行结果)六、实验小结。
实验4 选择结构程序设计(1)
![实验4 选择结构程序设计(1)](https://img.taocdn.com/s3/m/dbba03a0dd3383c4bb4cd2e2.png)
实验四选择结构程序设计(1)一、实验目的和要求1. 理解C语言的逻辑量2.掌握关系运算符和关系表达式的应用3. 掌握逻辑运算符和逻辑表达式的使用4.掌握if语句构成的选择结构5.掌握选择结构程序设计的方法二、实验环境(实验设备)硬件: 微型计算机软件: Microsoft Visual C++6.0三、实验过程新建一个文件夹,命名为:学号后两位+姓名(如05王魏)。
将以下运行正确的程序文件保存到该文件夹中(只保存.C文件),并上交文件夹到作业区自己班级的实验4文件夹中。
将实验题目3\4\5写在实验报告本上,参照作业区中的实验报告样板。
一定要写实验小结,可以写出实验中的收获和不懂的问题。
实验题目1:阅读程序,分析程序中各语句的作用及程序的执行结果,并上机运行验证结果。
问题:将if (a<b) {t=a;a=b;b=t;}中的花括号去掉后,程序的功能改变了吗?为什么?实验题目2:阅读并分析程序,记录程序的执行结果,并上机运行验证结果。
问题1:用一句话简述程序功能.问题2:模仿程序中的相关语句,请写出表示a为数字字符的表达式。
实验题目3:数学中有许多有趣的数,如水仙花数、完数等。
水仙花数是一个三位数,其各位数字的立方和恰等于这个数。
例如153,13+53+33=153。
编写程序,从键盘上输入一个三位的整数,判断其是否为水仙花数。
实验题目4:编写程序,判断从键盘上输入的一个整数是否为闰年年份,是则输出“yes”,否则输出“no” 。
实验题目5:日常生活中有许多问题可以用分段函数表示,例如邮局邮资付费等。
编写程序,求解以下数学分段函数。
实验题目6:编写程序,用假设思想(打擂台算法)求出三个数中的最大数。
提示:使用单分支if语句。
拓展题目1:现有三人,要求按年龄从大到小(也叫降序)排列。
程序代码如下,请将程序补充完整并上机调试。
#include <stdio.h>void main( ){ int a,b,c,t;printf(“请输入三个人的年龄:a b c:\n”);scanf("%d%d%d",&a,&b,&c);if (a<b) {t=a;a=b;b=t;}①;②;printf("%d,%d,%d ",a,b,c);}拓展题目2:应用if-else-if多分支选择语句编写程序,判断学生成绩等级。
实验四选择结构程序设计
![实验四选择结构程序设计](https://img.taocdn.com/s3/m/50b83b1a591b6bd97f192279168884868762b837.png)
实验四选择结构程序设计程序设计基础(C)实验报告系别:化学班级:14级化⼯⼀班学号:1459105028 姓名:王萍实验时间:2015.04.07 实验地点:机房1实验环境:visual c++6.0实验名称:实验四选择结构程序设计实验⽬的:1.熟练掌握if语句2.掌握switch语句3.学会使⽤选择结构解决实际问题实验内容:实验题⽬:1.有3个整数a,b,c,由键盘输⼊,输出其中最⼤整数。
程序代码:#include 编译预处理int main ()主函数{int a, b, c;定义变量printf("请输⼊三个任意整数:\n"); 提⽰语句scanf("%d%d%d", &a, &b, &c); 输⼊函数if(b > a)if条件语句{ a = b;赋值if(a < c) if条件语句a = c; } 赋值else{ if(a < c)a = c; }printf("最⼤的整数是:%d\n", a); 输出函数return 0;返回值}出错调试:缺少max,(写清楚⾃⼰在调试过程中遇到错误,如何改正的。
注意这是重要的评分依据!)运⾏结果:(写明⾃⼰在运⾏程序时⽤到的实验数据(⾄少3组),以及相应的运⾏结果。
)实验题⽬:2.编写程序输⼊⼀整数,将其值按⼩于10,10~99,100~999,1000以上分类显⽰。
例如:输⼊782时,显⽰782是100~999之间的数。
程序代码:#include 编译预处理int main()主函数{int x;定义变量xprintf("请输⼊⼀个整数:");输⼊提⽰scanf("%d",&x);输⼊xif(x<10)printf("%d⼩于10");else if(10<=x&&x<=99)printf("%d在10~99");else if(10<=x&&x<=999)printf("%d在100~999");else if(x>=1000)printf("%d1000以上");}出错调试:system("pause")定义不明确(写清楚⾃⼰在调试过程中遇到错误,如何改正的。
c语言实验四选择结构程序设计
![c语言实验四选择结构程序设计](https://img.taocdn.com/s3/m/acdc3d152bf90242a8956bec0975f46526d3a75a.png)
c语言实验四选择结构程序设计实验四:选择结构程序设计选择结构是C语言中的一种基本控制结构,用于根据条件的真假来选择执行不同的代码块。
本篇文章将介绍C语言中选择结构的概念、语法和常见的应用场景。
一、概述选择结构是一种基于条件判断的控制结构,根据条件的真假来选择执行不同的代码块。
C语言中的选择结构主要有if语句、if-else语句和switch语句。
二、if语句if语句是最简单的选择结构,它的语法格式如下:```cif (条件) {// 条件为真时执行的代码块}```其中,条件是一个表达式,如果条件为真,则执行if语句后面的代码块。
如果条件为假,则跳过if语句后面的代码块。
if语句还可以和else语句一起使用,形成if-else语句。
if-else语句的语法格式如下:```cif (条件) {// 条件为真时执行的代码块} else {// 条件为假时执行的代码块}```如果条件为真,则执行if语句后面的代码块;如果条件为假,则执行else语句后面的代码块。
三、switch语句switch语句用于根据表达式的值选择执行不同的代码块。
它的语法格式如下:```cswitch (表达式) {case 值1:// 表达式的值等于值1时执行的代码块break;case 值2:// 表达式的值等于值2时执行的代码块break;// ...default:// 表达式的值都不等于上述值时执行的代码块break;}```switch语句中的表达式的值会依次与每个case后面的值进行比较,如果相等,则执行对应的代码块。
如果所有的case都不匹配,则执行default后面的代码块。
四、应用场景选择结构在程序设计中有着广泛的应用场景,以下是一些常见的例子:1. 根据用户的输入选择不同的操作:比如在一个菜单程序中,根据用户输入的选项执行相应的操作。
2. 根据条件判断执行不同的计算:比如在一个学生成绩管理系统中,根据不同的分数段给出不同的评价。
实验4选择结构程序设计
![实验4选择结构程序设计](https://img.taocdn.com/s3/m/364abc66aeaad1f347933f27.png)
实验4:选择结构程序设计实验名称:选择结构结构程序设计成绩:实验日期:年月日实验报告日期:年月日一、实验目的1、掌握关系运算符、逻辑运算符及其表达式的正确使用。
2、掌握if语句和switch语句的使用。
3、了解程序调试的基本方法。
二、实验环境安装了Visual C++ 6.0的计算机系统三、实验内容(或实验任务)在Visual C++ 6.0下完成程序题:1、从键盘输入一个整数,如果该数是奇数,则输出“您输入的是一个奇数!”;否则,输出“您输入的是一个偶数!”。
程序正确编写后,参照实验1内容2中介绍的单步调试的方法,对本程序进行单步调试,仔细观察程序的执行过程,理解二分支的程序结构。
提示:这是一个典型的二分支结构,用if…else语句实现。
2、新建设一个工程,名字为4_2,在工程中创建一个文件,名为myerror1.c。
在文件中输入以下内容,并进行编译,尝试解释编译后显示的结果信息,找到出错的原因,并记录在下面。
void main(){int x, flag;scanf("%d", &x );if(x>0)flag=1;printf("这是一个正数\n");elseflag=0;printf("这不是一个正数\n");}请记录出错信息与出错原因。
3、从键盘输入一个表示年份的数值(十进制数),判断其是否为闰年(闰年的条件是:能被4整除但不能被100整除,或者能被400整除)提示:(1)定义变量(2)从键盘输入年份(3)如果该年份是闰年输出“这是一个闰年”否则输出“这不是一个闰年”4、编写程序,求解如下所示的分段函数。
从键盘输入一个x,求解y并在屏幕上输出结果。
3x+5,x>0y= 0,x=02x-1,x<05、编写程序,求解如下所示的分段函数。
从键盘输入一个x,求解y并在屏幕上输出结果。
|x|,x<0y= x2,0≤x<10logx,x≥106、编写一个简易的计算器程序,在屏幕上输出如图4-1所示字符界面菜单,由用户从键盘输入“+”、“-”、“*”、“/”4种字符之一。
实验4 选择结构程序设计
![实验4 选择结构程序设计](https://img.taocdn.com/s3/m/b0b35a024a7302768e993951.png)
实验4 选择结构程序设计一、实验目的:1、掌握if语句的用法,能够根据要求熟练使用单分支、双分支、多分支(嵌套)结构;2、掌握switch语句的格式、功能及注意事项;3、、熟悉条件运算符和条件表达式的基本用法;4、初步学习随机函数rand()的使用。
二、实验内容1、(基础题)编写一个程序:输入一个正整数,判断其是奇数还是偶数。
运行界面如下所示:(提示:判断奇偶性是指能否被2整除,可考虑用%运算符取余数)2、(基础题以下程序的功能是:输入学生四门课程的成绩,然后根据要求构建相应的逻辑表达式,之后计算这些表达式的值并输出。
请根据程序相关提示填写所缺代码,再运行该程序予以验证。
#include<stdio.h>int main(){double s1,s2,s3,s4;printf("请输入学生的4门课程成绩:");scanf("_______________________",_____________________);printf("\ns1=%f, s2=%f, s3=%f, s4=%f\n\n",s1,s2,s3,s4);printf("四门课程的平均成绩大于等于80? %s\n\n",___________________?"是":"否");printf("四门课程中每门的成绩均大于等于80? %s\n\n",_________________?"是":"否");printf("四门课程中至少有两门的成绩大于等于80? %s\n\n",___________?"是":"否");return 0;}程序运行界面如下图所示:3、对于下列函数:编写程序,要求输入x的值,输出y值。
实验4:选择结构程序设计
![实验4:选择结构程序设计](https://img.taocdn.com/s3/m/2e635bc49ec3d5bbfd0a746c.png)
实验名称:选择结构程序设计成绩:
实验日期:年月日实验报告日期:年月日
一、实验目的
1、掌握关系、逻辑运算符及其表达式的正确使用。
2、掌握if语句和switch语句的使用。
3、了解Turbo C程序调试的基本方法。
二、实验内容
在Turbo C下完成程序题:
1、有如下函数,要求输入x的值,求y的值。
|X|,X<0
The input is wrong!
3、工资计算。
main()
{
float s0,s;
int y;
printf("Input s0,y:");
scanf("%f,%d",&s0,&y);
if(y>=20)
{
if(s0>=2000)s=s0+200;
else s=s0+180;
}
else
{
if(s0>=1500)s=s0+150;
s=1520.000000
六、实验出现的问题、实验结果分析(不要照抄哦,^_^)
1、求绝对值对于浮点数要使用函数fabs。使用abs是对整数取绝对值。
2、以10为底的对数,应当使用函数log10。
3、0≤X<10不能表示为0<=x<10,否则尽管无语法错误,但是含义不正确。
4、case语句与常量之间应当有空格,否则当做语句标号处理。如case1:。(使用单步跟踪发现)。
五、源程序清单、测试数据、结果。
1、给定y=f(x)函数,要求输入x的值,求y的值。
#include <math.h>
main()
{
float x,y;
实验4:选择结构程序设计
![实验4:选择结构程序设计](https://img.taocdn.com/s3/m/d6af0439b5daa58da0116c175f0e7cd1842518f3.png)
实验4:选择结构程序设计实验名称:选择结构结构程序设计成绩:实验日期:年月日实验报告日期:年月日一、实验目的1、掌握关系运算符、逻辑运算符及其表达式的正确使用。
2、掌握if语句和switch语句的使用。
3、了解程序调试的基本方法。
二、实验环境安装了Visual C++ 6.0的计算机系统三、实验内容(或实验任务)在Visual C++ 6.0下完成程序题:1、从键盘输入一个整数,如果该数是奇数,则输出“您输入的是一个奇数!”;否则,输出“您输入的是一个偶数!”。
程序正确编写后,参照实验1内容2中介绍的单步调试的方法,对本程序进行单步调试,仔细观察程序的执行过程,理解二分支的程序结构。
提示:这是一个典型的二分支结构,用if…else语句实现。
2、新建设一个工程,名字为4_2,在工程中创建一个文件,名为myerror1.c。
在文件中输入以下内容,并进行编译,尝试解释编译后显示的结果信息,找到出错的原因,并记录在下面。
void main(){int x, flag;scanf("%d", &x );if(x>0)flag=1;printf("这是一个正数\n");elseflag=0;printf("这不是一个正数\n");}请记录出错信息与出错原因。
3、从键盘输入一个表示年份的数值(十进制数),判断其是否为闰年(闰年的条件是:能被4整除但不能被100整除,或者能被400整除)提示:(1)定义变量(2)从键盘输入年份(3)如果该年份是闰年输出“这是一个闰年”否则输出“这不是一个闰年”4、编写程序,求解如下所示的分段函数。
从键盘输入一个x,求解y并在屏幕上输出结果。
3x+5,x>0y= 0,x=02x-1,x<05、编写程序,求解如下所示的分段函数。
从键盘输入一个x,求解y并在屏幕上输出结果。
|x|,x<0y= x2,0≤x<10logx,x≥106、编写一个简易的计算器程序,在屏幕上输出如图4-1所示字符界面菜单,由用户从键盘输入“+”、“-”、“*”、“/”4种字符之一。
实验4 选择结构程序设计(实验指导书)
![实验4 选择结构程序设计(实验指导书)](https://img.taocdn.com/s3/m/ae264ffa524de518974b7d11.png)
实验4 选择结构程序设计1、实验目的(1)了解C 语言表示逻辑量的方法(以0代表“假”,以非0代表“真”);(2)学会正确使用逻辑运算符和逻辑表达式;(3)熟练掌握if 语句的使用(包括if 语句的嵌套);(4)熟练掌握多分支选择语句——switch 语句;(5)结合程序掌握一些简单的算法;(6)进一步学习调试程序的方法。
2、实验内容和步骤本实验要求事先编好....解决下面问题的程序,然后上机输入程序并调试运行程序。
(1)(教材P .112第4章习题第6题)有一个函数:编写程序,输入x 的值,输出y 相应的值。
要求:用scanf 函数输入x 的值,求y 相应的值。
运行程序,输入x 的值(分别为101011≥<≤<x x x、、这3种情况),检查输出的y 值是否正确。
(2)(教材P.112第4章习题第5题)从键盘输入一个小于1000的正数,要求输出它的平方根(如平方根不是整数,则输出其整数部分)。
要求在输入数据后先对其进行检查是否小于1000的正数。
若不是,则要求重新输入。
(3)(教材P.113第4章习题第8题) 给出一个百分制成绩,要求输出成绩等级为A,B,C,D,E 。
90分以上为A ,81~89分为B ,70~79分为C ,60~69分为D ,60分以下为E 。
① 事先编好程序,要求分别用if 语句和switch 语句来实现。
运行程序,并检查结果是否正确。
② 再运行一次程序,输入分数为负值(如-70),这显然是输入时出错,不应给出等级。
修改程序,使之能正确处理任何数据,当输入数据大于100和小于0时,通知用户“输入数据错误”,程序结束。
(4)(教材P.113第4章习题第11题)输入4个整数,要求按由小到大顺序输出。
在得到正确结果后,修改程序使之按由大到小顺序输出(提示:可参考教材P .88例4.3)。
3、撰写实验报告实验后,应整理出实验报告。
实验报告应包括以下内容:⎪⎩⎪⎨⎧≥-<≤-<=)10(113)101(12)1(x x x x x x y(1)实验目的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验4 选择结构程序设计
一、实验目的
1.掌握C语言中逻辑量的表示和使用方法。
2.掌握if语句及switch语句的使用。
3.熟悉各种表达式作为if语句及switch语句的条件。
4.了解Turbo C程序的基本调试方法。
二、实验内容
1.验证性实验
(1)分析程序的运行结果。
①运行下列程序,输入1-7之间的任意数字,观察程序的运行结果。
#include <stdio.h>
void main()
{ int week;
printf("Input(1-7):");
scanf("%d",&week);
switch(week)
{ case 1:printf("Mon.\n"); break;
case 2:printf("Tue.\n"); break;
case 3:printf("Wed.\n"); break;
case 4:printf("Tur.\n"); break;
case 5:printf("Fri.\n"); break;
case 6:printf("Sat.\n"); break;
case 7:printf("Sun.\n"); break;
default:printf("The input is wrong!\n");
}
}
②运行5次下列程序,输入的数据分别是1,2,3,4,5,请观察每次的运行结果,并根据结果分析原因。
#include <stdio.h>
void main()
{ int n,a=0,b=0,c=0,d=0,k=0;
scanf("%d",&n);
switch(n)
{ case 1:b++;break;
case 2:c++;
case 3:d++;break;
case 4:k++;
default:a++;
}
printf("%d,%d,%d,%d",a,b,c,d,n);
}
(2)输入x的不同值,以下程序将求一给定“y=f(x)”函数的值。
#include <stdio.h>
#include <math.h>
void main()
{ float x,y;
scanf("%f",&x);
if(x<0) y=fabs(x);
else if(x<10) y=x*x;
else y=log10(x);
printf("%f\n",y);
}
2.程序填空
(1)以下程序的功能是将用户输入的字母进行大小写转换,即若输入小写字母则将其转换为大写字母,如输入大写字母则将其转为小写字母,若输入非字母字符则输出提示信息。
#include<stdio.h>
void main()
{char c;
scanf("%c",&c);
if(‘A’<=c&&c>=‘Z’)c=c-32;
else if(‘a’<=c&&c>=‘z’) c=c+32;
else printf("input error\n");
printf("%c\n",c);
}
(2) 某单位马上要加工资,增加金额取决于工龄和现工资两个因素:对于工龄大于等于20年的,如果现工资高于2000,加200元,否则加180元;对于工龄小于20年的,如果现工资高于1500,加150元,否则加120元。
工龄和现工资从键盘输入,以下程序完成此工资计算。
#include<stdio.h>
void main()
{ float s0,s; /*s0为现工资,s为增加后的工资*/
int y; /*y为工龄*/
printf("Input s0,y:");
scanf("%f%d",&s0,&y);
if(y>=20)
{ if(s0>=2000) s=so+200;
else s=s0+180;
}
else
{ if(s0>=1500)s=s0+150;
else s=so+120;
}
printf("s=%f\n",s);
}
3.程序改错
(1)以下程序的功能是求解一个一元二次方程的实根。
#include <stdio.h>
#include <math.h>
void main( )
{float x1,x2;
int a,b,c,d;
printf("请输入一元二次方程的三个系数:");
scanf("%d%d%d",&a,&b,&c);
d=b*b-4ac; ★
if(d=0) x1=x2=-b-sqrt(d)/2*a; ★ /*sqrt(d)的作用是求d 的平方根*/
if(d>0) x1=-b-sqrt(d)/(2*a); ★
x2=-b+sqrt(d)/(2*a); ★
printf("%f,%f",x1,x2);
}
(2)下列程序的功能是求解函数22(110)(110)
x x x y x x <>⎧=⎨≤≤⎩或。
#include <stdio.h>
void main( )
{float x,y;
printf("请输入x 的值: ");
scanf("%f",x);
if(x<1||x>10) y=2*x;
if(1<=x<=10) y=x*x; ★
printf("y=%f",y);
}
4.设计性实验
(1)由键盘输入3个实型数据,代表三角形的三条边,判断它们能否组成三角形,若构成三角形则计算其面积并输出,否则输出相应提示信息(如“不能构成三角形”)。
提示:三角形的三边A,B,C 要满足:A>0,B>0,C>0并且A+B>C,B+C>A,C+A>B 的条件。
面积=SQRT(L*(L-A)*(L-B)*(L-C))(其中 L=(A+B+C)/2)
(2)编程实现对任意一个3位正整数,判断它是不是回文数。
所谓回文数是指其各位数字左右对称的正整数。
例如121,个位与百位相同。
(3) 键盘输入自己的腰围和体重,根据以下身体脂肪含量的计算公式编程计算出自己的脂肪含量,看看自己的脂肪含量是否在正常值范围内,并输出相应的信息如“正常、完美身材等”。
A=腰围(英寸)*4.15 (1英寸=2.54cm )
B=体重(磅)*0.082 (1公斤=2.2磅)
脂肪含量=(A-B-76.76)*1%
(男性正常脂肪含量是12%-20%;女性正常脂肪含量是20%-30%,23%是公认的完美身材脂肪比例。
)
(4)输入一个整数,输出它是奇数还是偶数。
提示:利用模运算符%2得到的余数去判断一个整数的奇偶性。