C语言信息安全上机实验报告模版1顺序与分支.docx
- 文档编号:22905891
- 上传时间:2023-04-29
- 格式:DOCX
- 页数:13
- 大小:143.44KB
C语言信息安全上机实验报告模版1顺序与分支.docx
《C语言信息安全上机实验报告模版1顺序与分支.docx》由会员分享,可在线阅读,更多相关《C语言信息安全上机实验报告模版1顺序与分支.docx(13页珍藏版)》请在冰豆网上搜索。
C语言信息安全上机实验报告模版1顺序与分支
北京信息科技大学
信息管理学院
(课程上机)实验报告
实验课程名称:
C语言程序设计专业:
信息安全
班级:
信安1202学号:
2012012194姓名:
李自然成绩:
实验名称
顺序与分支结构程序设计
实验地点
3-606
实验时间
1.实验目的:
◆熟练掌握上机过程。
◆熟练掌握顺序结构程序设计
◆熟练掌握分支结构程序设计
【注】实验总用时:
4课时。
2.实验内容:
P87/5:
“圆柱计算”。
P88/6:
“华氏温度到摄氏温度转换”。
补充-1:
输入学生3门课成绩,输出总成绩及平均成绩,保留小数点后一位,小数点后第二位“四舍五入”。
补充-2:
输入的字符,输出其在ASCII码表中的前驱字符及后继字符,并同时输出三者的ASCII码值。
P113/5:
输入三个数,输出最大值。
补充-3:
输入四个数,输出最大值、最小值,并按从小到达顺序依次输出这四个数。
补充-4:
输入一个年份,判定该年是否是闰年,以输出文字形式说明。
P113/8:
奖金发放额计算问题。
P114/11:
求一元二次方程各种系数情况下的求根问题。
补充-5:
设计一个支持四则运算及乘方运算的模拟计算器。
3.实验要求:
独立编写程序,上机调试通过,写出实验报告。
4.实验准备:
电脑一台、WindowsXP操作系统、VC++6.0软件。
5.实验过程:
5.1实验一的实验过程
【要求】每道题都独立书写下列内容。
每题的报告应包括如下内容。
5.1.1题目。
可以写:
详见本报告“2.实验内容”),也可以把原题附上。
5.1.2简单思路。
也即程序设计的思考、设计思路及描述。
5.1.3程序结构。
可以用流程图表示,也可用结构性类语言描述。
5.1.4最终程序清单与注释。
一般指经调试正确的程序,如果调试不正确也未修改正确,也要附上。
正确的程序后面调试记录要附上正确的调试结果,调试仍不正确的但后面程序,调试记录要包含错误的内容,并写出你认为可能的错误原因分析。
注释可以简单写,但对复杂的部分可以详细写。
5.1.5测试数据选择。
要包含测试数据选择依据的分析。
调试中的测试数据可能不止一种,也就是说不是执行一次结果正确就证明结果正确。
5.1.6调试记录。
记录调试过程的输入、输出等,可以记录屏幕拷贝内容,也可以用文字说明屏幕显示内容。
并分析通过测试数据及程序执行结果,对程序正确性的分析与判断。
5.1.7实验结论总结。
5.2实验二的实验过程
5.2.1同上要求
5.2.2同上要求
5.2.3同上要求
5.2.4同上要求
5.2.5同上要求
5.2.6同上要求
5.2.7同上要求
……
(本部分可另附页)
实验过程
1.P87/5:
“圆柱计算”
设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积,用scanf输入数据,输出计算结果,输出时要求有文字说明,去小数点后两位数字。
程序:
#include
voidmain()
{
floatr,h,l,s,sq,v,vz;//定义半径等
floatpi=3.141526;//由于pi是无限小数,所以根据需求定义
printf("请输入圆半径r,圆柱高h;");
scanf("%f,%f",&r,&h);
l=2*pi*r;
s=r*r*pi;
sq=4*pi*r*r;
v=3/4*pi*r*r*r;
vz=pi*r*r*h;
printf("圆周长为:
l=%6.2f\n",l);
printf("圆面积为:
s=%6.2f\n",s);
printf("圆球表面积为:
sq=%6.2f\n",sq);
printf("圆球体积为:
v=%6.2f\n",v);
printf("圆柱体积为:
vz=%6.2f\n",vz);
}
结果:
2.P88/6:
“华氏温度到摄氏温度转换”
输入一个华氏温度,要求输出摄氏温度,输出取两位小数
程序:
#include
voidmain()
{
floatC,F;
printf("请输入一个华氏温度:
");
scanf("%f",&F);
C=(5*(F-32))/9;
printf("摄氏温度为:
C=%6.2f\n",C);
}
结果:
3.输入学生3门课成绩,输出总成绩及平均成绩,保留小数点后一位,小数点后第二位“四舍五入”。
程序:
#include
voidmain()
{
floata,b,c,sum,avg;
printf("请输入该同学三科成绩:
");
scanf("%f,%f,%f",&a,&b,&c);
sum=a+b+c;
avg=(a+b+c)/3;
printf("该同学的总成绩为:
sum=%3.1f\n",sum);
printf("该同学平均成绩为:
avg=%3.1f\n",avg);
}
结果:
4.输入的字符,输出其在ASCII码表中的前驱字符及后继字符,并同时输出三者的ASCII码值
程序:
#include
voidmain()
{
charx,y,z;
printf("pleaseentery:
");
scanf("%c",&y);
x=y-1;
z=y+1;
printf("x=%c\nz=%c\nx=%d\ny=%d\nz=%d\n",x,z,x,y,z);
}
结果:
5.P113/5:
有三个整数a,b,c,由键盘输入,输出其中最大的数
程序:
#include
voidmain()
{
inta,b,c,max;
printf("pleaseentera,b,c");
scanf("%d,%d,%d",&a,&b,&c);
if(a>b)
max=a;
else
max=b;
if(c>max)
max=c;
printf("max=%d\n",max);
}
结果:
6.输入四个数,输出最大值、最小值,并按从小到达顺序依次输出这四个数。
程序:
#include
voidmain()
{
floata,b,c,d,max,min,t;
printf("pleaseentera,b,c,d");
scanf("%f,%f,%f,%f",&a,&b,&c,&d);
if(a>b)
{
t=a;a=b;b=t;}
if(a>c)
{
t=a;a=c;c=t;}
if(a>d)
{
t=a;a=d;d=t;}
min=a;
if(b>c)
{
t=b;b=c;c=t;}
if(b>d)
{
t=b;b=d;d=t;}
if(c>d)
{
t=c;c=d;d=t;max=d;}
max=d;
printf("max=%6.1f\nmin=%6.1f\n",max,min);
printf("%6.1f%6.1f%6.1f%6.1f\n",a,b,c,d);
}
结果:
7.输入一个年份,判定该年是否是闰年,以输出文字形式说明
程序:
#include
voidmain()
{
intyear,leap;/*定义两个整型变量*/
printf("pleaseenterayear");
scanf("%d",&year);
if(year%4!
=0)leap=0;/*使用嵌套的if语句实现多层选择*/
elseif(year%100!
=0)leap=1;
elseif(year%400!
=0)leap=0;
elseleap=1;
if(leap)
printf("%disaleapyear\n",year);
else
printf("%disnotaleapyear\n",year);
}
结果:
8.P113/8:
奖金发放额计算问题
程序:
#include
voidmain()
{
longi;
doublea,b,c,d,e,j;
a=100000*0.1;
b=a+100000*0.75;
c=b+100000*0.05;
d=c+100000*0.03;
e=d+400000*0.015;
printf("请输入利润i=");
scanf("%ld",&i);
if(i<100000)
j=i*0.01;
elseif(i<=200000)
j=a+(i-100000)*0.075;
elseif(i<=400000)
j=b+(i-200000)*0.05;
elseif(i<=600000)
j=c+(i-400000)*0.03;
elseif(i<=1000000)
j=d+(i-600000)*0.015;
else
j=e+(i-1000000)*0.01;
printf("奖金j=%lf",j);
}
结果:
9.P114/11:
求一元二次方程各种系数情况下的求根问题
程序:
#include
#include
voidmain()
{
floata,b,c,disc,x1,x2,realpart,imagpart;//定义三个数,方程的解,根
printf("pleaseentera,b,c:
");
scanf("%f,%f,%f",&a,&b,&c);
printf("Theequation");
if(fabs(a)<=1e-6)//判断a
printf("isnotaquadratic\\n");//a<=0则为一次方程或无解
else
{
disc=b*b-4*a*c;//判断b2-4ac的正负
if(fabs(disc)==0)//disc=0有两个相等实根
printf("hastwoequalroots:
%8.4f\n",-b/(2*a));
elseif(disc>0)//disc>0则通过运算求两个不同解
{
x1=-b+sqrt(disc)/(2*a);
x2=-b-sqrt(disc)/(2*a);
printf("hasdistinctrealroots:
%8.4f\n",x1,x2);
}
Else//disc<0则有两个共轭复根
{
realpart=-b/(2*a);
imagpart=sqrt(-disc)/(2*a);
printf("hascomplexroots:
\n");
printf("%8.4f+%8.4fi\n",realpart,imagpart);
printf("%8.4f-%8.4fi\n",realpart,imagpart);
}
}
}
结果:
10.设计一个支持四则运算及乘方运算的模拟计算器
程序:
#include
voidmain()
{
floata,c,d;
charb;
printf("pleaseenterabc");
scanf("%f%c%f",&a,&b,&c);
switch(b)
{
case'+':
d=a+c;break;
case'-':
d=a-c;break;
case'*':
d=a*c;break;
case'/':
d=a/c;break;
}
printf("d=%8.2f\n",d);
}
结果:
6.实验总结:
写出本次实验在设计与调试中的技术体会,特别是实验前的程序设计,在实验中发现了什么问题,如何解决的,得到了什么经验与体会等。
说明:
1.实验名称、实验目的、实验内容、实验要求由教师确定,实验前由教师事先填好,然后作为实验报告模版供学生使用;
2.实验准备由学生在实验或上机之前填写,教师应该在实验前检查;
3.实验过程由学生记录实验的过程,包括操作过程、遇到哪些问题以及如何解决等;
4.实验总结由学生在实验后填写,总结本次实验的收获、未解决的问题以及体会和建议等;
5.源程序、代码、具体语句等,若表格空间不足时可作为附录另外附页。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 信息 安全 上机 实验 报告 模版 顺序 分支
![提示](https://static.bdocx.com/images/bang_tan.gif)