文档库 最新最全的文档下载
当前位置:文档库 › 选择结构程序设计实验报告

选择结构程序设计实验报告

选择结构程序设计实验报告
选择结构程序设计实验报告

实验二 选择结构程序设计

实验二选择结构程序设计 一:目的要求 1.熟悉用关系运行与逻辑运行符的应用; 2.掌握if语句与switch语句的使用; 3.上机前按实验要求预习编写出完整的程序,才允许上机。 二:实验内容与步骤 1.在书店买书,以100本为限。如果买 1 本不打折扣 ;买2本打折10%; 买 3本折扣为 15 %,买3本以上折扣为 20 %。设书本数为 x,单价为 20.00元。 请使用else if多分支结构或if嵌套结构设计实现该算法的C程序。 2.从键盘上输入一个百分制成绩score,按下列原则输出其等级:score≥ 90,等级为A;80≤score<90,等级为B;70≤score<80,等级为C;60≤score<70,等级为D;score<60,等级为E。 请使用switch 语句实现上述功能。 (提示:将成绩整除10,把score转变为处于1~10之间的整数,从而转化成switch语句中的case标号) 三:选做实验 实验指导书56页第二章选择结构的任意实验

参考答案: 1.实验1 #include main() { int number; float cost; printf(“please input the number of books (1~100): ”); scanf(“%d\n”, &number); cost=20.0*number; if(number==1) cost*=1; else if(number==2) cost*=0.9; else if(number==3) cost*=0.85; else cost*=0.8; if(cost<=0 || number>100) printf(“illegal input!”); else printf(“the total cost is %d.\n”, cost); } 2.实验2: #include main() { int score, grade; printf(“Input a score(0~100): ”); scanf(“%d”, &score); grade = score/10; /*将成绩整除10,转化成switch语句中的case标号*/ switch (grade) { case 10: case 9: printf(“grade=A\n”); break; case 8: printf("grade=B\n"); break; case 7: printf("grade=C\n"); break; case 6: printf("grade=D\n"); break; case 5: case 4: case 3: case 2: case 1: case 0: printf(“grade=E\n”); break; default : printf(“The score is out of range!\n”); } }

实验二选择结构程序设计实验报告

实验三:C程序的选择结构 一、实验目的和要求 (1)了解 C 语言表示逻辑量的方法(以0 代表“假”,以非0 代表“真”)。 (2)学会正确使用逻辑运算符和逻辑表达式。 (3)熟练掌握if 语句的使用(包括if 语句的嵌套)。 (4)熟练掌握多分支选择语句—switch 语句。 (5)结合程序掌握一些简单的算法。 (6)进一步学习调试程序的方法。 二、、实验软硬件配置 1.硬件配置 电脑 2.软件配置 Windows xp Visual C++6.0 三、实验内容及过程描述 实验步骤: ①进入Visual C++ 6.0 集成环境。 ②输入自己编好的程序。 ③检查一遍已输入的程序是否有错(包括输入时输错的和编程中的错误),如发现有错,及时 改正。 ④进行编译和连接。如果在编译和连接过程中发现错误,频幕上会出现“报错信息”,根据提 示找到出错位置和原因,加以改正。再进行编译,如此反复直到不出错为止。 ⑤运行程序并分析运行结果是否合理。在运行是要注意当输入不同的数据时所得结果是否正 确,应运行多次,分别检查在不同情况下结果是否正确。 实验内容: 本实验要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。 x x 1 (1)有一函数:y 2x 1 1 x 10 3x 11 x 10 写程序,输入x 的值,输出y 相应的值。用scanf 函数输入x 的值,求y 的值。程序如下:#include int main() {float x,y; int i; while(i<1000) { printf(" 请输入x 的值:"); scanf("%f",&x); if(x<1) y=x; else if(1<=x&&x<10)

选择结构程序设计

