计算机C++程序设计基础实验报告.doc

上传人:yyf 文档编号:5027225 上传时间:2020-01-29 格式:DOC 页数:42 大小:429.50KB
返回 下载 相关 举报
计算机C++程序设计基础实验报告.doc_第1页
第1页 / 共42页
计算机C++程序设计基础实验报告.doc_第2页
第2页 / 共42页
计算机C++程序设计基础实验报告.doc_第3页
第3页 / 共42页
计算机C++程序设计基础实验报告.doc_第4页
第4页 / 共42页
计算机C++程序设计基础实验报告.doc_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《计算机C++程序设计基础实验报告.doc》由会员分享,可在线阅读,更多相关《计算机C++程序设计基础实验报告.doc(42页珍藏版)》请在三一文库上搜索。

1、计算机程序设计基础(C+)实验报告软件学院二O一O年三月实验_1_实验报告教学班级: 1 学号: 20090194 学生姓名:实验日期: 2010/3/26 实验地点: 7308 (机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1熟悉Visual studio 6.0集成开发环境;2学习新建和打开控制台应用程序的方法;3通过运行示例程序了解程序开发过程;二、实验任务1 输出下面图形:2输入一摄氏温度,输出显示所转换的华氏温度。 (提示:摄氏温度=(华氏温度-32)5/9)三、实验结果(源程序 + 注释)#includeusing namespace std;void main( ) co

2、ut * endl; cout * * * * endl; cout * * * * endl; cout * endl;#includeusing namespace std;void main()double a,b;couta;b=a*9/5+32;cout华氏温度为bendl;实验_2_实验报告教学班级:1 学生学号:20090194学生姓名:李洪科实验日期:2010/04/02 实验地点:7308(机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1掌握对一般数据的输入和输出格式控制方法;2掌握对实型数据输出形式的设置和小数位数的控制方法;3了解数据输入的相关注意事项。二、实验任务

3、1. 输入一台计算机的编号和该计算机的价格,并输出这些信息。(如编号为10987654321,价格为5 998.00元,注意此处计算机的编号作为一个整数而言超出了int所定义的变量的存储范围,因此只能用double型变量来存储,但输出时要求看见的是整数形式的编号)2. 输入三个同学的学号,计算机和英语课程的考试成绩,并输出这些信息。要求每个同学的三个信息输出在同一行上,三行输出信息要各列对齐。三、实验结果(源程序 + 注释)#includeusing namespace std;void main()double a ,b;cout请输入计算机的编号和该计算机的价格ab;cout计算机的价格:

4、bendl;cout.precision(0);coutfixed;cout计算机的编号:aendl;. #include#includeusing namespace std;void main()int a1,a2,a3;cout请输入三个同学的学号:a1a2a3;float b1,b2,b3;cout请输入三个同学的计算机成绩:b1b2b3;float c1,c2,c3;cout请输入三个同学的英语成绩:c1c2c3;coutsetw(10)a1setw(10)b1setw(10)c1endl;coutsetw(10)a2setw(10)b2setw(10)c2endl;coutsetw

5、(10)a3setw(10)b3setw(10)c3endl;实验_3_实验报告教学班级:1 学生学号:20090194 学生姓名:李洪科实验日期:2010/04/09实验地点:7308(机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1. 掌握“处理某一或某些操作只有在特定条件成立的情况下才会被执行”的编程思路 和方法;2. 掌握“一路分支选择结构”算法的实现语句,if语句的使用方法;3. 掌握“二路分支选择结构”算法的实现语句,if-else语句的使用方法;二、实验任务1. 有一个函数,输入x的值,输出相应的函数值。(提示:x取值分大于零和小于等于0的两段,对输入的x值,在计算前应判断

6、范围,采用不同的计算公式。)2已知一函数,输入x的值,求解并输出相应的y值。(提示:该题根据x的取值范围采用不同公式来计算y的值。显然采用if选择结构可实现该程序。)三、实验结果(源程序 + 注释)#includeusing namespace std;void main() double x,y; cout请输入x=:x;if(x0) y=x+1;else y=x*x; couty=yendl;#includeusing namespace std;void main() double x,y; cout请输入x=:x;if(x1) y=x;else if(1=x10)y=2*x-1; el

7、se y=3*x-11;couty=yendl;实验_4_实验报告教学班级:1 学生学号:20090194学生姓名:李洪科实验日期:2010/4/16 实验地点:7308(机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1掌握“多路分支选择结构”算法的实现语句,switch语句的使用方法;2学习通过程序调试来跟踪程序运行过程,查看程序运行过程中各个变量的取值变化 情况。二、实验任务1 实现一个简单的菜单程序,运行时显示Menu:A(dd) D(elete) S(ort) Q(uit)Select one:要求用户提供相应的输入,并在用户输入A,D,S时分别提示“数据已经增加、删除、排序”,

8、输入为Q时程序结束。(提示:该程序要求用户输入特定的A,D,S,Q字符显示相应信息,所以适合采用switch结构。)2 某公司进行产品销售,既零售也批发,零售的价格与批发的价格不同,购买产品数量的多与少其价格也不同。具体标准见下表:批 发 商零 售 商数量(个)单位价格(元/个)数量(个)单位价格(元/个)502001012018200以上8204015405012三、实验结果(源程序 + 注释)#includeusing namespace std;void main()cout.width(10);coutmenu:endl;cout.width(17);coutA(dd)endl;cou

9、t.width(20);coutD(elete)endl;cout.width(18);coutS(ort)endl;cout.width(18);coutQ(uit)op;switch(op) caseA: cout数据已增加endl;break; caseD: cout数据已删除endl;break; cases: cout数据已排序endl;break; caseQ: cout程序结束endl; break; default: cout非法输入endl;第二题:#includeusing namespace std;void main()int a,b;cina; if(a=1&a=20

10、)b=a*18; cout客户类型为:零售商endl;cout产品单价为18应付总额为:b20&a=40) b=a*15; cout客户类型为:零售商endl;cout产品单价为15应付总额为:b40&a=50) b=a*12; cout客户类型为:零售商endl; cout产品单价为12应付总额为:b50&a=200) b=a*10; cout客户类型为:批发商endl; cout产品单价为10应付总额为:bendl; else b=a*8; cout客户类型为:零售商endl; cout产品单价为8应付总额为:bendl; 实验_5_实验报告教学班级:1 学生学号:20090194 学生姓

