版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025届吉林省北大附属长春实验学校生物高一第一学期期末统考模拟试题含解析
- 甘肃省白银市会宁四中2025届数学高一上期末监测试题含解析
- 山东省青岛市崂山区第二中学2025届高一上数学期末预测试题含解析
- 2025届山东省枣庄、滕州市数学高一上期末经典试题含解析
- 2025届湖南省浏阳市高一数学第一学期期末质量检测模拟试题含解析
- 江苏省盐城市时杨中学2025届英语高三第一学期期末综合测试试题含解析
- 坐井观天课件图片
- 2025届安徽省六安一中、舒城中学、霍邱一中数学高二上期末达标检测试题含解析
- 2025届甘肃省平凉市静宁一中高三数学第一学期期末调研模拟试题含解析
- 2025届福建省厦门科技中学数学高一上期末监测模拟试题含解析
- 儿童教育2024年儿童教育发展方向
- 标准厂房以租代购合同2022
- 药品验收培训课件
- 2024年国家电投集团有限公司招聘笔试参考题库含答案解析
- 人教版二年级上册数学拼、画角-(竞赛试题)
- 发展汉语-初级读写-第一课-你好
- 八年级上学期校本课程教案
- 中等专业学校毕业生登记表-3
- 数据管理与统计年报填报准则培训教材
- 康复医学科肘关节HHS评分
- 2024年长庆油田分公司招聘笔试参考题库含答案解析
评论
0/150
提交评论