第四章择路而行---选择结构程序设计 第一节路口诀择----条件语句 一、教学目标 1、掌握选择结构程序中常用的Qbasic语句。 2、掌握选择结构程序设计方法。 3、能利用选择结构程序设计解决简单的实际问题。 二、教学重点: 1.选择结构的语句及功能 2.选择结构中程序设计方法。 三、教学方法:讲授法,对比法,分组讨论法。 四、教学时间:2课时 五、教学教程: (一)引入新课:前面我们学习了顺序结构程序设计,利用顺序结构只能设计一些较简单的程序,如果要处理复杂的问题,就需要采用另外两种基本结构:选择结构和循环结构。选择结构,是一种常用的主要基本结构,是计算机科学用来描述自然界和社会生活中分支现象的重要手段。其特性是:无论分支多寡,必择其一;纵然分支众多,仅选其一。 (二)讲述新课 l 单行条件选择语句IF 1、单行结构条件语句IF…THEN…ELSE 格式:IF <条件> THEN <语句1> [ELSE <语句2>] 功能:最简单的条件选择语句,用来进行条件判断,使语句有条件的执行。 说明: 1)当<条件>为真(非零数)时,则执行<语句1>。 2)ELSE语句可以省略。 3)当<条件>为假(零)时,而且语句中有ELSE语句则执行<语句2>。 4)IF、THEN、ELSE必须在同一行上。 2、示例A、输入x的值,计算y的值。 REM 程序名为:eg1.bas INPUT “请输入x的值:”,x IF x>=0 THEN Y=1+X ELSE Y=1-2*X PRINT "Y=";Y END 例:求一元二次方程Ax2+Bx+C=0(A<>0)的实数根。 分析:写写出程序的流程图,参考流程图来写程序。 程序清单如下: INPUT A,B,C D=B*B-4*A*C IF D<0 THEN then X1=(-B+SQR(D))/(2*A) X2=(-B-SQR(D))/(2*A) PRINT “X1=”;X1, “X2=”;X2 ELSE PRINT “此方程无实根” END

实验二选择结构程序设计 实验报告

C语言程序设计与问题求解实验报告 实验二选择结构程序设计 一、实验目的 1.正确使用关系表达式和逻辑表达式表示条件; 2.掌握选择语句if-else和switch语句的使用方法; 3.掌握分支结构程序设计。 二、实验内容 1. 选择结构编程示例 year是闰年,即year能被4整除但不能被100整除,或year能被400整除。从键盘读入一个年份,然后输出其是否为闰年。具体代码如下: #include int main() { int year; printf("请输入年份:"); scanf("%d",&year); if ((year%4==0 && year%100!=0)||(year%400==0)) { printf("闰年!"); } else { printf("不是闰年!"); } return 0; } 运行结果:

2.分析并修改下面程序错误,使之能够正常运行。 错误代码一:下面的这个程序是当a和b的值相等的情况下输出“a和b相等”,而a与b的值不相等的话无输出。 #include void main() { int a=5,b=6; /* 或int a=5, b=5 ;*/ if (a==b); { printf("a和b相等\n"); } } 错误点: if (a==b)后有了分号“;”表示这条语句已执行完毕,所以无论a、b是否相等都会输出"a和b相等"。 修改后: #include void main() { int a=5,b=6; /* 或int a=5, b=5 ;*/ if (a==b) printf("a和b相等\n"); } 错误的代码二:下面的这个程序是当a和b的值相等的情况下a与b的值同时增加1,而a与b的值不相等的话,二者的值保持不变。 #include void main() { int a=5; /* 或int a=6*/ int b=6; if (a==b) a++; b++;

实验四-答案--选择结构程序设计讲课讲稿

实验四-答案--选择结构程序设计

实验四选择结构程序设计答案 实验时间:年月日【实验步骤】 一、程序调试练习 1、写出下列程序的运行结果: (1)ex4_1.c #include void main() { char ch; printf("input a character:"); ch=getchar(); if(ch>='A' && ch<='Z') ch=ch+32; printf("%c\n",ch); } 具体要求: ①从键盘上输入a,分析程序运行的结果。 ②从键盘上输入A,分析程序运行的结果。 ③从键盘上输入5,分析程序运行的结果。 程序运行结果: ①a ②a ③5 (2)ex4_2.c #include void main() { int x,y,z; printf("input x,y,z"); scanf("%d,%d,%d",&x,&y,&z); if(x

