《C++程序设计教程》实验报告.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《《C++程序设计教程》实验报告.doc》由会员分享,可在线阅读,更多相关《《C++程序设计教程》实验报告.doc(88页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验1 C+概论(2学时)一、实验目的熟悉VC+的集成开发环境,学习运行一个C+程序的步骤。了解几种运算符的使用规则。掌握变量命名规则,学会变量的定义和使用。二、实验内容通过一个最简单的程序熟悉用VC+来调试Dos程序的步骤:使用Visual C+6.0对一个C+程序进行编辑、编译、连接和运行。#include void main()cout”I am a student”endl;上机要求步骤一:新建一个win32 Console Application的工程:打开VC+开发软件,从文件菜单中点击新建菜单项,出现如图1-1所示:在右上角的工程下输入该工程的名称,如 hello,并设置该工程所
2、保存的路径。最后点击确定。图1-1步骤二:当确定后会出现要你选择工程类型的对话框,如图所示:请选择一个空的工程,即第一个选项。步骤三:当单击确定后,工程建立完毕,接下来建立程序源文件,请再单击文件菜单下的新建,出现原先出现的对话框,请选择 “文件”选项卡中的c+ source file选项,并取名,如hello。步骤四: 当确定后,就进入了源代码的编辑窗口,如图所示:步骤五:编辑好开始设置的源代码后,就进入了编译和调试阶段,请按如图所示的第二个按钮,这个称作为构件,它的功能是先进行编译,同时如果编译成功的话自动建立EXE可执行文件,同时将可执行文件和编译和连接过程中的中间代码一起放置在debu
3、g文件夹中。步骤六:执行可执行文件,单击编译条上的第四个按钮,即惊叹号,对编译成功的程序进行执行。编写程序完成变量x和变量y值的交换,调试程序并观察运行结果。分析要交换变量x和变量y的值,需使用临时变量z才能在进行。一个完整的参考程序如下:#includevoid main()int x,y,z;/Acoutxy;cout输入的x=x y=y endl;z=x;x=y;y=z; cout输出的x=x y=y endl;上机要求在键盘上分别按如下格式输入两组数据:5,3(回车)5 3(回车)观察程序运行结果。将程序中的x,y,z命名为auto,break,case分析程序出错原因。只将程序A行x
4、改为大写X,运行程序观察程序运行结果。修改程序用条件运算符输出两个数中的较大数。编程序输入x、y和z的值,计算的值。分析表达式的值不一定为整数,故程序中变量的类型应采用实型。一个完整的参考程序如下:#includevoid main() float x,y,z,e,f ,w;/Acoutx,y,z= xyz;e= (x+1)*(y-1);/Bf=x+y;/Cw=e/f;/Dcoutw=wendl;上机要求输入x5.4,y3.1,z2.7,观察程序运行结果。将程序中A行改为“int x,y,z,e,f,w ;”,输入x5.4,y3.1,z2.7,观察程序运行结果。将程序中A行改为“float x
5、,y,z,w;”, B、C、D行改为“w=(x+1)*(y-1)/x+y;”,观察程序运行结果。编写程序。从键盘输入一个三位正整数,输出其逆转数。例如:输入861,输出为168。分析输入的三位数为整数,变量类型按整型进行处理。可采用求余数的方法计算各位上的数,然后逆序输出。一个完整的参考程序如下:#includevoid main()int n,i,j,k; coutn;i=n%10;/i存放个位数n=(n-i)/10;/去掉个位数 j=n%10;/j存放十位数n=(n-j)/10;/去掉十位数k=n;/k存放百位数n=i*100+j*10+k;cout逆转数为:nendl;上机要求修改程序使
6、其先取百位数,再取十位数,最后取个位数。给出下列程序的运行结果分析本例测试了不同数据类型之间的数据转换。#includevoid main()int a=32,b;double c=2.7,d;char e=D,f;b=a+c; /Ad=a+c; f=a+e;coutb=bendl;coutd=dendl;coutf=fendl; /B coutb+d+fendl; /C上机要求修改程序A行,对b的输出值四舍五入。修改程序B行,按整型值输出f。分析C行数据的值的类型。注意:本例A行提示如下警告:“conversion from double to int, possible loss of d
7、ata.”属于正常。三、实验要求1.结合上课内容,写出程序,并调试程序,要给出测试数据和实验结果。2.整理上机步骤,总结经验和体会。3.完成实验报告和上交程序。实验2 C+简单程序设计(4学时)实验2.1简单数据类型使用(1学时)一、实验目的熟悉和理解C语言中的类型简单数据(整型、实型、字符型)、运算、表达式;掌握常见格式控制字符对输出结果的控制作用;能利用学习的数据类型,编制简单的C程序;初步学习调试方法。二、实验内容1. 输入并运行下列程序#includevoid main() int x=6, y ;cout x= xendl ; y = +x ; coutx= x y =yendl ;
8、x=6; y=x+; coutx= x y =yendl ; x=6;y = x-; coutx=x y = yendl ; x=6;y = -x; coutx=x y = yendl ;(2) #includevoid main() int a=20, b=6;a+=a; coutaendl;a=20; a-=a; coutaendl;a=20; a*=a; coutaendl;a=20; a/=b; coutaendl;a=20; a%=b; coutaendl;a=20; a=a-b; coutaendl;a=10; b=4; a+=a*=a-=a/b; coutaendl;(3) #i
9、ncludevoid main() int a=3,b=4,c=5,x,y;x=(a+bc&b=c);coutxendl;x=(a|b+c&b-c);coutxendl; 写出一个程序测试整型、字符型数据表示,并输出以验证是否正确。#includemain()int x=010,y=10,z=0x10; /* 整型数据表示 */char c1=M,c2=x4d,c3=115,c4=77,c; /* 字符型数据表示 */ /* 整型数据的输出 */printf(x=%o,y=%d,z=%xn,x,y,z);/* 数据以原进制输出,注意是否有前导0或0x */printf(x=%d,y=%d,z=
10、%dn,x,y,z); /* 数据以10进制输出,换算到10进制,结果对吗? */ /* 字符型数据的输出 */printf(c1=%c,c2=%x,c3=%o,c4=%dn,c1,c2,c3,c4); /* 数据以原进制输出,注意是否有前导0或0x */printf(c1=%c,c2=%c,c3=%c,c4=%cn,c1,c2,c3,c4); /* 结果都是什么字符?,也就是说字符可以自由的表示成几种形式? */printf(c1=%d,c2=%d,c3=%d,c4=%dn,c1,c2,c3,c4); /* 看看这些字符的10进制ASCII码,哦,ASCII码一样,同一种字符 */ /* 字
11、符型数据参与算术运算 */c=c1+32; /* 字符怎么参加了数学运算,哦,是字符对应的ASCII码整数/* 参与数学运算;结果还是一个整数另外一个字符的ASCII码 */printf(c=%c,c=%dn,c,c); /* 看看这个字符是什么?哇,M+32=m了,看看ASCII码表,原来如此! */常见预定义的转义字符对输出的控制作用。main() int a,b,c; a=5,b=6,c=7; printf(n); /*打印一个标尺以便检查输出结果 */ printf(%dnt%d %dn %d %dtb%dn,a,b,c,a,b,c); /* 打印1个字符串 */ printf(c:a
12、.txt); /* 打印一个文件名 */ printf(n);三、实验要求1.结合上课内容,写出程序,并调试程序,要给出测试数据和实验结果。2.整理上机步骤,总结经验和体会。3.完成实验报告和上交程序。实验2.2 控制结构(1学时)一、实验目的 理解并掌握程序的顺序结构程序设计理解并掌握程序的分支结构(if语句、switch语句)程序设计理解并掌握程序的循环结构(for语句、while语句、do-while语句)程序设计掌握循环语句的嵌套形式学习过程化程序设计方法进一步学习掌握查找与修改编译错误的方法二、实验内容编写程序任意输入一个三位,将其反向输出。如输入123,输出321。有一个函数如下:
13、 x (x5) y= x+6 (5=x=15)输入x的值,计算出相应的y值。编写一个程序,输入年、月,打印出该年份该月的天数。编程按分段统计学生成绩,输入为负数时结束。要求按90100、8089、7079、6069、60以下五档分别统计各分数段人数(用if语句和switch语句编写程序)。用dowhile, while, for 三种循环语句求出1+3+5+.+101的和,输出结果。编程输出如下图形:* * * * 7.输入一行字符,分别统计其中的英文大写字母,小写字母、数字字符和其他字符。三、实验要求1.结合上课内容,写出程序,并调试程序,要给出测试数据和实验结果。2.整理上机步骤,总结经验
14、和体会。3.完成实验报告和上交程序。实验2.3 数组(1学时)一、实验目的 掌握一维数组和二维数组定义的规则;掌握数组的初始化方法及数组元素的引用;熟练掌握一维数组和二维数组的使用;掌握字符数组与字符串的关系以及字符串变量的表示。二、实验内容编写一个程序,将20以内的偶数赋给数组a,然后输出此数组各元素。先定义一个含有30个整型元素的数组,依次赋予从2开始的偶数,然后按顺序每五个数的平均值放在另一个数组中,并要求按每行6个数输出结果。定义一个二维数组存储五位学生五科考试的成绩,编写程序分别取出二维数组里的元素值,经过累加之后列出总成绩,计算并输出每个同学的平均成绩,格式如下:第1个学生的总分为
15、:* 平均分为:*第2个学生的总分为:* 平均分为:*第3个学生的总分为:* 平均分为:*第4个学生的总分为:* 平均分为:*第5个学生的总分为:* 平均分为:*输入两个字符串,比较这两个字符串是否相同,并输出比较的结果。编写一个程序,由用户输入一个含有5个单词的英文句子,按照用户的要求输出句中的第i个单词。三、实验要求1.结合上课内容,写出程序,并调试程序,要给出测试数据和实验结果。2.整理上机步骤,总结经验和体会。3.完成实验报告和上交程序。实验2.4 结构体与编译预处理(1学时)一、实验目的 掌握结构的概念和结构类型的定义;掌握结构变量的定义和初始化;掌握结构体类型的概念和应用;掌握结构
16、成员的访问、结构赋值的含义。学会利用Visual C+自我发现预处理问题的方法;掌握宏定义、调用、展开。二、实验内容有5个学生,每个学生的数据包括学号、姓名、三门课成绩,从键盘输入5个学生数据,要求打印出三门课总平均成绩,以及最高分和学生的数据(包括学号、姓名、三门课成绩、平均分)。将上题按照平均分由大到小排序并按大到小排序后输出每位学生的学号、姓名、三门课成绩和平均分。定义一个带参数宏,实现两个参数的值交换。要求写出测试主函数,主函数中使用此宏完成两个数交换,输出结果。定义一个带参数宏,判断一个字符是否为字母字符,若是,结果为1,否则结果为0。要求写出测试主函数使用此宏,输出结果。三、实验要
17、求1.结合上课内容,写出程序,并调试程序,要给出测试数据和实验结果。2.整理上机步骤,总结经验和体会。3.完成实验报告和上交程序。实验3 函数与作用域(2学时)一、实验目的 掌握函数声明、定义和使用的方法;掌握形式参数与实在参数之间的对应关系;掌握函数调用时,形参、实参之间的“值传递”和“地址传递”的区别;掌握全局变量、局部变量、静态变量的使用方法。二、实验内容定义两个函数swap1和swap2,目的是实现两个整数的次序交换,其中swap1的参数是传递值参数,swap2的参数是传址参数,在程序中分别调用这两个函数,其输出结果如下所示: 初始值 :x=1,y=2 调用swap1后的结果:x=1
18、y=2 调用swap2后的结果:x=2 y=1编写一个函数,用来计算从键盘上输入的整数的阶乘。编写函数判断一个数是否是素数,在主程序中实现输入、输出。编写一个程序,设计一个函数可以计算并返回输入的4个数的平均值。给定某个年、月、日的值,例如,2006年7月11日,计算出这一天属于该年的第几天,要求写出计算闰年的函数和计算日期的函数。三、实验要求1.结合上课内容,写出程序,并调试程序,要给出测试数据和实验结果。2.整理上机步骤,总结经验和体会。3.完成实验报告和上交程序。实验4指针和引用(4学时)一、 实验目的1熟练掌握指针、地址、指针类型、void指针、空指针、引用等概念;2 熟练掌握指针变量
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+程序设计教程 C+ 程序设计 教程 实验 报告
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内