实验3选择结构程序设计

合集下载

实验三-选择结构程序设计

实验三-选择结构程序设计

实验三-选择结构程序设计实验三-选择结构程序设计实验三选择结构程序设计实验要求与目的1.掌握关系表达式和逻辑表达式的正确应用2.条件表达式的正确应用3. 掌握if语句,if-else语句,if语句的嵌套的编程方法4. 掌握switch的编程方法及执行特点5.掌握相关的算法6. 培养解决实际问题的能力实验指导结构化程序设计的三大结构:顺序结构、选择结构和循环结构。

计算机在执行过程时,根据条件选择所要执行的语句,称为选择结构,也称为分支结构。

在解决实际问题时,可能会因为其种条件的约束产生分支,可能是单分支结构、双分支结构和多分支结构等。

因此可选择相应的语句进行程序设计。

C语言程序设计实现单分支结构常采用,if语句;实现双分支结构常采用:if-else语句;实现多分支结构常采用:if-else嵌套语句或switch语句。

选择结构的程序设计除了选择适当的语句外,另一关键问题是条件的正确表示。

条件可以用表达式来描述,如关系表达式、逻辑表达式等。

录入下列程序,输入给定的测试数据,观察其程序执行结果。

程序文件名为:ex3_。

输入测试数据:23 56程序运行结果:max=56 #include void main() {int a,b,max;scanf(\ /*从键盘输入两整数*/ max=a;if(max void main() {char c;scanf(\ if('a' void main() {int m,n;printf(\ m & n:\ scanf(\if(m%n==0) /*判断m能否被n整除*/ printf(\ elseprintf(\}第一次运行程序,输入测试数据:21 7 程序运行结果:m=21,n=7 第二次运行程序。

输入测试数据:23 6 程序运行结果:5 小结:1.此题可扩展为,判断一个数是偶数还是奇数。

若m是偶数则只需考虑m能否被2整除,若能整除,则m是偶数,不能整除则m是奇数。

实 验 3 选择结构程序设计

实  验 3   选择结构程序设计

实验三选择结构程序设计一、实验目的1.熟悉JDK开发环境2.进一步了解Java Application的程序结构和开发过程3.掌握选择结构程序设计二、实验环境:JDK1.5三、实验内容编写程序,在主类中完成以下功能。

提示:输入数据可以用java.util.Scanner包中的Scanner(中文意思是扫描仪)类,用法如下例:import java.util.Scanner;//必须要先导入java.util.Scanner包public class Test {public static void main(String[] args) {Scanner sc = new Scanner(System.in);//创建Scanner类的对象scSystem.out.println("请输入一个整数:");//输出提示信息int i = sc.nextInt();//sc对象的nextInt()方法可得到整数System.out.println(i);}}这个例子就可以得到一个整型的数据,然后输出。

1.从键盘上输入3个整数分别存入变量a,b,c,输出其中的最大值。

2.输入一个整数,打印出它是奇数还是偶数。

3.计算如下分段函数值:具体要求如下:①用if语句实现分支。

自变量x与函数值均用单精度类型。

②自变量x由键盘输入,且输入前要有提示。

结果的输出采用以下形式:x=具体值,f(x)=具体值③请编写程序并上机调试。

分别输入x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0,运行该程序,写出运行结果。

4.输入一个年份,判断是不是闰年。

闰年的条件有两个:①能被4整除,但不能被100整除;②能被400整除。

5.由键盘输入3个整数,判断以此3个数为边长的三角形属于什么类型(不等边、等腰、等边或不能构成三角形)。

请编写程序并上机调试。

6.根据百分制分数决定成绩等级如下:①80分(含)以上为A级。

实验三选择结构程序设计

实验三选择结构程序设计

实验三选择结构程序设计程序设计是计算机科学中的核心技能之一,它涉及到使用编程语言来解决特定问题。

在程序设计中,选择结构是基本的控制流程之一,它允许程序根据不同的条件执行不同的代码块。

本实验旨在通过一系列练习,帮助学生理解和掌握选择结构程序设计的基本方法和技巧。

实验目的1. 理解选择结构在程序设计中的作用和重要性。

2. 掌握基本的选择结构语句,如`if`、`switch`等。

3. 学会使用选择结构解决实际问题。

4. 提高逻辑思维能力和编程实践能力。

