c上机实验报告.doc
《c上机实验报告.doc》由会员分享,可在线阅读,更多相关《c上机实验报告.doc(36页珍藏版)》请在三一办公上搜索。
1、成绩辽宁工程技术大学上机实验报告课程名称嵌入式程序设计(C+)学院软件学院专业嵌入式软件班级嵌软12-1学号姓名日期2015.01.17-2015.01.18目录实验一 熟悉VC+编程环境1实验二 带有循环语句的C+程序5实验三 熟悉VC+编程环境9实验四 类与对象14实验五 继承与派生19实验六 友元函数与运算符重载22实验七 指针数组26实验八 函数的定义与调用30实验一熟悉VC+编程环境实验目的(1)熟悉VC+编程开发环境。(2)掌握在VC+集成开发环境中编译、调试与运行程序的方法。(3)掌握简单的出入输出程序编写,调试,运行。实验准备(1)准备下载安装一个VC+编程软件。(2)复习书本
2、前三章,回顾C+编程基本原理及程序格式。(3)从书上挑选源程序作为实验程序。(4)准备好新建工程,设置文件保存地址。实验过程一、 程序一1. 实验内容: 新建c+源程序,使之输出一个字符串。2. 程序代码:# include void main() cout *n; cout Hello!n; cout *n;3. 调试,运行,分析结果。二、 程序二1. 实验内容: 编写一个C+程序,要求输入一个矩形的长和宽,输出面积和周长。2. 程序代码:# include void main() float a,b ,L,S; cout请输入一个矩形的长与宽:ab; L=(a+b)*2;S=a*b; co
3、ut矩形的长与宽: a和bendl;cout矩形的周长: Lendl;cout矩形的面积: Sendl;3.调试,运行,分析结果。结果及分析日一、 程序结果1. 程序一运行及结果截图:图1-1程序一运行前截图图1-2程序一运行结果截图2. 程序二运行及结果截图:图1-3程序二运行前截图图1-4程序二运行结果截图二、 程序分析1. 程序一结果分析:这是一个简单的纯输出小程序,双引号内的内容是直接原文输出,而没有引号的输出变量的值。”/n“和c语言一样是换行,c+中也可以用endl。因此结果显然就是Hello!,上下一排星号为了美观。2. 程序二结果分析: 这是一个简单的算法求面积和周长的程序,有
4、出入有输出。运行时会输出一短文字,让你从键盘输入长和宽,输入4空格再输入5后回车便得到结果,对应长宽,面积和周长。收获及体会(1)初步学会VC+开发环境中,简单程序运行的方法。(2)熟悉了VC+编程环境,会一些简单操作。(3)在编程中遇到一些问题,格式必须规范,不然提示出错,给不到结果。(4)vc+编程环境其实和c语言的差不多,严格的来说c+是更完善的c语言,因此学好c语言便是为c+打下基础,c+的学习便是知识的扩展提高。教师评语实验二带有循环语句的C+程序实验目的(1)学会编写带有简单循环语句的c+程序,能看懂带有复杂循环的c+程序。(2)掌握直到和当型循环。(3)掌握dowhile,for
5、,dowhile语句的使用方法。实验准备(1)复习c+语言程序设计的第二章,回顾算法章节的循环结构。(2)准备上机源程序,并预计结果。(3)画出对应的程序流程图。实验过程一、程序一1.实验内容: 输入一行字符,分别统计出其中英文字母、空格、数字字符和其它字符的个数。2. 程序代码:# include void main(void) char c; int i,letter=0,number=0,blank=0,other=0; cout请输入字符串:; cin.get(c); /get(c)函数用于从键盘上提取一个字符 while(c!=n) if (a=c & c=z | A=c & c=Z
6、) letter+; else if (0=c & c=9) number+; else if (c= ) blank+; else other+; cin.get(c); coutletter=letterendl; coutnumber=numberendl; coutblank=blankendl; coutother=otherendl;3. 调试,运行,分析结果。二、 程序二1. 实验内容:设有一个数列,它的前四项为0、0、2、5,以后每项分别是其前四项之和,编程求此数列的前20项。2. 程序代码:# include void main(void) long f1,f2,f3,f4,
7、i; f1=0; f2=0; f3=2; f4=5; for (i=1;i=5;i+) coutf1tf2tf3tf4tendl; f1=f1+f2+f3+f4; f2=f2+f3+f4+f1; f3=f3+f4+f1+f2; f4=f4+f1+f2+f3; 3. 调试,运行,分析结果。三、 程序三1. 实验内容: 求出1599中能被3整除,且至少有一位数字为5的所有整数。如15、51、513均是满足条件的整数。2. 程序代码:# include void main() int i,a,b,c,j=1; for (i=1;i=599;i+) if (i%3=0) a=i/100; b=i%10
8、0/10; c=i%100%10; if (a=5) | (b=5) | (c=5) coutit; if (j%5=0) coutendl; j+; coutendl;3.调试,运行,分析结果。结果及分析日一、 运行结果1. 程序一运行结果截图:图2-1程序一运行结果截图2. 程序二运行结果截图:图2-2程序二运行结果截图3. 程序三运行结果截图:图2-3程序三运行结果截图二、 程序分析1. 程序一结果分析:这个实验是用while语句统计出一行字符里字母、数字、空格及其他的个数。开始分别初始化为0,当读的字符不是”n“,进入判断语句,根据ASCLL码判断是字母还是数字,空格则是空字符,否则就
9、是其他。出现运行界面时,光标闪烁,提示输入字符串,回车得到统计结果。2. 程序二结果分析:这个实验用for循环5次,每次按行输出4个数满足后一个数是前4个数的和,从而巧妙的输出前20项。其中用t和endl控制输出格式。整个代码简单明了,结构清晰。3. 程序三结果分析: 这个实验用for循环,并用判断语句if选出符合条件的数字输出。用除和取余判定数是否符合条件。运行时,系统则自动算出符合条件的数并输出。收获及体会(1)掌握了直到和当循环的条件及区别。(2)for循环用得比较多,应为简单明了。(3)当遇到循环语句时特别要注意边界值的等号。(4)学会判断字符串中的字符是数还是字母用ASCLL码很方便
10、。(5)循环经常和判断语句连用,以选出合适的。教师评语实验三熟悉VC+编程环境实验目的(1)掌握一维数组的定义、初始化赋值、数组元素的引用方法。(2)掌握二维数组的定义、初始化赋值、数组元素的引用方法。(3)学会求数组元素中的最大值、最小值、平均值的方法。实验准备(1)复习c+语言程序设计第六章数组相关知识,回顾数组的定义及初始化方法。(2)寻找相关源程序作为实验代码。实验过程一、程序一1.实验内容: 某班第1组有10个学生,进行了C+考试,编写程序将考试成绩输入一维数组,并求出C+的平均成绩及优(90100)、良(8089)、中(7079)、及格(6069)与不及格(059)学生的人数。 实
11、验数据:90、85、80、75、70、65、60、55、50、452. 程序代码:#include #include #define N 10void main(void) float sum=0.0; int i,b=0,0,0,0,0,aN; coutInput 10 score:n; for (i=0;iai; for (i=0;i=N-1;i+) sum=sum+ai; switch (ai/10) case 10: case 9: b0+;break; case 8: b1+;break; case 7: b2+;break;case 6: b3+;break; default: b
12、4+; cout优: b0n; cout良: b1n; cout中: b2n; cout及格: b3n; cout不及格: b4n;cout平均分: sum/N; coutendl;3. 调试,运行,分析结果。二、 程序二1. 实验内容:输入一个5行5列的二维数组,编程实现:求出其中的最大值和最小值及其对应的行列位置;求出对角线上各元素之和。 实验数据:12345234563456745678567892. 程序代码:#include #include #define N 5void main(void) float aNN,max,min,sum; int i,j,r1=0,r2=0,c1=
13、0,c2=0; coutInput a55:endl; for(i=0; iN;i+) for(j=0; jaij; max=min=a00;sum=0; for(i=0; iN;i+) for(j=0; jmax)max= aij;r1=i;c1=j;else if (aijmin)min= aij;r2=i;c2=j; if (i=j | i+j=N-1) sum+=aij; coutmax=maxtrow1=r1tcol1=c1endl; coutmin=mintrow2=r2tcol2=c2endl; coutsum=sumendl;3.调试,运行,分析结果。结果及分析日一、 运行结果
14、1. 程序一运行结果截图:图3-1程序一运行结果截图2. 程序二运行结果截图:图3-2程序二运行结果截图二、 程序分析1. 程序一结果分析:本程序是个简单的成绩统计程序。用case语句给数组bi赋值,分5个等级。由于初始化都为1,每有一个在相应区间的成绩时对应元素加1,这样就知道每个等级有多少人。运行程序时,提示输入10个成绩,输完回车便得到如上图结果。2. 程序二结果分析: 本程序涉及到二维数组求最大值、最小值问题。用双重for循环给数组赋值,再用双重for循环,擂台法求出最大值和最小值,还有对角线元素的值,然后再通过cout将结果输出。运行时会先提示输入二维数组,输入数组时一行间元素空格隔
15、开,行间回车,输完回车,得到上图结果。收获及体会(1)通过这次试验,对数组有了更深的认识,加强了数组初始化的方法的记忆。(2)多维数组其实就是特殊的一维数组,只不过结构上有所不同。(3)学会了数组元素中的最大值、最小值、平均值的方法;(4)数组在编程的作用非常大,应用广,同时有了数组这样的数据群体,使得编程方便许多。教师评语实验四类与对象实验目的(1)学会类与对象的声明及调用。(2)掌握构造函数、拷贝构造函数的定义与使用方法。(3)掌握析构函数的定义与使用方法。(4)掌握类的成员函数的调用和类私有成员的定义。实验准备(1)复习c+语言程序设计第四章类与对象,回顾相关内容。(2)准备上机源程序,
16、作为实验。(3)找出程序用构造函数析构函数和拷贝构造函数部分,重点标记。实验过程一、程序一1.实验内容: 定义一个复数类Complex,复数的实部Real与虚部Image定义为私有数据成员。用复数类定义复数对象c1、c2、c3,用默认构造函数将c1初始化为c1=20+40i ,将c2初始化为c2=0+0i,用拷贝构造函数将c3初始化为c3=20+40i。用公有成员函数Dispaly()显示复数c1、c2与c3 的内容。2. 程序代码:# include class Complex private: float Real,Image; public: Complex(float r,float
17、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(); 3. 调试,运行,分析结果。二、 程序二1. 实验内容: 定义一个矩形类Rectangle,矩形的左上角(L
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 上机实验报告 上机 实验 报告

链接地址:https://www.31ppt.com/p-2384343.html