ImageVerifierCode 换一换
格式:DOCX , 页数:46 ,大小:184.76KB ,
资源ID:5482466      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5482466.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++实验报告1.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C++实验报告1.docx

1、C+实验报告1成绩辽宁工程技术大学上机实验报告课程名称嵌入式程序设计(C+)学院软件学院专业嵌入式软件班级嵌软11-3学号1120030305姓名郭琳琳日期2013.12.21-2013.12.22实验一C+开发环境实验目的通过本次实验(1)掌握用VC+集成开发环境编辑源程序的方法。(2)掌握在VC+集成开发环境中编译、调试与运行程序的方法。(3)理解数据类型、变量、运算符、表达式的概念。(4)学会使用cin进行数据输入操作。(5)学会用算术表达式、关系表达式、赋值表达式完成数据处理工作。(6)学会使用cout进行数据输出操作。实验准备(1)编写实验程序;(2)在VC+运行环境中,输入源程序;

2、(3)编译运行源程序;(4)写出运行结果。实验过程1.实验内容(1)设计一个C+程序,输出以下信息: *Hello! *(2)设计一个C+程序,输入三个职工的工资,求工资总额。(3)设计一个程序,从键盘输入一个矩形的长与宽,求其周长和面积。2.程序(1)新建工程为myproject1,新建c+源程序,文件名为myfile1.cpp,输入以下内容:# include void main() cout *n; cout Hello!n; cout *n;(2)算法分析提示:存放每个职工的工资变量应该是一个实型数,故工资总额变量也应该是实型数。程序如下。# include void main() i

3、nt sa1,sa2,sa3,sum; coutsa1sa2sa3; sum=sa1+sa2+sa3; coutn工资总额是:sumn;(3)程序如下:# include void main() float a,b ,L,S; cout请输入一个矩形的长与宽:ab; L=(a+b)*2;S=a*b; cout矩形的长与宽: a”和”bendl;cout矩形的周长: Lendl;cout矩形的面积: Sendl;结果及分析日(1) 运行结果如图所示:分析:新建工程为myproject1,新建c+源程序,文件名为myfile1.cpp,输入以下内容运行输出结果:*Hello! *(2) 运行结果如

4、图所示:分析:输入三个职工的工资:200 300 400输出:工资总额是:900(3) 运行结果如图所示:分析:输入矩形的长和宽为:20 50输出:矩形的长与宽:20和50矩形的周长:140矩形的面积:1000收获及体会收获:通过本次实验的三个小联系,掌握用VC+集成开发环境编辑源程序的方法;掌握在VC+集成开发环境中编译、调试与运行程序的方法;理解数据类型、变量、运算符、表达式的概念;学会用算术表达式、关系表达式、赋值表达式完成数据处理工作;学会使用cout进行数据输出操作。体会:通过书本学习的内容能够通过实验的形式真正的自己做出来,非常大的激发了我学习的兴趣。当然,在学习中也遇到了一些困难

5、,比如在第二个实验中,和我用的是单引号,这样在运行时就造成了输出矩形的长和宽时是一串乱码,后来,和同学讨论过后我改成了双引号,就能够正常输出运行了。教师评语实验二函数定义与调用实验目的通过本次实验(1)初步掌握函数的定义方法,及函数的三种调用方法;(2)理解参数传送过程中,值传送与传地址的过程与区别;(3)初步学会用递归编写程序方法;(4)学会用数组作为函数参数的编程方法。实验准备(1)编写实验程序(2)在VC+运行环境中,输入源程序;(3)编译运行源程序;(4)输入测试数据进行程序测试;(5)写出运行结果。实验过程1.实验内容:(1)分别用冒泡法(升序)、选择法(降序)、擂台法(升序)编写三

