计算机程序设计基础C++实验报告.docx
- 文档编号:23971641
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:44
- 大小:437.84KB
计算机程序设计基础C++实验报告.docx
《计算机程序设计基础C++实验报告.docx》由会员分享,可在线阅读,更多相关《计算机程序设计基础C++实验报告.docx(44页珍藏版)》请在冰豆网上搜索。
计算机程序设计基础C++实验报告
计算机程序设计基础
(C++)
实
验
报
告
软件学院
二O一O年三月
实验__1__实验报告
教学班级:
32学生学号:
20091126学生姓名:
柳冬玉
实验日期:
实验地点:
7308(机房)
指导教师签名:
__________实验成绩:
___________
一、实验目的
1.熟悉Visualstudio6.0集成开发环境;
2.学习新建和打开控制台应用程序的方法;
3.通过运行示例程序了解程序开发过程;
二、实验任务
1.输出下面图形:
2.输入一摄氏温度,输出显示所转换的华氏温度。
(提示:
摄氏温度=(华氏温度-32)×5/9)
任务2:
1.#include
2.usingnamespacestd;
3.intmain()
4.{
5.doublec,h;
6.cout<<"请输入摄氏温度(℃):
";
7.cin>>c;
8.h=c*9.0/5.0+32.0;
9.cout< 10.return0; 11.} 三、实验结果(源程序+注释) 任务1: 12.#include 13.usingnamespacestd; 14.intmain() 15.{ 16.cout<<"*"< 17.cout<<"****"< 18.cout<<"****"< 19.cout<<"*"< 20.return0; 21.} 任务1截屏: 任务2截屏: 实验__2__实验报告 教学班级: 32学生学号: 20091126学生姓名: 柳冬玉 实验日期: 2010.04.01实验地点: 7308(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握对一般数据的输入和输出格式控制方法; 2.掌握对实型数据输出形式的设置和小数位数的控制方法; 3.了解数据输入的相关注意事项。 二、实验任务 1.输入一台计算机的编号和该计算机的价格,并输出这些信息。 (如编号为10987654321,价格为5998.00元,注意此处计算机的编号作为一个整数而言超出了int所定义的变量的存储范围,因此只能用double型变量来存储,但输出时要求看见的是整数形式的编号) 2.输入三个同学的学号,计算机和英语课程的考试成绩,并输出这些信息。 要求每个同学的三个信息输出在同一行上,三行输出信息要各列对齐。 三、实验结果(源程序+注释) 任务1: 1.#include 2.#include 3.usingnamespacestd; 4.intmain() 5.{ 6.doublea,b; 7.cout<<"请输入计算机编号和价格: "; 8.cin>>a>>b; 9.cout< : fixed)< "< 10.cout< (2)<<"您输入的价格为: "< 11.//使用控制符恢复浮点数精度为小数部分2位 12.return0; 13.} 截屏: 任务2: 1.#include 2.#include 3.usingnamespacestd; 4.intmain() 5.{ 6.inti=0; 7.structstudent 8.{ 9.intnum; 10.intcomputer; 11.intenglish; 12.}std[3];//定义结构体变量 13.for(i=0;i<3;i++) 14.{ 15.printf("请输入第%d个同学的学号,计算机成绩,英语成绩: \n",i+1); 16.scanf("%d%d%d",&std[i].num,&std[i].computer,&std[i].english);//依次赋值 17.} 18.for(i=0;i<3;i++) 19.{ 20.cout.width(10); 21.cout< : right)< 22.cout.width(10); 23.cout< 24.cout.width(10); 25.cout< 26.cout< 27.} 28.return0; 29.} 实验__3__实验报告 教学班级: 32学生学号: 20091126学生姓名: 柳冬玉 实验日期: 2010.04.01实验地点: 7308(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握“处理某一或某些操作只有在特定条件成立的情况下才会被执行”的编程思路 和方法; 2.掌握“一路分支选择结构”算法的实现语句,if语句的使用方法; 3.掌握“二路分支选择结构”算法的实现语句,if-else语句的使用方法; 二、实验任务 1.有一个函数 ,输入x的值,输出相应的函数值。 (提示: x取值分大于零和小于等于0的两段,对输入的x值,在计算前应判断范围,采用不同的计算公式。 ) 2.已知一函数 ,输入x的值,求解并输出相应的y值。 (提示: 该题根据x的取值范围采用不同公式来计算y的值。 显然采用if选择结构可实现该程序。 ) 三、实验结果(源程序+注释) 任务1: 1.#include 2.usingnamespacestd; 3.intmain() 4.{ 5.intx,y; 6.cout<<"请输入x: "< 7.cin>>x; 8.if(x>0) 9.{ 10.y=x+1; 11.} 12.else 13.y=x*x; 14.cout<<"y="< 15.return0; 16.} 截屏: 任务2: 1.#include 2.usingnamespacestd; 3.intmain() 4.{ 5.intx,y; 6.cout<<"请输入x: "< 7.cin>>x; 8.if(x<1) 9.y=x; 10.else 11.{ 12.if(x>=10) 13.y=3*x-11; 14.else 15.y=2*x-1; 16.} 17.cout<<"y="< 18.return0; 19.} 实验__4__实验报告 教学班级: 32学生学号: 20091126学生姓名: 柳冬玉 实验日期: 2010.04.01实验地点: 7308(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 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 三、实验结果(源程序+注释) 任务1: 1.#include 2.usingnamespacestd; 3.intmain() 4.{ 5.charc; 6.cout<<"Menu: "< 7.cout<<"A(dd)"< 8.cout<<"D(elete)"< 9.cout<<"S(ort)"< 10.cout<<"Q(uit)"< 11.cout<<"Selectone: "; 12.cin>>c; 13.switch(c) 14.{ 15.case'A': cout<<"数据已经增加。 "< 16.case'D': cout<<"数据已经删除。 "< 17.case'S': cout<<"数据已经排序。 "< 18.case'Q': break; 19.} 20.return0; 21.} 截屏: 任务2: 1.#include 2.usingnamespacestd; 3.intmain() 4.{ 5.inta,y; 6.cout<<"请输入购买数量: "; 7.cin>>a; 8.switch((a-1)/10) 9.{ 10.case0: 11.case1: y=a*18;break; 12.case2: 13.case3: y=a*15;break; 14.case4: y=a*12;break; 15.} 16.if(a>50&&a<=200) 17.y=a*10; 18.else 19.if(a>200) 20.y=a*8; 21.cout<<"购买数量为"< 22.return0; 23.} 24.//本程序采用了分支选择结构和if结构混编,因价格选择方式>50元时排列较不规律,所以大于50元时使用的if语句作为判断。 实验__5__实验报告 教学班级: 32学生学号: 20091126学生姓名: 柳冬玉 实验日期: 2010.04.08实验地点: 7308(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握“处理某一或某些操作需要被有条件地重复执行”的编程思路和方法; 2.掌握“当型型循环结构”算法的实现语句之一while循环语句的使用方法; 3.掌握“直到型循环结构”算法的实现语句do-while循环语句的使用方法; 4.掌握“当型型循环结构”算法的实现语句之一for循环语句的使用方法。 二、实验任务 1.计算1-2+3-4+…+99-100。 2.输入一个整数,将各位数字反转后输出。 三、实验结果(源程序+注释) 任务1: 1.#include 2.usingnamespacestd; 3.intmain() 4.{ 5.inti,sum=0,k=1; 6.for(i=1;i<=100;i++) 7.{ 8.sum+=i*k; 9.k*=-1;//k每循环一次变换一次符号,初始符号为正 10.} 11.cout<<"1-2+3-4.....99-100="< 12.return0; 13.} 截屏: 任务2: 1.#include 2.usingnamespacestd; 3.intmain() 4.{ 5.chars[20]; 6.inti,a=1,sum=0; 7.cout<<"请输入数字(限10位自然数): "; 8.cin>>s; 9.for(i=0;s[i]! =0;i++) 10.if(s[i]>='0'&&s[i]<='9')//为数字 11.continue; 12.else 13.{ 14.cout<<"请输入数字! 请重新输入: "< 15.cin>>s; 16.break; 17.}//该for循环用于判断s中是否为纯数字 18.for(i=0;s[i]! =0;i++) 19.{ 20.sum+=((s[i]-48)*a);//s[i]转换成数字后与位数相乘,然后加至sum 21.a*=10;//a作为位数标识每次自乘10 22.} 23.cout<<"反转后: "< 24.return0; 25.} 实验__6__实验报告 教学班级: 32学生学号: 20091126学生姓名: 柳冬玉 实验日期: 2010.04.08实验地点: 7308(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握循环与选择结构的嵌套的使用方法; 2.掌握嵌套循环的使用方法; 3.练习continue和break语句的使用方法。 二、实验任务 1.求两个整数的最大公约数和最小公倍数。 2.用循环结构语句编程并输出下图: * ** ** ** ** ** * 三、实验结果(源程序+注释) 任务1: 1.#include 2.usingnamespacestd; 3.intmain() 4.{ 5.inti,a,b,t,xa=1,xb;//xa为最小公倍数,xb为最大公约数 6.cout<<"请输入两个数: "; 7.cin>>a>>b; 8.if(a>b){t=a;a=b;b=t;}//将a,b中大者放后 9.for(i=b/a;xa%b! =0;i++) 10.xa=a*i;//自b/a开始,倍数自增1与a相乘,若所得之数整除b,则为最小公倍数 11.for(xb=a;((b%xb==0)&&(a%xb==0))==0;xb--);//自a开始自减,若a,b均可被整除,则为最大公约数 12.cout<<"最小公倍数为: "< 13.cout<<"最大公约数为: "< 14.return0; 15.} 任务2: 1.#include 2.#defineN4//N为前三角的行数,可更改为其他数值 3.usingnamespacestd; 4.intmain() 5.{ 6.inti=1,j,k; 7.for(j=1;j<=N-i;j++)cout<<""; 8.cout<<"*"< 9.for(i=2;i<=N;i++) 10.{ 11.for(j=1;j<=N-i;j++)cout<<""; 12.cout<<"*"; 13.for(k=1;k<=2*i-3;k++)cout<<""; 14.cout<<"*"< 15.}//输出前三角,以空格星号空格星号的格式输出 16.for(i=N-1;i>=2;i--) 17.{ 18.for(j=1;j<=N-i;j++)cout<<""; 19.cout<<"*"; 20.for(k=1;k<=2*i-3;k++)cout<<""; 21.cout<<"*"< 22.}//以同样格式输出后三角,i循环方式倒序 23.for(j=1;j<=N-i;j++)cout<<""; 24.cout<<"*"< 25.return0; 26.} 实验__7__实验报告 教学班级: 32学生学号: 20091126学生姓名: 柳冬玉 实验日期: 2010.04.15实验地点: 7308(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握对一组同类型的数据进行插入、删除、排序和查找等的常用算法; 2.掌握数值型一维数组的使用方法; 二、实验任务 1.输入n个数,找出所有大于n个数的平均值的那些数及最小数。 2.设有有序(值从小到大)的两组数据,将这两组数据有序合并(合并过程数据始终保持有序)。 (提示: 两组原始数据用一维数组a,b表示,合并后的数据用一维数组c表示,ia,ib分别代表当前待放入到数组c中去的数组a,b的下标,ic指向数组c中当前存放数据的下标,如下图所示。 ) 三、实验结果(源程序+注释) 任务1: 1.#include 2.usingnamespacestd; 3.intmain() 4.{ 5.doubleaverage=0; 6. inta[100],min,i,n; 7.cout<<"请输入n的值(n<=100): "; 8.cin>>n; 9.cout<<"请输入数据: "< 10.for(i=0;i 11.{ 12.cin>>a[i]; 13.cout<<"第"< "< 14.} 15.min=a[0]; 16.for(i=0;i 17.{ 18.average+=a[i]; 19.if(a[i] 20.}//遍历相加以求出平均数及最小值 21.average=average/n; 22.cout< 23.for(i=0;i 24.{ 25.if(a[i]>average) 26.cout<<"第"< "< 27.} 28.cout<<"最小值为"< 29.return0; 30.} 任务2: 1.#include 2.usingnamespacestd; 3. 4. intmain() 5.{ 6.inta[10]={1,3,5,8,14,43,58,90,101,130},b[8]={2,4,7,9,21,57,103,200},c[18]; 7.intai,bi,i; 8.for(ai=0,bi=0,i=0;ai<10||bi<8;i++) 9.{ 10.if(a[ai]>b[bi])//依次判断,若b中目前值小于a,则取b值,且b下标自增1,a下标不变 11.{c[i]=b[bi];bi++;} 12.else//同理 13.{c[i]=a[ai];ai++;} 14.} 15.for(i=0;i<18;i++) 16.cout< 17.return0; 18.} 实验__8__实验报告 教学班级: 32学生学号: 20091126学生姓名: 柳冬玉 实验日期: 2010.05.13实验地点: 7308(机房) 指导教师签名: __________实验成绩: ___________ 一、实验目的 1.掌握对一组同类型的数据进行插入、删除、排序和查找等的常用算法; 2.掌握二维数值型数组的使用方法; 二、实验任务 1.输出以下杨辉三角形。 1 11 121 1331 14641 15101051 1615201561 172135352171 18285670562881 193684126126843691 2.有一个34的矩阵,要求编程序找出每一行中值最大的那个元素并与该行第1列的元素交换。 三、实验结果(源程序+注释) 任务1: 1.#include 2.usingnamespacestd; 3.#defineN10//预定义杨辉三角形的行数 4.voidset()//编写为无返回值函数,可自由调整输出数据占位 5.{ 6.cout.width(6); 7.} 8.voidcoutspace(inta)//输出a个空格 9.{ 10.inti; 11.for(i=0;i 12.} 13. 14.intmain() 15.{ 16.inta[N*(N+1)/2],i,j,k;//由行数计算得出需要的总个数 17.coutspace((N-1)*4);//每字符占4格,第一行前插入空格 18.a[0]=1;set();cout< 19.for(i=1,k=1;i 20.{ 21.coutspace((N-i-1)*4);//每字符占4格,输出数据前空格 22.a[k]=1;set();cout< 23.k++; 24.for(j=1;j 25.{
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 程序设计 基础 C+ 实验 报告