c++ 实验报告.docx
- 文档编号:7257778
- 上传时间:2023-01-22
- 格式:DOCX
- 页数:32
- 大小:391.69KB
c++ 实验报告.docx
《c++ 实验报告.docx》由会员分享,可在线阅读,更多相关《c++ 实验报告.docx(32页珍藏版)》请在冰豆网上搜索。
c++实验报告
计算机程序设计基础
(C++)
实
验
报
告
软件学院
二O一O年三月
实验__1__实验报告
教学班级:
_______学生学号:
__________学生姓名:
___________
实验日期:
___________实验地点:
_________(机房)
指导教师签名:
__________实验成绩:
___________
一、实验目的
1.熟悉Visualstudio6.0集成开发环境;
2.学习新建和打开控制台应用程序的方法;
3.通过运行示例程序了解程序开发过程;
二、实验任务
1.输出下面图形:
2.输入一摄氏温度,输出显示所转换的华氏温度。
(提示:
摄氏温度=(华氏温度-32)×5/9)
三、实验结果(源程序+注释)
//输出图形
#include
usingnamespacestd;
intmain()
{
cout<<"*"< cout<<"****"< cout<<"****"< cout<<"*"< return0; } //输入一摄氏温度,输出显示所转换的华氏温度 #include usingnamespacestd; intmain() { doublea=0.0,b=0.0; cout<<"请输入摄氏温度: "< cin>>a; b=a*9/5+32; cout<<"华氏温度为: "< return0; } 实验__2__实验报告 教学班级: _______学生学号: __________学生姓名: ___________ 实验日期: ___________实验地点: _________(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握对一般数据的输入和输出格式控制方法; 2.掌握对实型数据输出形式的设置和小数位数的控制方法; 3.了解数据输入的相关注意事项。 二、实验任务 1.输入一台计算机的编号和该计算机的价格,并输出这些信息。 (如编号为10987654321,价格为5998.00元,注意此处计算机的编号作为一个整数而言超出了int所定义的变量的存储范围,因此只能用double型变量来存储,但输出时要求看见的是整数形式的编号) 2.输入三个同学的学号,计算机和英语课程的考试成绩,并输出这些信息。 要求每个同学的三个信息输出在同一行上,三行输出信息要各列对齐。 三、实验结果(源程序+注释) #include usingnamespacestd; intmain() { doublea=0.0,b=0.0; cout<<"请输入计算机价格: "; cout< cout.precision (2); cin>>a; cout<<"计算机价格为"< cout.precision(0); cout<<"请输入计算机编号: "; cin>>b; cout<<"计算机编号为"< return0;} #include usingnamespacestd; intmain() { doublea,b,c,d,e,f,g,h,i; cout< cout.precision(0); cout<<"请输入三名同学的学号: "< cin>>a>>d>>g; cout<<"请按顺序输入三名同学的计算机成绩: "< cin>>b>>e>>h; cout<<"请按顺序输入三名同学的英语成绩: "< cin>>c>>f>>i; cout.width(8);cout< cout.width(8);cout< cout.width(8);cout< return0; } 实验__3__实验报告 教学班级: 05学生学号: 学生姓名: 实验日期: 2009/4/8实验地点: 7408(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握“处理某一或某些操作只有在特定条件成立的情况下才会被执行”的编程思路 和方法; 2.掌握“一路分支选择结构”算法的实现语句,if语句的使用方法; 3.掌握“二路分支选择结构”算法的实现语句,if-else语句的使用方法; 二、实验任务 1.有一个函数 ,输入x的值,输出相应的函数值。 (提示: x取值分大于零和小于等于0的两段,对输入的x值,在计算前应判断范围,采用不同的计算公式。 ) 2.已知一函数 ,输入x的值,求解并输出相应的y值。 (提示: 该题根据x的取值范围采用不同公式来计算y的值。 显然采用if选择结构可实现该程序。 ) 三、实验结果(源程序+注释) #include usingnamespacestd; intmain() { doublex=0.0,y=0.0; cout<<"请输入x值: "; cin>>x; if(x>0) y=x+1; else y=x*x; cout< return0; } #include usingnamespacestd; intmain() { doublex=0.0,y=0.0; cout<<"请输入x的值: "; cin>>x; if(x<1) y=x; else if(x>=10) y=3*x-11; else y=2*x-1; cout< return0; } 实验__4__实验报告 教学班级: 05学生学号: 学生姓名: 、 实验日期: 2010/4/15实验地点: 7408(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握“多路分支选择结构”算法的实现语句,switch语句的使用方法; 2.学习通过程序调试来跟踪程序运行过程,查看程序运行过程中各个变量的取值变化 情况。 二、实验任务 1.实现一个简单的菜单程序,运行时显示 Menu: A(dd) D(elete) S(ort) Q(uit) Selectone: 要求用户提供相应的输入,并在用户输入A,D,S时分别提示“数据已经增加、删除、排序”,输入为Q时程序结束。 (提示: 该程序要求用户输入特定的A,D,S,Q字符显示相应信息,所以适合采用switch结构。 ) 2.某公司进行产品销售,既零售也批发,零售的价格与批发的价格不同,购买产品数量的多与少其价格也不同。 具体标准见下表: 批发商 零售商 数量(个) 单位价格(元/个) 数量(个) 单位价格(元/个) 50~200 10 1~20 18 200以上 8 20~40 15 40~50 12 三、实验结果(源程序+注释) #include usingnamespacestd; intmain() { cout<<"Menu: "< cout<<"A(dd)"< cout<<"D(elete)"< cout<<"S(ort)"< cout<<"Q(uit)"< cout<<"Selectone: "; charop; cout<<"请输入字母: "; cin>>op; switch(op) {case'A': cout<<"数据已经增加"< case'D': cout<<"数据已经删除"< case'S': cout<<"数据已经排序"< case'Q': break; default: cout<<"非指定字符"< return0; } #include usingnamespacestd; intmain() {inta,b,c; cout<<"请输入购买产品数量: "; cin>>a; if(a<50) {b=a/10;switch(b) {case0: case1: c=18*a;cout<<”您为零售客户! ”< case2: case3: c=15*a;cout<<”您为零售客户! ”< case4: c=12*a;cout<<”您为零售客户! ”< else if(a>200){c=8*a;cout<<”您为批发客户! ”< else{c=10*a;cout<<”您为批发客户! ”< cout<<"总价格为: "< return0; } 实验__5__实验报告 教学班级: _______学生学号: __________学生姓名: ___________ 实验日期: ___________实验地点: _________(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握“处理某一或某些操作需要被有条件地重复执行”的编程思路和方法; 2.掌握“当型型循环结构”算法的实现语句之一while循环语句的使用方法; 3.掌握“直到型循环结构”算法的实现语句do-while循环语句的使用方法; 4.掌握“当型型循环结构”算法的实现语句之一for循环语句的使用方法。 二、实验任务 1.计算1-2+3-4+…+99-100。 2.输入一个整数,将各位数字反转后输出。 三、实验结果(源程序+注释) #include usingnamespacestd; intmain() { inti=1,k=0,o=1; while(i<=100) {k=k+i*o; i=i+1; o=-o; } cout< return0; } #include usingnamespacestd; intmain() { inti,s; cout<<"请输入一个整数: "; cin>>s;cout< for(i=10;s/i>0;i=10*i) cout< return0; } #include usingnamespacestd; intmain() { inta,b; cout<<"请输入一个整数: "; cin>>a; while(a! =0) {b=a%10;cout< a=a/10;} cout< return0; } 实验__6__实验报告 教学班级: _______学生学号: __________学生姓名: ___________ 实验日期: ___________实验地点: _________(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握循环与选择结构的嵌套的使用方法; 2.掌握嵌套循环的使用方法; 3.练习continue和break语句的使用方法。 二、实验任务 1.求两个整数的最大公约数和最小公倍数。 2.用循环结构语句编程并输出下图: * ** ** ** ** ** * 三、实验结果(源程序+注释) #include usingnamespacestd; intmain() { inta,b,r,w; cin>>a>>b; w=a*b; while(r! =0) {r=a%b; a=b; b=r; } cout<<"最大公约数为: "< w=w/a; cout<<"最小公倍数为: "< return0;} #include usingnamespacestd; intmain() { inti,j; for(i=0;i<=3;i++) {for(j=0;j<=2-i;j++)cout<<""; for(j=0;j<=2*i;j++) if(j==0||j==2*i)cout<<"*"; elsecout<<"";cout< } for(i=0;i<=2;i++) {for(j=0;j<=i;j++)cout<<""; for(j=0;j<=4-2*i;j++) if(j==0||j==4-2*i)cout<<"*"; elsecout<<"";cout< } return0; } 实验__7__实验报告 教学班级: _______学生学号: __________学生姓名: ___________ 实验日期: ___________实验地点: _________(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握对一组同类型的数据进行插入、删除、排序和查找等的常用算法; 2.掌握数值型一维数组的使用方法; 二、实验任务 1.输入n个数,找出所有大于n个数的平均值的那些数及最小数。 2.设有有序(值从小到大)的两组数据,将这两组数据有序合并(合并过程数据始终保持有序)。 (提示: 两组原始数据用一维数组a,b表示,合并后的数据用一维数组c表示,ia,ib分别代表当前待放入到数组c中去的数组a,b的下标,ic指向数组c中当前存放数据的下标,如下图所示。 ) 三、实验结果(源程序+注释) #include usingnamespacestd; intmain() { intconstN=20; inti,n,s,sum=0,ave,a[N]; cout<<"inputn: "; cin>>n; for(i=0;i {cin>>a[i]; sum=sum+a[i];} ave=sum/n; for(i=0;i if(a[i]>ave)cout< cout< s=a[0]; for(i=1;i if(s>a[i])s=a[i]; cout< return0; } #include usingnamespacestd; intmain() { inta[5],b[8],c[13],i,j,k; cout<<"第一组: "; for(i=0;i<5;i++) {cin>>a[i];} cout<<"第二组: "; for(i=0;i<8;i++) {cin>>b[i];} cout<<"合并为: "; for(i=0,j=0,k=0;i<5&&j<8;k++) {if(a[i]<=b[j]){c[k]=a[i];i++;} else{c[k]=b[j];j++;}} for(;i<5;i++){c[k]=a[i];k++;} for(;j<8;j++){c[k]=b[j];k++;} for(k=0;k<13;k++)cout< return0;} #include usingnamespacestd; intmain() { inta[5],b[8],d[13],c[13],i,j,k; cout<<"第一组: "; for(i=0;i<5;i++) {cin>>a[i];} cout<<"第二组: "; for(i=0;i<8;i++) {cin>>b[i];} cout<<"合并为: "; for(i=0,j=0,k=0;i<5&&j<8;k++) {if(a[i]<=b[j]){c[k]=a[i];i++;} else{c[k]=b[j];j++;}} for(;i<5;i++){c[k]=a[i];k++;} for(;j<8;j++){c[k]=b[j];k++;} for(i=0,j=0;i if(c[i]! =c[i+1]){d[j]=c[i];j++;} for(k=0;k return0;} 实验__8__实验报告 教学班级: _______学生学号: __________学生姓名: ___________ 实验日期: ___________实验地点: _________(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握对一组同类型的数据进行插入、删除、排序和查找等的常用算法; 2.掌握二维数值型数组的使用方法; 二、实验任务 1.输出以下杨辉三角形。 1 11 121 1331 14641 15101051 1615201561 172135352171 18285670562881 193684126126843691 2.有一个34的矩阵,要求编程序找出每一行中值最大的那个元素并与该行第1列的元素交换。 三、实验结果(源程序+注释) #include #include usingnamespacestd; intmain() { inti,j,k,a[10][10]; for(i=0;i<10;i++){a[i][0]=1;a[i][i]=1;} for(i=2;i<10;i++) for(j=1;j<=i-1;j++) a[i][j]=a[i-1][j-1]+a[i-1][j]; cout<<"YANHUITriangle: "< for(i=0;i<10;i++) {for(k=0;k<=(9-i)*3;k++)cout<<""; for(j=0;j<=i;j++) cout< cout< return0; } #include usingnamespacestd; intmain() { inta[3][4],m,j,i; for(i=0;i<3;i++) for(j=0;j<4;j++) cin>>a[i][j]; for(i=0;i<3;i++) {m=a[i][0]; for(j=1;j<=3;j++) {if(m for(j=1;j<=3;j++) if(m==a[i][j]){a[i][j]=a[i][0];a[i][0]=m;}} for(i=0;i<3;i++) {for(j=0;j<4;j++) cout<<""< return0; } 实验__9__实验报告 教学班级: _______学生学号: __________学生姓名: ___________ 实验日期: ___________实验地点: _________(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.熟练指针变量的使用,了解其编程技巧; 2.熟练指针变量做函数参数,了解其传递过程; 3.熟练指向数组元素的指针,了解指针引用数组元素的编程技巧。 二、实验任务 1.使用指针法在的一组数据中,找出其中最大值所在的位置并输出。 2.使用指针法对一维数组a中的数据按降序排列。 三、实验结果(源程序+注释) #include usingnamespacestd; intmain() { intconstN=10; int*p,q,a[N],i,w; cout<<"请输入10个数据: "; for(p=a;p>*p; p=a;q=*p; for(i=1;i<10;i++) if(q<*(p+i)){q=*(p+i);w=i+1;} for(p=a;p if(q==*p){cout<<"最大值所在第"< cout<<"值为: "< return0; } #include usingnamespacestd; intmain() { inta[10],*p,i,y; for(p=a;p>*p;p=a; for(i=0;i<10;i++)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 实验报告 实验 报告