11、名:李洪科实验日期:2010/4/23实验地点:7308(机房)指导教师签名:_ 实验成绩:_ 一、实验目的1掌握“处理某一或某些操作需要被有条件地重复执行”的编程思路和方法;2掌握“当型型循环结构”算法的实现语句之一while循环语句的使用方法;3掌握“直到型循环结构”算法的实现语句do-while循环语句的使用方法;4掌握“当型型循环结构”算法的实现语句之一for循环语句的使用方法。二、实验任务1计算123499100。#include using namespace std; void main( ) int sum=0,i=1; int sign=1; for(i=1;i=100;i+

12、) sum=sum+i*sign; sign=sign*(-1); coutsum=sumendl;#include using namespace std; void main( ) int i,n,sum,sign; cout请输入一个整数:n; i=1;sum=0;sign=1; while(i=n) sum=sum+i*sign; sign=sign*(-1) ;i=i+1; coutsum=sumendl;2输入一个整数,将各位数字反转后输出。#includeusing namespace std;void main() int n,i,m=0;cout请用户输入一个整数n:n;wh

13、ile (n=1)i=n%10; n=(n-i)/10; m=10*m+i;cout该整数倒转之后的数据为:mendl;三、实验结果(源程序 + 注释)实验_6_实验报告教学班级 1 学生学号:20090194 学生姓名:_实验日期:_ 实验地点:_(机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1掌握循环与选择结构的嵌套的使用方法;2掌握嵌套循环的使用方法;3练习continue和break语句的使用方法。二、实验任务1. 求两个整数的最大公约数和最小公倍数#include using namespace std;void main( ) int p, q, r; int a,b;co

14、ut Please input two integer numbers: pq;a=p;b=q; if(pq) r=p; p=q; q=r; r=p%q; while(r!=0) p=q; q=r; r=p%q; cout 两个正整数的最大公因数是:q endl;cout 两个正整数的最小公倍数是:a*b/q endl;。2. 用循环结构语句编程并输出下图: * * * * * * * * * * *#include using namespace std;void main( )int i,j;for(i=0;i=3;i+)for(j=0;j3-i;j+)cout ; for(;j=i+3;

15、j+) if(j=i+3|j=3-i)cout*; else cout ; coutendl;for(i=0;i=2;i+)for(j=0;ji+1;j+)cout ;for(;j=5-i;j+)if(j=i+1|j=5-i)cout*; else cout ;coutendl;三、实验结果(源程序 + 注释)实验_7_实验报告教学班级:_ 学生学号:_ 学生姓名:_实验日期:_ 实验地点:_(机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1掌握对一组同类型的数据进行插入、删除、排序和查找等的常用算法;2掌握数值型一维数组的使用方法;二、实验任务1. 输入n个数,找出所有大于n个数的平均

16、值的那些数及最小数。#includeusing namespace std;void main() int i,m,n; double a30,sum=0.0,ave; coutn; cout请输入数据:; for(i=0;iai; for(i=0;in;i+) sum=sum+ai; ave=sum/n; cout大于平均数的数; for(i=0;iave) coutai ; coutendl; m=a0; for(i=1;in;i+) if(aim)m=ai; cout最小的数为mendl;2. 设有有序(值从小到大)的两组数据,将这两组数据有序合并(合并过程数据始终保持有序)。(提示:两

17、组原始数据用一维数组a,b表示,合并后的数据用一维数组c表示,ia,ib分别代表当前待放入到数组c中去的数组a,b的下标,ic指向数组c中当前存放数据的下标,如下图所示。)#include #include using namespace std;void main()int i,m,n,ia,ib,ic;float a50,b50,c100;coutm;cout请从小到大输入数组a的数:n;for(i=0;iai;coutn;cout请从小到大输入数组b的数:n;for(i=0;ibi;ia=0;ib=0;ic=-1;while(iam&ibn)ic=ic+1;if(aia=bib)cic=