6、个对一维数组进行排序的函数,函数名为sort1()、sort2()、sort3()。再定义一个输出数组元素值的函数print()。在主函数中定义一维整型数组aN(N=10),用键盘输入10个整数给aN数组。依次调用sort1()、print()、sort2()、print()、sort3()、print(),进行升序、降序、升序的操作,并输出每次排序后的结果。(2)编写一个计算sin(x)的函数,在主函数中输入x,调用sin(x)函数计算并输出y值。 y=要求:在sin(x)函数内,将级数中各项值累加到和变量s中去,直到最后一项绝对值小于0.00001为止。.2.程序:(1)#include

7、#include #define N 10void print(int a) int i;for(i=0;iN;i+)coutsetw(5)ai;coutendl;void sort1( int a ) int i,j,temp;for(i=0;iN-1;i+) for(j=0;jaj+1) temp=aj; aj=aj+1; aj+1=temp; void sort2( int a ) int i,j,temp; for(i=0;iN-1;i+) for(j=i+1; jN;j+) if (aiaj) temp=ai; ai=aj; aj=temp; void sort3( int a )

8、int i,j,k,temp; for(i=0;iN-1;i+) k=i; for(j=i+1; jaj) k=j; if (ki) temp=ai; ai=ak; ak=temp;void main(void)int i;int b10;cout请输入10个数:endl;for(i=0;ibi;sort1(b);cout输出排好序的10个数:endl;print(b);sort2(b);cout输出排好序的10个数:endl;print(b);sort3(b);cout输出排好序的10个数:endl;print(b);(2)#include #include #include #define

9、 N 11float zsin(float y) /定义计算K阶乘的函数fac() int i; float s=0,p=1.0,t; p=y; for(t=1,i=1;fabs(1.0/t)=0.00001; i+=2) s=s+p/t; p=p*y*y; t= -t*(i+1)*(i+2); return(s);void main(void) float x,sn; coutx; sn=zsin(x); coutendlsin(x)=snendl;结果及分析日(1) 程序运行结果如图所示:分析:输入:2 8 16 7 4 9 3 10 22 11冒泡法(升序)排序:2 3 4 7 8 9

10、10 10 11 16选择法(降序)排序:16 11 10 10 9 8 7 4 3 2擂台法(升序)排序:2 3 4 7 8 9 10 1 0 11 16(2) 程序运行结果如图所示:分析:输入:x=3输出:sinx=0.0910714收获及体会 收获:本次实验我的目的在于初步掌握函数的定义方法,及函数的三种调用方法;同时理解参数传送过程中,值传送与传地址的过程与区别;初步学会用递归编写程序方法;学会用数组作为函数参数的编程方法。 在本次学习中我先编写了实验程序,然后在VC+运行环境中,输入源程序,编译运行源程序,并输入测试数据进行程序测试,经过运行测试后程序运行的结果就是我预期中的结果。

11、体会:在实验过程中遇到了很多问题,但是通过和同学们的互相讨论及向老师提问,我逐步解决了这些问题。教师评语实验三类和对象实验目的通过本次实验(1)掌握类与对象的定义与使用方法;(2)初步掌握构造函数、拷贝构造函数的定义与使用方法;(3)初步掌握析构函数的定义与使用方法;(4)理解构造函数与析构函数的调用过程。实验准备(1)编写实验程序;(2)在VC+运行环境中,输入源程序;(3)编译运行源程序;(4)输入实验测试数据,写出运行结果。实验过程1实验内容:(1)定义一个复数类Complex,复数的实部Real与虚部Image定义为私有数据成员。用复数类定义复数对象c1、c2、c3,用默认构造函数将c

12、1初始化为c1=20+40i ,将c2初始化为c2=0+0i,用拷贝构造函数将c3初始化为c3=20+40i。用公有成员函数Dispaly()显示复数c1、c2与c3 的内容。(2)定义一个学生成绩类Score,描述学生成绩的私有数据成员为学号(No)、姓名(Name8)、数学(Math)、物理(Phi)、数据结构(Data)、平均分(ave)。定义能输入学生成绩的公有成员函数Write(),能计算学生平均分的公有成员函数Average(),能显示学生成绩的公有成员函数Display()。在主函数中用Score类定义学生成绩对象数组s3。用Write()输入学生成绩,用Average()计算每

13、个学生的平均分,最后用Display()显示每个学生的成绩。(3)定义一个矩形类Rectangle,矩形的左上角(Left,Top)与右下角坐标(Right,Bottom)定义为保护数据成员。用公有成员函数Diagonal()计算出矩形对角线的长度,公有成员函数Show()显示矩形左上角与右下角坐标及对角线长度。在主函数中用new运算符动态建立矩形对象r1,初值为(10,10,20,20)。然后调用Show()显示矩形左上角与右下角坐标及对角线长度。最后用delete运算符回收为矩形动态分配的存储空间。2程序:(1)# include class Complex private: float

14、Real,Image; public: Complex(float r,float i) /定义有参构造函数 Real=r; Image=i; Complex(Complex &c) /定义拷贝构造函数 Real=c.Real; Image=c.Image; Complex() /定义无参构造函数 Real=0; Image=0; void Display() coutReal+Imagein; ;void main(void) Complex c1(10,20),c2,c3(c1); c1.Display(); c2.Display(); c3.Display(); (2) # includ

15、e # include class Score private: int No; char Name8; float Math,Phi,Data,Ave; public: void Write(int no,char name,float math,float phi,float data) No=no; strcpy(Name,name); Math=math; Phi=phi; Data=data; void Average(void) Ave=(Math+Phi+Data)/3; void Display() coutNotNametMatht; coutPhitDatatAven; ;

16、void main(void) int i,no; char name8; float math,phi,data; Score s3; coutInput 3 student datan; for (i=0;inonamemathphidata; si.Write(no,name,math,phi,data); si.Average(); cout学号 姓名 数学 物理 数据结构 平均分n; for (i=0;i3;i+) si.Display(); (3)# include # include class Rectangle protected: float Left,Top; float

17、 Right,Bottom; public: Rectangle(float l,float t, float r,float b) Left=l;Top=t; Right=r;Bottom=b; Rectangle(Rectangle & R) Left=0;Top=0; Right=R.Right;Bottom=R.Bottom; double Diagonal() return sqrt(Left-Right)*(Left-Right)+(Top-Bottom)*(Top-Bottom); void Show() cout(Left,Top)=(Left,Top)n; cout(Righ

18、t,Bottom)=(Right,Bottom)n; cout Diagonal= Diagonal()Show(); delete r1; 结果及分析日(1) 程序运行结果如图所示:分析:定义一个复数类Complex,复数的实部Real与虚部Image定义为私有数据成员。用复数类定义复数对象c1、c2、c3,用默认构造函数将c1初始化为c1=20+40i ,将c2初始化为c2=0+0i,用拷贝构造函数将c3初始化为c3=20+40i。用公有成员函数Dispaly()显示复数c1、c2与c3 的内容。(2) 程序运行结果如图所示:分析:定义了一个学生成绩类Score,描述学生成绩的私有数据成员

19、为学号(No)、姓名(Name8)、数学(Math)、物理(Phi)、数据结构(Data)、平均分(ave)。能计算学生平均分的公有成员函数Average(),能显示学生成绩的公有成员函数Display()。在主函数中用Score类定义学生成绩对象数组s3。用Write()输入学生成绩,用Average()计算每个学生的平均分,最后用Display()显示每个学生的成绩。(3) 程序运行结果如图所示:分析:定义一个矩形类Rectangle,矩形的左上角(Left,Top)与右下角坐标(Right,Bottom)定义为保护数据成员。用公有成员函数Diagonal()计算出矩形对角线的长度,公有成

20、员函数Show()显示矩形左上角与右下角坐标及对角线长度。在主函数中用new运算符动态建立矩形对象r1,初值为(10,10,20,20)。然后调用Show()显示矩形左上角与右下角坐标及对角线长度。最后用delete运算符回收为矩形动态分配的存储空间。运行结果如图所示。收获及体会收获:通过本次实验我掌握了类与对象的定义与使用方法;初步掌握构造函数、拷贝构造函数的定义与使用方法;初步掌握析构函数的定义与使用方法;理解构造函数与析构函数的调用过程。 体会:在实验中遇到了一些问题,但通过自己查找书籍,仔细查找,均一一解决。教师评语实验四数组与指针实验目的通过本次实验(1)掌握一维、二维数组指针变量的

21、定义格式与引用方法;(2)掌握字符串指针变量的定义格式与引用方法;(3)学会用数组指针变量完成数组元素的数据处理,如求和、求最大值、最小值等;(4)学会用字符串指针变量处理字符串的比较、连接与测长度;(5)掌握指针与数组作为函数参数的程序编写方法。实验准备(1)编写实验程序(2)在VC+运行环境中,输入源程序;(3)编译运行源程序;(4)输入测试数据进行程序测试;(5)写出实验输入数据与运行结果。实验过程1.实验内容(1)编写程序,用4种方式求整型一维数组a10的平均值。4种方式是指4种不同的数组元素表达方式。(2)(2)编写程序,用表7.1中的数组元素表示法中的第一种求实型二维数组a33两条

22、对角线元素之和。(3)用指针变量编写下列字符串处理函数: 字符串拼接函数,void str_cat( char *p1,char *p2)函数体 字符串比较函数,int str_cmp( char *p1,*char *p2) 函数体 取字符串长度函数,int str_len( char *p)函数体在主函数中输入两个字符串,对这两个字符串进行比较,并输出比较结果。然后将两个字符串进行拼接,输出拼接后的字符串及其长度。2.程序(1)#include #define N 10void main(void) float aN,sum,*p; coutInput data:; for (p=a;p*

23、p; for (p=a,sum=0;pa+N;p+) sum=sum+*p; coutaverage=sum/Nendl;(2)#include void main(void) float a33,sum=0; int i,j; coutInput Data:n; for (i=0;i3;i+) for (j=0;j*(ai+j); /用行首地址+位移,即ai+j for (i=0;i3;i+) for (j=0;j3;j+) if (i=j|i+j=2) sum+=*(ai+j); coutsum=sumn;(3)# include int str_cmp(char *p1,char *p2

24、) while(*p1=*p2) p1+; p2+; if (*p1*p2) return 1; else if (*p1=*p2) return 0; else return -1;void str_cat(char *p1,char *p2) /将p2所指的字符串连接到p1所指的字符串串末尾 while(*p1+); p1-; while(*p2!=0) *p1+=*p2+; *p1=0;int str_len(char *p) int length=0; while(*p!=0) p+; length+; return length;void main(void) char s120,s

25、240; couts1; couts2; if (str_cmp(s1,s2)=1) coutString2endl; else if (str_cmp(s1,s2)= -1) coutString2String1endl; else coutString1=String2endl; str_cat(s1,s2); coutString1+String2 =s1endl; cout String1 Length=str_len(s1)endl;结果及分析日程序运行结果如图所示:分析:编写程序,用4种方式求整型一维数组a10的平均值。4种方式是指4种不同的数组元素表达方式。编写程序,用表7.1中

26、的数组元素表示法中的第一种求实型二维数组a33两条对角线元素之和。用指针变量编写下列字符串处理函数:字符串拼接函数,void str_cat( char *p1,char *p2)函数体;字符串比较函数,int str_cmp( char *p1,*char *p2) 函数体;取字符串长度函数,int str_len( char *p)函数体。在主函数中输入两个字符串,对这两个字符串进行比较,并输出比较结果。然后将两个字符串进行拼接,输出拼接后的字符串及其长度如图所示。收获及体会收获:通过本次实验的三个小练习,我熟练掌握了一维、二维数组指针变量的定义格式与引用方法;字符串指针变量的定义格式与引用方法;学会用数组指针变量完成数组元素的数据处理,如求和、求最大值、最小值等;学会用字符串指针变量处理字符串的比较、连接与测长度;掌握指针与数组作为函数参数的程序

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1