实验环境- 编程软件:任意一种支持C/C++/Java等语言的IDE。

- 开发环境:Windows/Linux/MacOS均可。

实验内容1. 基础选择结构- 实验一:使用`if`语句实现一个简单的温度转换程序,将摄氏度转换为华氏度。

```c#include <stdio.h>int main() {float celsius, fahrenheit;printf("请输入摄氏度:");scanf("%f", &celsius);fahrenheit = (celsius * 9 / 5) + 32;printf("%.2f摄氏度等于%.2f华氏度\n", celsius, fahrenheit);return 0;}```- 实验二:使用`if...else`语句设计一个程序,根据输入的分数判断成绩等级。

```c#include <stdio.h>int main() {int score;printf("请输入成绩:");scanf("%d", &score);if (score >= 90) {printf("优秀\n");} else if (score >= 60) {printf("及格\n");} else {printf("不及格\n");}return 0;}```2. 多条件选择结构- 实验三:使用`switch`语句实现一个简单的菜单选择程序。

实验三 选择结构程序设计

实验三 选择结构程序设计

实验三选择结构程序设计实验目的:1.掌握C语言表示逻辑量的方法(以0代表“假”,非0代表“真”)。

2.学会正确使用关系运算符、逻辑运算符及关系表达式、逻辑表达式。

3.熟练掌握各种if语句和switch语句的语法结构和语句功能。

4.结合程序,掌握选择结构程序设计的一般方法,能够用多种方法编写同一程序。

实验内容:1.输入并调试以下程序:(1)#include<stdio.h>main(){int a,b;printf("Enter an integer:");scanf("%d",&a);b=1;if(++a<0) b=-1;else if (a==0) b=0;printf("a=%d,b=%d\n",a,b);}运行时,若从键盘上输入-1↙则程序运行结果是:(2)#include <stdio.h>main(){int a1=10,a2=20,a3=30;char ch;ch=getchar();switch(ch){case 'A': a1++;a2++;break;default: a3++;case 'B': a2++;a3++;}printf("%d,%d,%d\n",a1,a2,a3);}若从键盘上输入:BAC↙则程序运行结果是:2.程序填空(完善程序)。

以下程序的功能是:从键盘输入三个整型数据,对这三个数据进行从小到大排序,并输出排序后的数据。

请在下划线处填上适当的内容,以完成该程序的功能。

#include<stdio.h>main(){int x,y,z,i;scanf("%d,%d,%d",&x,&y,&z);if( ){ i=x; x=y; y=i; }if( ){ i=x; x=z; z=i; }if( ){ i=y; y=z; z=i; }printf("%d,%d,%d\n",x,y,z);}3.给出一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。

实验03 选择结构程序设计

实验03 选择结构程序设计

实验三选择结构程序设计一、实验目的1.熟悉关系表达式和逻辑表达式。

2.掌握逻辑IF、块IF、多支块IF、SELECT语句的语法规则和使用要求。

3.掌握嵌套选择结构和嵌套选择语句的使用要求和实现方法。

4.掌握选择结构概念和选择结构程序设计方法。

二、实验内容1. 教材第35页例3.2 编程求任意一元二次方程AX2+BX+C=0的根,其中A、B、C为任意实数。

分析:该问题根据A是否为0分为两种情况操作步骤:(1)启动Fortran PowerStation 4.0的Microsoft Developer Studio,进入Fortran PowerStation 4.0的集成开发环境。

(2)从File菜单中选择New菜单项,在弹出的对话框中选取Project Workspace建立一个项目工作间,在接着弹出的对话框的Type 选择Console Application, Name栏内填入项目名称(输入LAB03),Location内选择保存位置(自己的文件夹),单击Create按钮。

(3)在Standard工具栏中选择新建按钮,输入以上程序。

输入完毕,以EX301.F90为文件名保存源程序。

(4) 选择Insert菜单中的Files into Project, 向项目工作间内添加该文件。

(5)按Shift+F8,对项目进行编译和连接,如果有错误,根据提示修改错误;编译无错误,则会生成扩展名为.exe的文件。

(6) 按Ctrl+F5, 程序开始运行,这时输入:2 53 回车10 3 5 回车1 2 1 回车0 3 5 回车0 0 5 回车观察屏幕显示运行结果。