18、aia;ia=ia+1;elsecic=bib;ib=ib+1;if(iam)for(i=ia;im;i+)ic=ic+1;cic=ai;else if(ibn)for(i=ib;in;i+)ic=ic+1;cic=bi;for(i=0;i=ic;i+)coutsetw(8)ci;if(i+1)%5=0)coutendl;三、实验结果(源程序 + 注释)实验_8_实验报告教学班级:_ 学生学号:_ 学生姓名:_实验日期:_ 实验地点:_(机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1掌握对一组同类型的数据进行插入、删除、排序和查找等的常用算法;2掌握二维数值型数组的使用方法;二、实验任

19、务1. 输出以下杨辉三角形。11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 11 6 15 20 15 6 11 7 21 35 35 21 7 11 8 28 56 70 56 28 8 11 9 36 84 126 126 84 36 9 1#include#include iomanipusing namespace std;void main()int i,j,a1010;for(i=0;i10;i+)ai0=1;aii=1;for(i=2;i10;i+)for(j=1;ji;j+)aij=ai-1j-1+ai-1j;for(i=0;i10;i+)for(j=

20、0;j=9-i;j+)coutsetw(3);for(j=0;j=i;j+)coutsetw(6)aij;coutendl;2. 有一个3*4的矩阵,要求编程序找出每一行中值最大的那个元素并与该行第1列的元素交换。三、实#include iostream.hvoid main()int a45,i,j,x,max;cout请输入一个3*4的矩阵;for(i=1;i4;i+)for(j=1;jaij;for(i=1;i4;i+) max=1;for(j=1;j5;j+)if(aimaxaij) max=j;x=ai1;ai1=aimax;aimax=x;cout第i行的最大数为ai1;coute

