实验报告范例.docx
- 文档编号:9773147
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:22
- 大小:352.45KB
实验报告范例.docx
《实验报告范例.docx》由会员分享,可在线阅读,更多相关《实验报告范例.docx(22页珍藏版)》请在冰豆网上搜索。
实验报告范例
实验二选择结构程序设计
一、目的和要求:
1.掌握关系表达式和逻辑表达式的使用;
2.熟悉选择结构程序设计;
3.熟练使用if语句进行程序设计;
4.使用switch语句实现多分支选择结构。
二、实验设备:
PC机、VisualC++6.0
三、实验内容:
(一)实验准备:
分支选择结构
(二)实验项目:
题目1.某产品生产成本c=c1+mc2,其中c1为固定成本,c2为单位产品可变成本。
当生产数量m<10000时,c1=20000元,c2=10元;当生产数量m≥10000时,c1=40000元,c2=5元;编写一个程序,其功能为:
分别计算出生产数量为6000以及25000时,总生产成本及单位生产成本。
答:
程序如下:
#include
intmain()
{
intc,c1,c2,m;
printf("请输入生产数量\n");
scanf("%d",&m);
if(m<10000)
{
c1=20000;
c2=10;
}
else
{
c1=40000;
c2=5;
}
c=c1+m*c2;
printf("生产数量为%d\n",m);
printf("总生产成本为%d\n",c);
printf("单位生产成本为%d\n",c2);
return0;
}
结果如下:
题目2.编写一个程序,计算下列函数:
y=
x
x<1
2x-1
1≤x<10
3x-11
X≥10
答:
程序如下:
#include
intmain()
{
intx,y;
printf("请输入x的值\n");
scanf("%d",&x);
if(x<1)
{
y=x;
}
elseif((x>=1)&&(x<10))
{
y=2*x-1;
}
else
{
y=3*x-11;
}
printf("y=%d\n",y);
return0;
}
结果如下:
题目3.编写一个程序,其功能为:
从键盘输入一个字符,判别该字符的类别,并输出向相应信息。
答:
程序如下:
#include
intmain()
{
charc;
printf("请输入一个字符\n");
scanf("%c",&c);
if(c<32)
{
printf("该字符是控制字符\n");
}
elseif((c>=48)&&(c<=57))
{
printf("该字符是数字字符\n");
}
elseif((c>=65)&&(c<=90))
{
printf("该字符是大写字母\n");
}
elseif((c>=97)&&(c<=122))
{
printf("该字符是小写字母\n");
}
else
{
printf("该字符是其他字符\n");
}
return0;
}
结果如下:
题目4.编写一个程序,其功能为:
从键盘输入一元二次方程ax2+bx+c=0的各项系数a、b、c的值,判断方程实数解的不同情况,分别求解方程,并输出(结果保留两位小数,如无实根给出相应的信息)。
应用如下规则:
(1)若a、b的值为零,则没有解;
(2)若a为零,只有一个实数解;
(3)若b2-4ac为负数,则没有实数解;若b2-4ac为正数,有两个实数解;若b2-4ac为零,有两个相等的实数解。
答:
程序如下:
#include
#include
intmain()
{
inta,b,c,m;
doublex,x1,x2;
printf("请输入方程的各项系数\n");
scanf("%d%d%d",&a,&b,&c);
m=b*b-4*a*c;
if((a==0)&&(b==0))
{
printf("该方程无解\n");
}
elseif((a==0)&&(b!
=0))
{
x=1.0*(-c)/b;
printf("该方程只有一个实数解,x=%lf\n",x);
}
elseif(m<0)
{
printf("该方程无解\n");
}
elseif(m>0)
{
x1=1.0*(sqrt(m)-b)/(2*a);
x2=1.0*(-sqrt(m)-b)/(2*a);
printf("该方程有两个不等的实数根,x1=%lf,x2=%lf\n",x1,x2);
}
else
{
x=1.0*(-b)/(2*a);
printf("该方程有两个相等的实数根,x=%lf\n",x);
}
return0;
}
结果如下:
题目5.编写程序,输入三角形三边a、b、c,判断a、b、c能否构成三角形,若不能则输出相应的信息,若能则判断组成的是等腰、等边、直角还是一般三角形。
答:
程序如下:
#include
intmain()
{
inta,b,c;
printf("请输入三角形三边的值\n");
scanf("%d%d%d",&a,&b,&c);
if((a+b>c)&&(a+c>b)&&(b+c>a))
{
if((a==b)&&(b==c))
{printf("该三角形是等边三角形\n");}
elseif((a==b)||(a==c)||(b==c))
{printf("该三角形是等腰三角形\n");}
elseif((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
{printf("该三角形是直角三角形\n");}
else
{printf("该三角形是普通三角形\n");}
}
else
{printf("这三边不能构成三角形\n");}
return0;
}
结果如下:
题目6.某个电力公司对其用户的收费规定如下:
用电数量收费标准
0~200x*0.5元
201~400100+(x-200)*0.65元
401~600230+(x-400)*0.8元
601以上390+(x-600)*1.0元
编写程序,对于一个输入的用电数量,计算用户的缴费额。
答:
程序如下:
#include
intmain()
{
intx;
floatm;
printf("请输入用电数量\n");
scanf("%d",&x);
if((x>=0)&&(x<=200))
{m=x*0.5;}
elseif((x>=201)&&(x<=400))
{m=100+(x-200)*0.65;}
elseif((x>=401)&&(x<=600))
{m=230+(x-400)*0.8;}
else
{m=390+(x-600)*1.0;}
printf("缴费额为%f\n",m);
return0;
}
结果如下:
题目7.某个服装展示厅对所卖商品打折规定如下:
------------------------------------------------------------
购买总额折扣
-------------------------------------------
机加工产品手工产品
0~100-5%
101~2005%7.5%
201~3007.5%10.0%
大于30010.0%15.0%
--------------------------------------------------------------
编写程序输入购买总额,计算并输顾客实际应付的货款。
答:
程序如下:
#include
intmain()
{
intb;
doublem,n;
printf("请输入购买总额和购买类别\n");
scanf("%lf%d",&m,&b);
if((m>0)&&(m<=100)&&(b==0))
{n=m;}
elseif((m>0)&&(m<=100)&&(b==1))
{n=m*(1-0.05);}
elseif((m>100)&&(m<=200)&&(b==0))
{n=m*(1-0.05);}
elseif((m>100)&&(m<=200)&&(b==1))
{n=m*(1-0.075);}
elseif((m>200)&&(m<=300)&&(b==0))
{n=m*(1-0.075);}
elseif((m>200)&&(m<=300)&&(b==1))
{n=m*(1-0.1);}
elseif((m>300)&&(b==0))
{n=m*(1-0.1);}
elseif((m>300)&&(b==1))
{n=m*(1-0.15);}
else
{printf("输入有误\n");}
printf("实际应付货款为%lf\n",n);
return0;
}
结果如下:
题目8.编程在屏幕上显示一张如下所示的时间表:
*******Time*******
1morning
2afternoon
3night
Pleaseenteryourchoice:
根据用户输入的时间序号显示相应的问候信息,选择1时显示“Goodmorning”,选择2时显示“Goodafternoon”,选择3时显示“Goodnight”,对于其他选择显示“Selectionerror!
”。
答:
程序如下:
#include
intmain()
{
intx;
printf("*******Time*******\n");
printf("1morning\n");
printf("2afternoon\n");
printf("3night\n");
printf("Pleaseenteryourchoice:
\n");
scanf("%d",&x);
switch(x)
{
case1:
printf("Goodmorning\n");
break;
case2:
printf("Goodafternoon\n");
break;
case3:
printf("Goodnight\n");
break;
default:
printf("Selectionerror!
\n");
break;
}
return0;
}
结果如下:
题目9.编程设计一个简单的计算器程序,要求根据用户从键盘输入的表达式:
操作数1运算符op操作数2
计算表达式的值,指定的运算符为加(+)、减(-)、乘(*)、除(/)
答:
方法一
#include
intmain()
{
charop;
doublex1,x2;
printf("Pleaseentertheexpression:
\n");
scanf("%lf%c%lf",&x1,&op,&x2);
switch(op)
{
case'+':
printf("%lf%c%lf=%lf\n",x1,op,x2,x1+x2);
break;
case'-':
printf("%lf%c%lf=%lf\n",x1,op,x2,x1-x2);
break;
case'*':
printf("%lf%c%lf=%lf\n",x1,op,x2,x1*x2);
break;
case'/':
printf("%lf%c%lf=%lf\n",x1,op,x2,x1/x2);
break;
default:
printf("Unknownoperator\n");
break;
}
return0;
}
程序如下:
结果如下:
方法二:
#include
intmain()
{
charop;
doublex1,x2,x3;
printf("Pleaseentertheexpression:
\n");
scanf("%lf%c%lf",&x1,&op,&x2);
if(op=='+')
{
x3=x1+x2;
printf("%lf%c%lf=%lf\n",x1,op,x2,x3);
}
elseif(op=='-')
{
x3=x1-x2;
printf("%lf%c%lf=%lf\n",x1,op,x2,x3);
}
elseif(op=='*')
{
x3=x1*x2;
printf("%lf%c%lf=%lf\n",x1,op,x2,x3);
}
elseif(op=='/')
{
x3=x1/x2;
printf("%lf%c%lf=%lf\n",x1,op,x2,x3);
}
else
{
printf("Unknownoperator\n");
}
return0;
}
程序如下:
结果如下:
题目10.输入某学生的成绩,经处理后给出学生的等级,等级分类如下:
90分以上(包括90):
A
80至90分(包括80):
B
70至80分(包括70):
C
60至70分(包括60):
D
60分以下:
E
答:
方法一(用if语句的嵌套):
#include
intmain()
{
intx;
printf("请输入学生的成绩\n");
scanf("%d",&x);
if(x>=90)
{
printf("该学生的等级为A\n");
}
elseif((x>=80)&&(x<90))
{
printf("该学生的等级为B\n");
}
elseif((x>=70)&&(x<80))
{
printf("该学生的等级为C\n");
}
elseif((x>=60)&&(x<70))
{
printf("该学生的等级为D\n");
}
else
{
printf("该学生的等级为E\n");
}
return0;
}
程序如下:
结果如下:
方法二(用switch语句):
程序如下:
#include
intmain()
{
intx,y;
printf("请输入学生的成绩\n");
scanf("%d",&x);
y=x/10;
switch(y)
{
case10:
case9:
printf("该学生的等级为A\n");
break;
case8:
printf("该学生的等级为B\n");
break;
case7:
printf("该学生的等级为C\n");
break;
case6:
printf("该学生的等级为D\n");
break;
default:
printf("该学生的等级为E\n");
break;
}
return0;
}
结果如下:
四、实验小结
通过这十道题,我熟悉地掌握了选择分支结构的编译。
多分支结构有的看似复杂,但实际上却简单;有的看似简单,但实际上却很难。
我编了好几道题,都是没有错误,但一运行就出错,原来语句的顺序也会影响到实验结果。
还有对变量的数据类型的定义也很重要,定义double,float,还是int都会影响到实验结果,所以定义时一定要考虑清楚。
这次还新学了switch语句,它有的时候的确比if语句简单,要想使编程简单,就要选好语句。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 报告 范例
![提示](https://static.bdocx.com/images/bang_tan.gif)