(7) 运行该程序,计算a=17.2 , b=38.3, c=12.1 时x1=…, x2=…2. 教材第35页例3.4 编写程序,输入年月,输出该月所对应的天数。

操作步骤:(1) 新建一个文件,输入自己编写的程序,以EX302.F90为文件名保存源程序。

python实验3选择结构程序设计

python实验3选择结构程序设计

实验3选择结构程序设计(续)【实验目的】1 •掌握分支条件语句的使用。

2. 掌握分支嵌套语句的使用。

【实验内容】1.通过In put ()函数任意输入三条边长,经过简单的计算后,判断三条边长能否构成三角形,并确定是类型的三角形,如(等边,等腰,一般三角形)。

a=in put ("Please in put the len gth of a:" )b=in put ("Please in put the len gth of b:" )c=in put ("Please in put the len gth of c:" )if a+b>c and a+c>b and b+c>a:if a==b==c:print "This is an equilateral tria ngle."if a==b or a==c or b==c:print "This is an isosceles tria ngle."if a!=b!=c:print "This is a scale ne tria ngle."else :print "These len gths can n ot form a tria ngle."2.密码登录程序。

要求:建立一个登录窗口,要求输入帐号和密码。

设定用户名为” zhangshan”,密码为“ Python123” ;若用户名正确,密码正确,则显示“ Zhangshan 先生,欢迎你!” ;如果用户名错误,则显示“用户名错误,请重新输入!” ;若密码不正确,显示“对不起,密码错误,无法登录!”。

x=raw_input ("User:")y=raw_input ("Password:")if x=="zhangshan" and y=="Python123":print "Welcome,!"if x=="zhangshan" and y!= "Python123":print "Wrong right to log-i n."while x!= "zhangshan" and y=="Python123":x= raw_input ("Wrong user's enter again:" )if x=="zhangshan":print "Zhangshan先生,欢迎你!"3. 设有三个变量a,b,c,分别对三个变量赋值,并对三个变量进行排序。

实验三(选择结构程序设计)-

实验三(选择结构程序设计)-

实验三(选择结构程序设计)-
实验3选择结构编程
3.1实验要求和目的
1。

掌握关系表达式和逻辑表达式的正确应用。

条件表达式
3的正确应用。

掌握if语句、if-else语句、if语句的嵌套编程方法4。

掌握交换机
5的编程方法和执行特点。

掌握相关算法(大写字母和小写字母的转换、奇数和偶数的判断、整数除法、分段函数的求解、分数的转换等)。

) 6。

培养解决实际问题的能力
3.2实验指南
结构化程序设计三种结构:序列结构、选择结构和循环结构当计算机执行该过程时,它根据条件选择要执行的语句,这称为选择结构,也称为分支结构。

在解决实际问题时,由于各种条件的限制,如单分支结构、双分支结构和多分支结构等,可能会产生分支。

因此,可以选择相应的语句进行编程。

C语言编程实现单个分支结构是常用的if语句;If-else语句通常用于实现双分支结构。

If-else嵌套语句或switch语句通常用于实现多分支结构在
选择结构的编程中,除了选择适当的语句外,另一个关键问题是条件的正确表示。

条件可以用表达式来描述,如关系表达式、逻辑表达式等。