21、ndl;for(i=1;i4;i+)for(j=1;j5;j+)coutaij ;coutendl;验结果(源程序 + 注释)实验_9_实验报告教学班级:_ 学生学号:_ 学生姓名:_实验日期:_ 实验地点:_(机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1熟练指针变量的使用,了解其编程技巧;2熟练指针变量做函数参数,了解其传递过程;3熟练指向数组元素的指针,了解指针引用数组元素的编程技巧。二、实验任务1. 使用指针法在的一组数据中,找出其中最大值所在的位置并输出。#include iostream.hvoid main ()int a20,i,max,*p,N;cout请输入一组数据

22、的个数N;cout请输入该组数据endl;for(i=0;iai;max=a0;for(p=a;pa+N;p+) if(max*p) max=*p;cout该组数据的最大值为 : max其位置为 : pendl;2. 使用指针法对一维数组a中的数据按降序排列。#include iostream.hvoid main ()int a20,i,*p,N,x;cout请输入ai组数据的个数N;cout请输入该组数据endl;for(p=a;p*p;for(i=0;iN;i+)for(p=a;pa+N;p+) if (ai*p) x=ai;ai=*p;*p=x;coutai中的数据按降序排列为 : ;

23、for(p=a;pa+N;p+) cout*p ;coutendl;三、实验结果(源程序 + 注释)实验_10_实验报告教学班级:_ 学生学号:_ 学生姓名:_实验日期:_ 实验地点:_(机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1了解存放常用的系统函数的头文件;2掌握常用系统函数的功能和使用方法;3掌握返回值的概念和运用。二、实验任务1. 接受用户输入的数值,计算该数的绝对值和该绝对值以10为底的对数值,并输出计算结果。(提示:使用内置的绝对值函数和对数函数。)#include#includevoid main()double x,s,t; coutx; if(x=0) t=x;

24、else t=-x; s=log10(t); cout该数的绝对值为:tendl; cout该数的绝对值以10为底的对数值是:sendl;2. 编写两个子函数,分别求两个整数的最大公约数和最小公倍数,并编写主函数调用这两个子函数,输出结果,两个整数由键盘输入。#includevoid main()int a=0,b=0,c=0,d=0; coutab; int zdg(int,int); int zxg(int,int); c=zdg(a,b); d=zxg(a,b); cout这两个数的最大公约数是:cendl; cout这两个数的最小公倍数是:dendl;int zdg(int a,int

25、 b)int c; if(ab) c=a;a=b;b=c; while(b!=0) c=a%b; a=b; b=c; return a;int zxg(int a,int b)int c,num1,num2;num1=a;num2=b; if(ab) c=a;a=b;b=c; while(b!=0) c=a%b; a=b; b=c; return num1*num2/a;#includevoid main()int a=0,b=0,c=0,d=0; coutab; int zdg(int,int); int zxg(int,int); c=zdg(a,b); d=zxg(a,b); cout这

26、两个数的最大公约数是:cendl; cout这两个数的最小公倍数是:dendl;int zdg(int a,int b)int c; if(ab) c=a;a=b;b=c; while(b!=0) c=a%b; a=b; b=c; return a;int zxg(int a,int b)int c,num1,num2;num1=a;num2=b; if(ab) c=a;a=b;b=c; while(b!=0) c=a%b; a=b; b=c; return num1*num2/a;三、实验结果(源程序 + 注释)实验_11_实验报告教学班级:_ 学生学号:_ 学生姓名:_实验日期:_ 实验地

27、点:_(机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1掌握自定义有返回值函数的概念、定义及使用;2掌握自定义void函数的概念、定义及使用; 3掌握自定义有返回值函数与自定义void函数在定义及使用上的区别;4掌握函数参数间的数据传递。二、实验任务1. 设计一个程序,用来计算输入的两个整数的加、减、乘、除,每一个计算要单独用一个用户自定义的void函数来实现,接收输入数据也要用void函数来实现,输入数据中不包含0。#include using namespace std;void a(int x,int y)coutinput x,y:endl;void b(int x,int y)

28、coutx+y=:;void c(int x,int y)coutx-y=:;void d(int x,int y)coutx*y=:;void e(int x,int y)coutxy;m=x+y;n=x-y;p=x*y;q=x/y;b(x,y);coutmendl;c(x,y);coutnendl;d(x,y);coutpendl;e(x,y);coutqendl;return 0;2. 将键盘输入的10个整数按从小到大的顺序排序(冒泡法),要求排序功能用自定义函数实现。#include using namespace std;void p(int a,int n)int t=0;for(

29、int i=0;in-1;i+)for(int j=i+1;jaj)t=ai;ai=aj;aj=t;int main()int i,a10;coutinput 10 unmbers:endl;for(i=0;iai;p(a,10);for(i=0;i10;i+)coutaiendl;return 0;三、实验结果(源程序 + 注释)实验_12_实验报告教学班级:_ 学生学号:_ 学生姓名:_实验日期:_ 实验地点:_(机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1建立文件、读写文件的操作;2文件指针的定位操作。二、实验任务1编写一个程序,用来从键盘读取本班同学的期末成绩,并把该成绩保存在score.dat文件中。Score.dat文件内容如下:numberChineseEnglishC18776672678765376888744689882编写一个程序,用来读取上题创建的score.dat数据文件,并计算其平均成绩和期末总成绩。把计算的结果存在statistics.dat文件中,并输出成绩有不及格的学生的学号。其格式如下:numberChineseEnglishCtotalaverage187766723076.67267876521973376888725183.67446898822374.3三、实验结果(源程序 + 注释)4141

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1