试验二选择结构程序设计试验报告_第1页
试验二选择结构程序设计试验报告_第2页
试验二选择结构程序设计试验报告_第3页
试验二选择结构程序设计试验报告_第4页
试验二选择结构程序设计试验报告_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验二选择结构程序设计一、实验目的和要求1.掌握关系表达式和逻辑表达式的使用.2,熟悉选择结构程序设计.3.熟练使用if语句进行程序设计.4,使用switch语句实现多分支选择结构二、实验设备PC 机 Visual C+三、实验内容(一)实验准备1,从程序流程的角度来看,程序可以分为三种根本结构,即顺序结构、分支(选择)结构、循环结构.2.If-else 语句:一般形式为:if (表达式)语句1;else语句2;该语句用于实现分支结构,根据表达式的值选择语句 1或语句2中的一条执行.首 先求解表达式,如果表达式的值为“真,那么执行语句1;如果表达式的值为“假,那么 执行语句2.2.switch

2、 语句switch语句可以处理多分支选择问题,根据其中 break语句的使用方法,一般分为 三种情况.(二)实验工程1.计算 a+|b| #includeint main(void)(int a,b,z;printf(Please enter a,b:n);scanf(%d,%d,&a,&b);if (b=0)b=b;)elseb=-b;)z=a+b;printf(%d+%d=%dn,a,b,z);return 0 ;)2判断一个整数是否可以被 3和5整除#includeint main(void)(int a ;printf(Please enter a:n);scanf(%d,&a);if

3、 (a%3=0)printf(a 可以被 3 整除:n);)elseif (a%5=0)printf(a 可以被 5 整除:n);)else printf(a 不可以被5整除,也不可以被3整除:n);)3 .从键盘输入一个字符型数据,假设输入一个数字字符(0-9),那么将其转换成相应的 整数显示出来;假设输入其它字符,那么显示出错信息.#includeint 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);)elseprintf(这个字符不是

4、个整数:n);)return 0 ;)4 .编写一个程序,其功能为:从键盘输入三个数x、y、z,判断x+y=z是否成立,假设成立输出“x+y=z的信息,否那么输出“ x+y!=z的信息.#includeint 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=zn);)else(printf (x+y!=zn);)return 0;)5 .编写一个程序,其功能为:输入三个整数,输出最大数和最小数 #includeint main(void)(int a,b,c

5、,x,y;printf (请输入三个数字:n);scanf (%d,%d,%d,&a,&b,&c);x=0;if (ab)(x=a;if (xc)(x=x;)else(x=c;)else(x=b;if(xc)(x=x;) else(x=c;)y=0;if (ab)y=a; if (yc) ( y=c;) else ( y=y;)printf ( 最大数是d,最小值是%dn,x,y);return 0;)6 .如下两个线性方程组的两个未知数为x1和x2:ax1+bx2=mcx1+dx2=n该方程的唯一解为(ad-cb不等于零时):请编写一个程序,读取a、b、c、d的值,计算x1和x2的值.如果a

6、d-cd等于零,应给 出适当的提示信息.#include int main(void) (int a,b,c,d,m,n,x1,x2;printf( 请输入方程组 a,b,c,d,m,nn);scanf(%d,%d,%d,%d,%d,%d,&a,&b,&c,&d,&m,&n); if(a*d-c*b=0)( printf(此方程组无解n);) else (x1=(m*d-b*n)/(a*d-c*b);x2=(n*a-m*c)/(a*d-b*c);printf(此方程组的解为 %dffi%dn,x1,x2);) return 0;)7 .某产品生产本钱c=c1+mc2其中c1为固定本钱,c2为单

7、位产品可变本钱.当生产数 量 m 10000 时,c1=40000 元,c2=5 元;编写一个程序,其功能为:分别计算出生产数量为6000以及25000时,总生产本钱及单位生产本钱.#include int main(void) int c,c1,c2,m;printf( 请输入生产数量m:n);scanf(%d,&m); if (m10000) c1=20000; c2=10;) else c1=40000; c2=5;)c=c1+m*c2;printf(生产本钱为 %dn,c); return 0;)8 .编写一个程序,计算以下函数:x x1y= 2x-11 x10#include int

8、 main(void) int x,y;printf (Plesse input a x :n);scanf (%d,&x);if (x=10)y=3*x-11;) else y=2*x-1;)printf (y=%dn,y);return 0;)9 .编写一个程序,其功能为:从键盘输入一个字符,判别该字符的类别,并输出向相应 信息.#includeint main(void)char i;scanf(%c,&i);if (i=0)&(i=A)&(i=a)&(i=z)printf (此字符为小写字母n);else printf(此字符为其他字符n); return 0;10 .编写一个程序,其

9、功能为:从键盘输入一元二次方程ax2+bx+c=0的各项系数a、b、c的值,判断方程实数解的不同情况,分别求解方程,并输出(结果保存两位小数,如无 实根给出相应的信息).应用如下规那么:(1)假设a、b的值为零,那么没有解;(2)假设a为零,只有一个实数解;(3)假设b2-4ac为负数,那么没有实数解;假设 b2-4ac为正数,有两个实数解;假设 b2-4ac 为零,有两个相等的实数解.#include #include int main(void)(float a,b,c;double x1,x2;printf (Please input a,b,cn);scanf (%f%f%f,&a,&