①从键盘上给x、y、z分别输入2,-1,2,分析程序运行的结果。 ②从键盘上给x、y、z分别输入3,5,2,分析程序运行的结果。 ③从键盘上给x、y、z分别输入-5,-3,2,分析程序运行的结果。 程序运行结果: ①z=2 ②z=3 ③z=0 (3)ex4_3.c #include main() { int x=1,a=0,b=0; switch(x) { case 0:b++; case 1:a++; case 2:a++;b++; } printf("a=%d,b=%d\n",a,b); } 程序运行结果: a=2,b=1 (4)ex4_4.c #include void main() { int x=1,y=0,a=0,b=0; switch(x) { case 1: switch(y) { case 0: a++; break; case 1: b++; break; } case 2: a++; b++; break; case 3: a++; b++;

选择结构程序设计练习题

选择结构程序设计练习题 1.逻辑运算符两侧运算对象的数据类型( ) A.只能是0和1 B.只能是0或非0正数 C.只能是整型或字符型数据 D.可以是任何类型的数据 2.下列运算符中优先级最高的是( ) A.< B.+ C.&& D.!= 3.能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假"的表达式是( ) A.(x>=1)&&(x<=10)&&(x>=200)&&(x<=210) B.(x>=1)||(x<=10)||(x>=200)||(x<=210) C.(x>=1)&&(x<=10)||(x>=200)&&(x<=210) D.(x>=1)||(x<=10)&&(x>=200)||(x<=210)