[3.1]输入以下程序,输入给定的测试数据,并观察程序执行结
果程序文件名为:ex3_1.c输入测试数据:23 56 程序运行结果:max = 56 # include vid main(){ inta,b,max;
scanf(\ /*从键盘输入两个整数*/max = a;if(最大值。

实验3 选择结构程序设计

实验3 选择结构程序设计

实验3 选择结构程序设计一、实验目的1.【重点】掌握算法描述方法(重点掌握传统流程图)、准备测试数据以及实际调试程序的独立编程能力。

2.【重点】掌握C语言的基本控制结构和基本控制语句的使用方法。

3.【重点】掌握用C语言的基本控制语句进行选择结构程序设计的方法。

二、实验内容1.算算账成都出租车2010年9月10日执行新价格,捷达车运价将调整为8元起步,速腾9元起步,两2.身高预测每个做父母的都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后的身高的因素包括遗传、饮食习惯与体育锻炼等。

小孩成人后的身高与其父母的身高和自身的性别密切相关。

设faHeight为其父身高,moHeight为其母身高,身高预测公式为男性成人时身高=(faHeight + moHeight)×0.54cm女性成人时身高=(faHeight×0.923 + moHeight)/2cm此外,如果喜爱体育锻炼,那么可增加身高2%;如果有良好的卫生饮食习惯,那么可增加身高1.5%。

编写程序LAB3_2.c:从键盘输入用户的性别(用字符型变量sex存储,输入字符F表示女性,输入字符M表示男性)、父母身高(用实型变量存储,faHeight为其父身高,moHeight为其母身高)、是否喜爱体育锻炼(用字符型变量sports存储,输入字符Y表示喜爱,输入字符N表示不喜爱)、是否有良好的饮食习惯等条件(用字符型变量diet存储,输入字符Y表示良好,输入字符N表示不好),利用给定公式和身高预测方法对身高进行预测。

【要求】程序要有较好的错误处理能力。

例如,当输入父亲或母亲身高小于0时,屏幕应有如下提示:当输入字符为其他字母时,屏幕也应有相应提示。

例如:所有输入都符合要求的输出界面如下图所示:实验报告《C语言程序设计》实验三班级学号姓名一、实验目的1.【重点】掌握算法描述方法(重点掌握传统流程图)、准备测试数据以及实际调试程序的独立编程能力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《C语言程序设计》实验报告----------------------------------------------------------------------------------------------实验3选择结构程序设计一.实验目的1.了解C语言表示逻辑量的方法(以0代表“假”,以非0代表“真”)。

2.学会正确使用逻辑运算符和逻辑表达式3.熟练掌握if语句和switch语句;4.结合程序掌握一些简单的算法。

5.学习调试程序二.实验内容和步骤1.基础知识和概念(1)分析下面程序,掌握关系表达式的运算规则。

#include <stdio.h>int main(){char ch='w';int a=2,b=3,c=1,d,x=10;printf("%d",a>b==c);printf("%d",d=a>b);printf("%d",ch>'a'+1);printf("%d",d=a+b>c);printf("%d",3<=x<=5);printf("%d\n",b-1==a!=c);return 0;}总结与反思:1.运用关系运算符比较的结果,真为1,假为0;2.注意掌握运算符的优先顺序;3. (3<=x)<=5结果为真=1,(1==1)!=1结果为假=0(2)分析运行下面的程序,掌握逻辑表达式的运算规则。

#include <stdio.h>int main(){char ch='w';int a=2,b=0,c=0;float x=3.0;printf("%d",a&&b);printf("%d",a||b&&c);printf("%d",!a&&b);printf("%d",a||3+10&&2);printf("%d",!(x==2));printf("%d",!x==2);printf("%d\n",ch||b);return 0;}总结与反思:1.运用逻辑运算符比较的结果,真为1,假为0;2.逻辑与&&优先级11大于逻辑或||优先级12(3)分析运行下面的程序,掌握关系及逻辑混合表达式的运算规则。

#include <stdio.h>int main(){int a=3,b=5,c=8;if(a++<3&&c--!=0) b=b+1;printf("a=%d\tb=%d\tc=%d\n",a,b,c);return 0;}总结与反思:该程序中的条件判断表达式“a++<3&&c--!0”是一个逻辑表达式,关系表达式“a++<3”的值为假,因此后一部分“c--!=0”不再计算。

2.程序改错和填空(1)给定程序c3-4.c的功能是,对于以下函数:y=x(x<1)y=2x-1(1<=x<10)y=3x-11(x>=10)用scanf函数输入x的值,求y的值。

#include <stdio.h>int main(){int x,y;scanf("%d",&x);if (x<1) y=x;else if (1<=x&&x<10) y=2*x-1;else y=3*x-11;printf("y=%d\n",y);return 0;}反思与总结:1.在紧跟着if选择语句的条件表达式的圆括号之后没有分号;2.定义的x是int型,键入的x=0.5时,y就会向零取整等于0,而不是0.5!(2)以下给定程序c3-5.c的功能是输入一个年份,判断该年是否为闰年。

#include <stdio.h>int main(){int year,leap;printf("Please enter a year:");scanf("%d",&year);if (year%4!=0) leap=0;else if ((year%100)!=0) leap=1;else if ((year%400)!=0) leap=0;else leap=1;if(leap)printf("%d is a leap year\n",year);elseprintf("%d is not a leap year\n",year);return 0;}总结与反思:1.错误不一定只在语法结构上,也可能在逻辑思维上;2.能被4整除但不能被100整除的year或者能被400整除的year是闰年。

(3)以下给定程序c3-6.c的功能是实现两个浮点数的四则运算。

#include <stdio.h>main(){float d1,d2;char op;printf("输入d1 op d2");scanf("%f%c%f",&d1,&op,&d2);switch(op){float temp;case '+' :temp=d1+d2;printf("%f %c %f=%f\n",d1,op,d2,temp);break;case '-' :temp=d1-d2;printf("%f %c %f=%f\n",d1,op,d2,temp);break;case '*' :temp=d1*d2;printf("%f %c %f=%f\n",d1,op,d2,temp);break;case '/' :temp=d1/d2;printf("%f %c %f=%f\n",d1,op,d2,temp);break;default:printf("错误!\n");}return 0;}总结与反思:在本题中op代表了四则运算运算符号,temp代表了浮点数结果。

3.程序设计题(1)从键盘上输入某学生的考试成绩,要求输出成绩等级A、B、C、D、E。

学生的成绩可分成5个等级,90~100分为A级,80~89分为B级,70~79分为C级,60~69分为D级,0~59分为E级,要求在输出负数时,给出错误提示。

#include<stdio.h>int main(){int x;scanf("%d",&x);if(x>100||x<0) printf("输入数据错\n");elseswitch(x/10)如果漏写了else,运行结果就变成:{case 6:printf("D\n");break;case 7:printf("C\n");break;case 8:printf("B\n");break;case 9:case 10:printf("A\n");break;default:printf("E\n");break; 正确的运行结果应为:}return 0;}总结与反思:1.先判断数据是否合理,再switch,正好解决了100与101的区别问题。

2.case后面的表达式一定是常量表达式,其值的类型一般为整型或可自动转为整型的类型(例如字符型)(2)根据输入的三角形的三条边判断是否能组成三角形,若可以则输出它的面积和三角形的类型。

#include<stdio.h>#include<math.h>int main(){float a,b,c,p,s;scanf("%f,%f,%f",&a,&b,&c);p=0.5*(a+b+c);s=sqrt(p*(p-a)*(p-b)*(p-c));if(a+b<=c||a+c<=b||b+c<=a) printf("不能构成三角形\n");else if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a) printf("是直角三角形\ns=%f\n",s);else if(a==c&&b==c) printf("是等边三角形\ns=%f\n",s);else if(a==b||a==c||b==c) printf("是等腰三角形\ns=%f\n",s);else printf("是一般三角形\ns=%f\n",s);return 0;}总结与反思:1.\n的位置是放在格式说明部分的引号里面 2.运用数学公式别忘了#include<math.h>3.第一步要把所有需要用到的变量先全部定义出来,才能进行下一步(比如scanf)(3)输入某职工的工资,根据不同档次扣除工资所得税,然后计算实发工资。

#include<stdio.h>int main(){float fs,rs;scanf("%f",&fs);if(fs<850) rs=fs;else if(fs<=1500) rs=fs-0.01*fs;else if(fs<=2000) rs=fs-0.015*fs;else rs=fs-0.02*fs;printf("rs=%.2f\n",rs);return 0;}总结与反思:1.用scanf输入,&总是忘记!2.在界定if···else语句后的复合语句时别忘了加花括号{;}(4)对于一个不多于5位的正整数,1.求出它是几位数;2.分别打印出每一位数字;3.按逆序打印出各位数字。

#include <stdio.h>int main(){int a,b,c,d,e,n;printf("请输入一个五位数以下的正整数\n");scanf("%d",&n);a=n/10000;b=(n-a*10000)/1000;c=(n-a*10000-b*1000)/100;d=(n-a*10000-b*1000-c*100)/10;e=(n-a*10000-b*1000-c*100-d*10);if (n<0||n>99999) printf("输入错误\n");else if (9999<n) printf("这是五位数\n%d%d%d%d%d\n",e,d,c,b,a);else if (999<n) printf("这是四位数\n%d%d%d%d\n",e,d,c,b);else if (99<n) printf("这是三位数\n%d%d%d\n",e,d,c);else if (9<n) printf("这是两位数\n%d%d\n",e,d);else printf("这是一位数\n%d\n",e);return 0;}总结与反思:注意取各个位数的方法。

相关文档
最新文档