10、b,&c);if(a=0)&(b=0)printf (此方程没有解n);elseif(a=0) printf(此方程有一个实根n);elseif(b*b-4*a*c)0)printf (此方程无实根n);elseif(b*b-4*a*c)=0)x1=(-b)/(2*a);printf(此方程有两个相等实根:x1=x2=%lfn,x1); elsex1=(-b+(sqrt(b*b-4*a*c)/(2*a);x2=(-b-(sqrt(b*b-4*a*c)/(2*a);printf(此方程有两个实根:x1=%lfx2=%lfn,x1,x2); return 0;11 .编写程序,输入三角形三边a、b

11、、c,判断a、b、c能否构成三角形,假设不能那么输出 相应的信息,假设能那么判断组成的是等腰、等边、直角还是一般三角形.#include int main(void) int a,b,c;printf(piease input a,b,c:n);scanf(%d,%d,%d,&a,&b,&c);if(a+bc)&(a+cb)&(b+ca)if(a=b&b=c&a=c)printf(能构成等边三角形n);) elseif(a=b|b=c|a=c)printf(能构成等腰三角形n);) elseif(a*a=b*b+c*c|b*b=a*a+c*c|c*c=a*a+b*b)printf(能构成直角三

12、角形n);) else printf(能构成一般三角形n);) elseprintf(不能构成三角形n);)return 0;)12 .某个电力公司对其用户的收费规定如下:用电数量 收费标准0200 x* 元201400 100+(x-200) *元401600 230+(x-400) *元601 以上 390+(x-600) *元编写程序,对于一个输入的用电数量,计算用户的缴费额.#includeint main(void)double x,y;printf(piease input x:n);scanf(%lf,&x);if(x=0&x=201&x=401&x=600)y=230+(x-4

13、00)*;) else y=390+(x-600)*; ) )printf(y=%lfn,y); )return 0;13某个服装展示厅对所卖商品打折规定如下:购置总额折扣机加工产品手工产品0100-5%1012005%201300%大于300 %编写程序输入购置总额,计算并输顾客实际应付的货款.#include int main(void)double x,y;int lb;printf(请输入顾客购置总额x: n);scanf(%lf,&x);printf(请输入顾客购置类别lb : n);scanf(%d,&lb);if(x=0&x=101&x=201&x=300)(if(lb=0)y=

14、x*;else if(lb=1)y=x*;elseprintf(输入购置类别数据有误!);)else (if(lb=0) y=x*;else if(lb=1)y=x*;else);printf(输入购置类别数据有误!)printf(x=%lf y=%lfn,x,y);)return 0;)14编程在屏幕上显示一张如下所示的时间表: 1morning*Time*2afternoon3nightPlease enter your choice:根据用户输入的时间序号显示相应的问候信息,选择 1时显示“Goodmorning,选才2 2时显示“Goodafternoon ,选择3时显示“Goodni

15、ght ,对于其他选择显示“Selectionerror! .#include int main(void)(int xh;printf(nn*Time*n);printf(1 morningn);printf(2 afternoonn);printf(3 night n);printf(nn 请输入您的选择(1、2、3):);scanf(%d,&xh); switch(xh)(case 1: printf(nGood morningn);break;case 2: printf(nGood atfernoonn);break;case 3: printf(nGood nightn);brea

16、k;default: printf(nSelection error!n);break;return 0;15编程设计一个简单的计算器程序,要求根据用户从键盘输入的表达式: 操作数1运算符op操作数2计算表达式的值,指定的运算符为加(+)、减(-)、乘(*)、除(/)#includeint main(void)(float x,y,z;char op;printf(“请输入表达式:);scanf(f,%c,%f,&x,&op,&y);if (op=,+,)z=x+y;if (op=,-,)z=x-y;if(op= *)z=x*y;if (op=,/,)if (y!=0) z=x/y;else

17、printf(“除数为 0 );printf( f%c%f=%fn ,x,op,y,z);#include void main() float x,y,z;char op;printf(“请输入表达式:);scanf(f,%c,%f,&x,&op,&y);switch(op),case,+,:z=x+y;case- : z=x-y;case*:z=x*y;case/:if (y!=0) z=x/y;else printf(“除数为 0 );printf(f%c%f=%f6 ,x,op,y,z);return 0;16输入某学生的成绩,经处理后给出学生的等级,等级分类如下:90分以上(包括90)

18、:A80至90分(包括80):B70至80分(包括70):C60至70分(包括60):D60 分以下: E方法一:(用if语句的嵌套)#includeint main(void)float score;printf(请输入成绩:);scanf(%f,&score);if(score=0&score=90)printf(%f A,score);else if(score=80)printf(%f B,score);else if(score=70)printf(%f C,score);else if(score=60) printf(%f D,score);elseprintf(%f E,score);else printf(成绩输入有误!);return 0;方法二:用switch语句#includeint main(void)float score;int p;printf( 请输入成绩:); scanf(%f,&score);p=(int)(score/10);if(score=0&score=100) switch(p)(case 10:case 9: printf(%fcase 8: printf(%fcase 7:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论