4.表示图中坐标轴上阴影部分的正确表达式是( ) A.(x<=a)&&(x>=b)&&(x<=c) B.(x<=a)||(b<=x<=c) C.(x<=a)||(x>=b)&&(x<=c) D.(x<=a)&&(b<=x<=c 5.判断char型量ch是否为大写字母的正确表达式是() A.‘A’<=ch<=‘Z’ B.(ch>=‘A’)&(ch<=‘Z’) C.(ch>=‘A’)&&(ch<=‘Z’) D.(‘A’<=ch)AND(‘Z’>=ch) 6.设x,y,z都是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是 () A.‘x’&&‘y’ B.x<=y C.x||y+z&&!y D.!(x

7.已知x=43,ch=‘A’,y=0;则表达式(x>=y&&ch<‘B’&&!y)的值是() A.0 B.语法错误 C.1 D.“假” 8.若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”,则以下不能满足要求的表达式是() A.A%2==1 B.!(A%2==0) C.!(A%2) D.A%2 9.设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后的值为() A.1 B.2 C.3 D.4 10.下列运算符中优先级最低的是( )优先级最高的是( ) A.? B.&& C.+ D.!=

实验二选择结构程序设计实验报告

实验二选择结构程序设计 一、实验目的和要求 1.掌握关系表达式和逻辑表达式的使用。 2.熟悉选择结构程序设计。 3.熟练使用if语句进行程序设计。 4.使用switch语句实现多分支选择结构 二、实验设备 PC 机Visual C++6.0 三、实验内容 (一)实验准备 1.从程序流程的角度来看,程序可以分为三种基本结构,即顺序结构、分支(选择)结构、循环 结构。 2.lf-else 语句: 一般形式为:if (表达式) 语句1 ; else 语句2 ; 该语句用于实现分支结构,根据表达式的值选择语句1或语句2中的一条执行。首先求解表达式,如果表达式的值为“真”,则执行语句1;如果表达式的值为“假”,则执行语句 2. 2.switch 语句 switch语句可以处理多分支选择问题,根据其中break语句的使用方法,一般分为三种情况。 (二)实验项目 1.计算a+|b| #in clude int main (void) { int a,b, z; prin tf("Please en ter a,b:\n"); sca nf("%d,%d",&a,&b); if (b>=0)t b=b; prin tf("%d+%d=%d\n",a,b,z); return 0 ; } 2判断一个整数是否可以被3和5整除

#in clude int main (void) { int a ; printf("Please enter a:\n"); scanf("%d",&a); if (a%3==0){ printf("a 可以被 3 整除:\n"); } else{ if (a%5==0){ printf("a 可以被 5 整除:\n"); } else { printf("a 不可以被5整除,也不可以被3整除:\n"); } } 3.从键盘输入一个字符型数据,若输入一个数字字符( '0'-'9' ),则将其转换成相应的整数显示出来;若输入其它字符,则显示出错信息。 #include int main(void) { int a ; printf("please enter a char:\n"); scanf("%d",&a); if((0<=a)&&(a<=9)) { printf("This char is %d:\n",a); } else { printf(" 这个字符不是个整数:\n"); } return 0 ; } 4.编写一个程序,其功能为:从键盘输入三个数x、y、z ,判断x+y=z 是否成立,若成立输出 “x+y=z” 的信息,否则输出“ x+y!=z ”的信息。 #include int main(void) { int x,y,z; printf (" 请输入x,y,z:\n"); scanf ("%d,%d,%d",&x,&y,&z); if (x+y==z) { printf ("x+y=z\n"); } else { printf ("x+y!=z\n"); } return 0; } 5.编写一个程序,其功能为:输入三个整数,输出最大数和最小数#include int main(void) { int a,b,c,x,y; printf (" 请输入三个数字:\n"); scanf ("%d,%d,%d",&a,&b,&c);

C语言选择结构程序设计编程题.doc

实验2 选择结构程序设计 一.实验目的: 1.掌握选择控制语句的使用方法; 2.了解C程序语句的执行过程。 二.实验内容: 1.编写程序:输入一个整数,判断该数的奇偶性。(输出相应的标志even-偶数odd-奇数,请记住这两个单词)。 2.从键盘输入的正整数,判断是否能被5和7同时整除,若是,则输出Yes;否则输出No。 3.输入一个字符,如果是大写字母改变为小写字母;如果是小写字母,则把它变为大写字母;若是其它字符则不变。 4.编写程序,对于给定的一个百分比制成绩,输出相应的五分制成绩。设:90分以上为‘A’,80~89分为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为’E’(用if…else…与switch 语句两种方法实现)。 5. 企业发放的奖金根据利润提成。利润(i)低于或等于10万元时,奖金可提成10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万元到40万元之间时,高于20万元的部分,可提5%;40万元到60万元之间时,高于40万元的部分,可提成3%;60万元到100万元之间时,高于60万元的部分,可提成1.5%;高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润i,求发放奖金总数。 6. 输入某年某月某日,判断这一天是这一年的第几天。 7. 输入一个字符,请判断是字母、数字还是特殊字符。 8. 身高预测: 男性成人身高=(父亲身高+母亲身高)*0.54cm 女性成人身高=(父亲身高*0.923+母亲身高)/2cm 如果喜爱体育锻炼,那么身高可增加2%;如果有良好的饮食习惯,可增加身高1.5%。键盘输入性别、父母身高、是否爱好体育锻炼、是否有良好的饮食习惯,利用给定身高预测方法对你的身高进行预测。 9. 要求用switch语句编程设计一个简单的计算器程序。要求根据用户从键盘输入的表达式。 操作数1 运算符op 操作数2 计算表达式的值。指定的算术运算符为加(+)、减(-)、乘(*)、除(/)。 在此基础上,增加如下要求: (1)如果要求程序能进行浮点数运算,程序应该如何修改?如何比较实型变量和常数0是否相等? (2)如果要求输入的算术表达式中的操作数和运算符之间可以加入任意多个空格符,那么程序如何修改? (3)如果要求连续多次算术运算,每次运算结束后,程序都给出提示: Do you want to continue(Y/N y/n)? 如果用户输入Y或y时,程序继续进行其它算术运算,否则程序才退出运行状态。那么程序如何进行修改?

C语言 选择结构程序设计练习题

第四章选择结构程序设计 一、填空 1.在C语言中,表示逻辑“真”值用_________。 2.得到整型变量a的十位数字的表达式为_________。 3.表达式:(6>5>4)+(float)(3/2)的值是_________。 4.表达式:a=3,a-1‖--a,2*a的值是_________。(a是整型变量) 5.表达式:(a=2.5-2.0)+(int)2.0/3的值是_________。(a是整型变量)6.C语言编译系统在给出逻辑运算结果时,以数值_________代表“真”,以 _________代表“假”;但在判断一个量是否为“真”时,以_________代表“假”,以_________代表真。 7.当m=2,n=1,a=1,b=2,c=3时,执行完d=(m=a!=b)&&(n=b>c)后,n的值为_________,m的值为_________。 8.若有int x,y,z;且x=3,y=-4,z=5,则表达式:!(x>y)+(y!=z)||(x+y)&&(y-z)的值为_________。 二、编程: 1.企业发放的奖金根据利润提成。利润(i)低于或等于10万元时,奖金可提10%; 利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润i,求应发放奖金总数? 2.输入三个整数x,y,z,请把这三个数由小到大输出。 3.输入某年某月某日,判断这一天是这一年的第几天? 4.本程序演示从键盘输入x的值,计算并打印下列分段函数的值。 y=0(x<60) y=1(60<=x<70) y=2(70<=x<80) y=3(80<=x<90)

C语言程序设计 实验报告2--选择结构

福建农林大学金山学院实验报告 系(教研室):专业:年级: 实验课程:C语言程序设计姓名:学号:实验室号: 计算机号:实验时间:指导教师签字:成绩: 实验2:选择结构程序设计 一、实验目的和要求 1.了解C语言表示逻辑量的方法 2.正确使用逻辑运算符和逻辑表达式,掌握if语句和switch语句 3.结合程序掌握一些简单算法,并学习调试程序 二、实验内容和原理 1.有一函数: x2+2x-6(x<0,x≠-3) y = x2-5x+6(0≤x<10,x≠2,x≠3) x2-x-15(x=-3,x=2,x=3,x≧10) 写一程序,用scanf函数输入x,输出y值。 2.分别用if语句和switch语句编程实现:给出一个百分制成绩,要求输出成绩等级A、 B、C、D、E。90分以上为A,80~89分为B,70~79分为C,60~69分为D,60 分以下为E。 3.输入4个整数,要求按由小到大顺序输出。 4.有三个整数a,b,c,由键盘输入,输出其中最大的数,请编写程序。(用两种方法实 现) 5.输入出租车类型和里程,计算打车的费用。计算方式为:3公里以内10元;3公里 以上0车型每公里1.5元,1车型每公里2元。 三、实验环境 1. 硬件:PC机; 2. 软件:Windows操作系统、Visual C++ 6.0,DEV-CPP 。 四、算法描述及实验步骤 1、先用scanf函数输入,再用if语句的嵌套来计算该方程。 2、(1)用switch语句时,对输入的数据进行检查,在用score/10将其强制转换得到一个

整型。最后用switch语句执行使其得到一个字符型字母。 (2)用if语句分成各个分数段将符合要求的输出对应的字符。 3、用if语句依次比较的方法排出其大小顺序。 4、(1)先用scanf函数输入,再用if语句的嵌套比较其大小顺序。 (2)带入一个中间数用条件表达式比较其大小顺序。 5、在标题写入条件,3公里以下直接输出。3公里以上判断车型,再带入相应车型计算车 费。 五、调试过程 第2题中,在做if语句时模仿了switch语句,造成输出没有结果,应该在每个if后都要加上输出printf。 第5题中,类型你是整型,应该用int不是float。在有个大前提下,用while语句会出现一些错误,可改为用if语句,或在第一次输出时标出备注。 六、实验结果 1、 2、(1)switch语句:

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

实验3 选择结构程序设计(续) 【实验目的】 1.掌握分支条件语句的使用。 2.掌握分支嵌套语句的使用。 【实验内容】 1.通过Input()函数任意输入三条边长,经过简单的计算后,判断三条边长能否构成三角 形,并确定是类型的三角形,如(等边,等腰,一般三角形)。 a=input("Please input the length of a:") b=input("Please input the length of b:") c=input("Please input the length of c:") if a+b>c and a+c>b and b+c>a: if a==b==c: print "This is an equilateral triangle." if a==b or a==c or b==c: print "This is an isosceles triangle." if a!=b!=c: print "This is a scalene triangle." else: print "These lengths can not form a triangle." 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-in." while x!="zhangshan" and y=="Python123": x=raw_input("Wrong user's enter again:") if x=="zhangshan": print "Zhangshan先生,欢迎你!"

选择结构程序设计实验报告

嘉应学院计算机学院 实验报告 课程名称程序设计基础实验名称实验地点 指导老师实验时间提交时间 班级姓名座号 一、实验目的和要求 (1)了解C语言表示逻辑量的方法(以0代表“假”,以非0代表“真”)。 (2)学会正确使用逻辑运算符和逻辑表达式。 (3)熟练掌握if语句的使用(包括if语句的嵌套)。 (4)熟练掌握多分支选择语句—switch语句。 (5)结合程序掌握一些简单的算法。 (6)进一步学习调试程序的方法。 二、实验环境和方法 实验方法: (一)综合运用课本所学的知识,用不同的算法实现在不同的程序功能。 (二)结合指导老师的指导,解决程序中的问题,正确解决实际中存在的异常情况,逐步改善功能。 (三)根据实验内容,编译程序。 实验环境:Windows xp Visual C++6.0 三、实验内容及过程描述 实验步骤: ①进入Visual C++ 6.0集成环境。 ②输入自己编好的程序。 ③检查一遍已输入的程序是否有错(包括输入时输错的和编程中的错误),如发现有错,及时 改正。 ④进行编译和连接。如果在编译和连接过程中发现错误,频幕上会出现“报错信息”,根据提 示找到出错位置和原因,加以改正。再进行编译,如此反复直到不出错为止。 ⑤运行程序并分析运行结果是否合理。在运行是要注意当输入不同的数据时所得结果是否正 确,应运行多次,分别检查在不同情况下结果是否正确。 实验内容: 本实验要求事先编好解决下面问题的程序,然后上机输入程序并调试运行程序。 (1)有一函数: () () ()? ? ? ? ? ≥ - < ≤ - < = 10 x 11 3 10 x 1 1 2 1 x x x x y

五选择结构编程练习

实验五选择结构编程练习 题目: 1身高预测 每个做父母的都关心自己孩子成人后的身高,据有关生理卫生知识与数理统计分析表明,影响小孩成人后身高的因素有遗传、饮食习惯与坚持体育锻炼等。小孩成人后的身高与其父母的身高和自身的性别密切相关。 设faHeight为其父身高,moHeight为其母身高,身高预测公式为: 男性成人时身高= (faHeight + moHeight) * 0.54(cm) 女性成人时身高= (faHeight * 0.923 + moHeight) / 2(cm) 此外,如果喜爱体育锻炼,那么可增加身高2%,如果有良好的卫生饮食习惯,那么可增加身高1.5%。 编程从键盘输入你的性别(用字符型变量sex存储,输入字符F表示女性,输入字符M 表示男性)、父母身高(用实型变量存储,faHeight为其父身高,moHeight为其母身高)、是否喜爱体育锻炼(用字符型变量sports存储,输入字符Y表示喜爱,输入字符N表示不喜爱)、是否有良好的饮食习惯等条件(用字符型变量diet存储,输入字符Y表示喜爱,输入字符N表示不喜爱),利用给定公式和身高预测方法对你的身高进行预测。 实验授课提示: 通过这个实际例子熟悉选择结构程序设计的方法,以及if语句,进一步熟悉TC集成环境的程序编辑、编译、链接、运行和调试方法。 2 简单的计算器程序 要求用switch语句编程设计一个简单的计算器程序。要求根据用户从键盘输入的表达式: 操作数1 运算符op 操作数2 计算表达式的值,指定的算术运算符为加(+)、减(-)、乘(*)、除(/)。 本实验程序是在例4.8基础上,增加如下要求: (1)如果要求程序能进行浮点数的算术运算,程序应该如何修改?如何比较实型变量data2和常数0是否相等? (2)如果要求输入的算术表达式中的操作数和运算符之间可以加入任意多空白符,那么程序如何修改? (3)(选作题)如果要求连续做多次算术运算,每次运算结束后,程序都给出提示:Do you want to continue(Y/N or y/n)? 如果用户输入Y或y时,程序继续进行其它算术运算,否则程序才退出运行状态。那么,程序如何修改? 实验授课提示: 通过这个实际例子熟悉选择结构程序设计的方法,以及switch语句,进一步熟悉TC集成环境的程序编辑、编译、链接、运行和调试方法。 对于第(3)题,可利用%1s格式符输入用户回答,利用do-while语句实现反复运算直到用户键入N或n。

习题五选择结构程序设计习题.doc

百度文库- 让每个人平等地提升自我 习题五选择结构程序设计习题 班级:学号:姓名: 1.单项选择题 (1)选择结构程序设计的特点是 _______。 A. 自上向下逐个执行 B.根据判断条件,选择其中一个分支执行 C. 反复执行某些程序代码 D.以上都是 (2)假定所有变量均已正确定义,下列程序段运行后x 的值是 ______。 a=b=c=0,x=35; if(!a) x--; else if(b); if(c)x=3; else x=4; A.34 B.4 C.35 D.3 (3)下面的程序片段所表示的数学函数关系是 ______。 if(x<0) y= -1; else if(x>0) y=1; else y=0; (4) 下列各语句序列中,能够且仅输出整型变量a、b 中最大值的是 ()。 A. if(a>b) printf("%d\n",a); printf("%d\n",b); B. printf("%d\n",b); if(a>b) printf("%d\n",a); C. if(a>b) printf("%d\n",a); else printf("%d\n",b); D. if(a0) y=1; else if(x==0) y=0; else y= -1; printf("%d",y); A. 1 B. -1 C. 0 D. 2 (6) 程序段 int x=5,y=8,max; max=(x>y)?x:y; printf("%d",max); 的输出结果是。 A. 5 B. 8 C. 3 D. 13 (7) 程序段 int x=3,a=1;switch(x) {case 4: a++;case 3: a++;case 2: a++;case 1: a++;} printf ("%d",a); 的输出结果是。 A. 1 B. 2 C. 3 D. 4 (8)下列语句应将小写字母转换为大写字母,其中正确的是 ( )。 (ch>='a'&ch<='z') ch=ch-32; (ch>='a'&&ch<='z')ch=ch-32;

实验1-2、选择结构程序设计(有答案)

选择结构程序设计 【实验内容】 1、程序填空 (1)下面程序的功能为:输入一个整数,判断该数是否能被7整除。完成以下程序并运行出正确结 果。 # include void main() {int i; p rintf (“Plaese enter a int number:”); scanf(“%d”,&i); /**************found*************/ if ( i%7==0 ) p rintf(“Yes.\n”); else p rintf( “No.\n”); } (2)下面程序的功能为:输入两个整数,按照从大到小的顺序输出。完成以下程序并运行出正确结 果。 # include void main() { int a,b; scanf(“%d,%d”,&a,&b); if(a void main() { int x; scanf(“%d”,&x); if(x>=0); y= x; else(x<0) y= -x; printf(“%d”,y); } 正确的程序: #include void main()

{ int x ,y ; //变量y 没有定义 scanf(“%d”,&x); if(x>=0) //句尾不能有“;” y= x; else //else 后不能跟条件 y= -x; printf(“%d”,y); } (2)下面程序的功能为:输入一个整数,判断该数是否能同时被3和7整除,修改以下的程序并上机运行。 #include void main() {int x; printf(“Please enter a int number :”); scanf(“%d”, &x) ; if(x%7==||x%3==0) printf(“Yes.\n”); else printf(“No.\n”); } 正确的程序: # include void main() {int x; printf(“Please enter a int number:”); scanf(“%d”, &x) ; if(x%7== && x%3==0) printf(“Yes.\n”); else printf(“No.\n”); } 3.编写C 程序,求解下列分段函数的值:?? ???<-=>+=)0( 1)0(0)0( 122x x x x x y #include main() { double x,y; scanf("%lf",&x); if(x>0) y=x*x+1; else if(x==0) y=0; else y=x*x-1; printf("x=%lf,y=%lf\n",x,y); }

第05章选择结构程序设计 (1)

第05章选择结构程序设计 1.填空题 (1)C语言中的语句可以分为_____、_____、_______、_______、_______五类. (2)C语言用____表示假,____表示真. (3)C语言提供的三种逻辑运算符是________,______和_____. (4)关系运算符具有_______结合性,相同优先级的关系运算符连用时,按照_____的顺序计算表达式的值. (5)对于一个关系表达式的值,______表示假,______表示真. (6)对于C语言运算符的优先级,______运算符优先级最高,_____ 运算符优先级最低. (7)C语言用于选择结构的控制语句有________语句和________语句两种,前者用于 ________的情况,而后者用于____的情况. (8)当a=3,b=2,c=1时,表达式f=a>b>c的值是________. 2.选择题 (1)有如下程序,该程序的输出结果是() void main ( ) { int x = 1 , a = 0 , b = 0 ; switch ( x ) { case 0 : b++; case 1 : a++; case 2 : a++; b++; } printf (“a = %d, b = %d\n”, a, b); } A. a=2,b=1 B. a=1,b=1 C. a=1,b=0 D. a=2,b=2 (2)若有如下程序,该程序的输出结果是() void main ( ) { float x = 2.0 , y ; if (x < 0.0) y = 0.0 ; else if (x < 10.0) y = 1.0 / x ; else y = 1.0 ; printf (“%f\n”, y); } A. 0.000000 B. 0.250000 C. 0.500000 D. 1.000000 (3)设有:int a = 1 , b = 2 , c = 3 , d = 4 , m = 2 , n = 2 ; 执行 (m=a>b)&&(n=c>d)后n 的值是() A.1 B.2C.3D.4

实验二 选择结构程序设计if

实验二 选择结构程序设计 一、实验目的及任务: 1、了解C 语句表示逻辑量的方法(以0代表"假"以1代表"真")。 2.学会正确使用逻辑运算符和逻辑表达式的方法。 3.熟悉if 语句和switch 语句。 4.结合程序掌握一些简单的算法。 二、实验环境 TC 编程环境;主机操作系统为Windows2000或Windows XP ; 三、 预备知识 要深入理解选择结构的特点,掌握各自的语句实现。 四、实验内容 本实验要求编程解决以下问题,然后上机调试运行程序。 1.?????≥-<≤-<=101131011 21x x x x x x y 用scanf 函数输入x 的值,求y 的值。 程序提示: main 函数结构如下: 定义实型变量x 与y 使用scanf 函数输入x 的值 if x<1 y=x else if x<10 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。要求从键盘输入成绩,然后输出相应等级,分别用if 语句和switch 语句实现。 程序提示: (1)使用if 语句的main 函数结构如下: 定义float 型变量score ,char 型变量grade 输入百分制成绩赋给score if score>=90 grade='A' else if score>=80 grade='B' else if score>=70 grade='C' else if score>=60

grade='D' else grade='E' 输出百分制成绩和等级。 (2)使用switch语句的main函数结构如下: 定义float型变量score,char型变量grade 输入百分制成绩赋给score switch(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.编程实现:输入一个不多于5位的正整数,要求:(1)输出它是几位数,(2)分别输出每一位数字,(3)按逆序输出各位数字,如原数为321,则应输出123。 应准备以下测试数据 要处理的数为1位正整数; 要处理的数为2位正整数; 要处理的数为3位正整数; 要处理的数为4位正整数; 要处理的数为5位正整数; 除此之外,程序还应当对不合法的输出作必要的处理。例如: 输入负数; 输入的数超过5位; 程序提示:main函数结构如下: 定义long型变量num,int型变量c1,c2,c3,c4,c5 输入一个不超过5位的正整数赋给num if num>99999 输出:输入的数超过5位 else if num<0 输出:输入的数是一个负数 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(c1>0) {printf("\n%ld是一个5位数\n",num);

实验4 选择结构程序设计答案

实验4 选择结构程序设计 一、实验目的 1.掌握关系运算符和关系表达式的使用方法。 2.掌握逻辑运算符和逻辑表达式的使用方法。 3.掌握if语句、switch语句、条件运算符(?:)的使用方法。 4.掌握选择结构程序的设计技巧。 二、实验内容 1.改错题 (1)下列程序的功能为:输入1个字母,如果它是小写字母,则首先将其转换成大写字母,再输出该字母的前序字母、该字母、该字母的后序字母,例如:输入g,则输出FGH;输入a,则输出ZAB;输入M,则输出LMN;输入Z,则输出YZA。纠正程序中存在的错误,以实现其功能。程序以文件名sy4_1.c保存。 #include main() { char ch,c1,c2; printf("Enter a character:"); ch=getchar(); if((ch>='a')||(ch<='z')) // if((ch>='a')&&(ch<='z')) ch-=32; c1=ch-1; c2=ch+1; if(ch='A') c1=ch+25;// if(ch=='A') else if(ch='Z') c2=ch-25;// else if(ch=='Z') putchar(c1); putchar(ch); putchar(c2); putchar('\n'); } (2)下列程序的功能为:输入3个整数后,输出其中最大值。纠正程序中存在的错误,以实现其功能。程序以文件名sy4_2.c保存。 #include main() { int a,b,c,max; printf ("请输入3个整数:\n"); scanf ("%d%d%d",&a,&b,&c); max=a; if (c>b) { if (b>a) max=c;} if (c>a) max=c; else {if (c>a) max=b;} if (b>a) max=b;

相关文档