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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

c++程序设计实验指导.docx

1、c+程序设计实验指导C+程序设计实验指导海南软件职业技术学院Hainan Software Profession Institute(2006-2007学年度第一学期)教师姓名: 季 文 天 系 部: 软 件 工 程 系 授课专业: 软 件 技 术 授课班级: 05软件技术 3班 目录实验 一:Visual C+6.0开发环境 2实验二:C+数据类型、表达式、语句、控制结构实验 4实验三: 函数实验 5实验四: 选择排序算符 6实验五: 设计一个栈类 8实验六: 公司雇员档案管理 10实验七: 计算函数的定积分 13实验八: 函数模板 16实验九:类模板实例 18实验十:插入与提取运算符重载实

2、例 20实验十一: 文件操作实例 22实验 一:Visual C+6.0开发环境一、实验目的: 1.掌握Visual C+ 6.0的启动和退出方法 2.熟悉选单的基本操作 3.掌握用应用程序向导创建一个控制台应用项目的方法 4.掌握源代码文件的新建、打开、保存和关闭等基本操作 5.掌握Visual c+ 6.0项目的编译、连接和执行 6.掌握代码简单语法错误修正和调试的一般过程二、实验环境: Windows 2000 Professional Visual C+ 6.0 Enterprise三、实验内容 1、Visual C+开发环境 2、简单程序的调试四、试验步骤: 1、从程序菜单启动Vis

3、ual C+开发环境 2、认识Visual C+ 继承开发环境各菜单、窗口。 3、输入简单代码、编译、调试程序。1. 在“程序”表中选择Microsoft Visual C+ 6.0 , 进入到Visual C+6.0 的集成环境窗口。2. 在“File”菜单下选择“new”项(编一个新程序),出现“new”对话窗口。3. 在“new”窗口,点击“Projects”标签,在对话框中,选择“win32console Application”(win32 控制台应用);在“Projects name”位置下输入项目名称,例如 demo1(把我们的编程工作称为一个名为demo1 的Project);

4、在“Location”位置下,选择工作区空间(指定编程及运行中所生成的文件存放的的位置)的地址,就是确定新建的以demo1 为名的工作区目录的地址,完成后按“OK”。4. 在下一对话窗口中,由用户选择项目类型,例如,可选择“An emptyproject” 完成后按“Finish”按纽。5. 进入编程环境窗口,窗口分为四部分:上部:菜单和工具条;中右:视图区,是显示和编辑程序文件的操作区;中左:工作区(workspace)显示窗口,这里显示工作中与项目相关的各种文件种类,工作区窗口可用View 菜单关闭或打开;下部:输出区,程序调试过程中,进行编译、链接、运行中输出的相关信息在这里显示,它也可

5、由View 菜单关闭或打开;6. 在上部的菜单中选择“Project/Add To Project/new”,出现对话框,点击“Files”,在出现的文件类型表中选择“C+ Sonrce File”,填入项目名,“demo1”,源文件名“main”和工作区目录的位置路径,按“OK”回到主环境窗口;7. 在左侧的工作区,点“File View”,打开demo1 files : Source File /main.cpp;8. 这时,右侧的视图区是空的,把program2-1(或其它源程序)输入其中;9. 在上方的“Build”菜单下,选“compiler main.app”,进行编译;查看下部o

6、utput 区的输出信息,如有出错信息,修改源程序重新编译;10. 编译通过后,在上方的“Build”菜单下,选“Build demo.exe”,进行链接,如有出错信息,进行修改;11. 在“Build”菜单下,选“Execute demo.exe”运行程序,得到输出结果。 可使用下面代码: #include int main(int argc,char* argv) cout”Hello C+ World”endl; 4、运行课本例1_1,1_2,1_3。五、实验报告依据本节实验内容书写实验报告,包括如下内容:(1)实验目的(2)实验环境(3)操作步骤(4)遇到的问题及解决方法(5)回答实验

7、问题(6)实验心得和体会 实验二:C+数据类型、表达式、语句、控制结构实验一、实验目的: 1.掌握C+数据类型,熟悉定义变量、赋值得方法 2.学会使用C+的有关运算符以及相应的表达式 3.掌握cin和cout的输入、输出的方法,能正确使用各种格式转换 4.了解C+语言表示逻辑量的方法,熟练掌握if和switch语句5.熟悉用while语句、dowhile语句和for语句实现循环的方法6.进一步掌握控制台应用项目的创建、编译方法二、实验环境: Windows 2000 Professional Visual C+ 6.0 Enterprise三、实验内容 1、计算圆面积 2、设计一个简单的英文加

8、密程序,加密规则如下,对每一个英文字母用该字母后面的第2 个字母和这个字母本身进行异或运算,设置9 个变量,分别存储字符串WeiXiong 中的每一个字符,进行运算,检查输出结果和理论计算的结果是否一致。四、试验步骤:1、创建工程Program_2_1,输入下列代码/program 3-2.cpp#include void main()const float pai = 3.14;float radius;cout radius;float area = pai * radius * radius;cout n The area of circle is ;cout area endl; 2、

9、自行设计完成实验内容2。五、实验报告依据本节实验内容书写实验报告,包括如下内容:(1)实验目的(2)实验环境(3)操作步骤(4)遇到的问题及解决方法(5)回答实验问题(6)实验心得和体会 实验三: 函数实验一、实验目的: 1. 了解函数的意义 2熟悉并掌握函数的定义、调用 3体会函数在面向结构程序设计中的地位二、实验环境: Windows 2000 Professional Visual C+ 6.0 Enterprise三、实验内容 1、三次方根求根程序设计四、试验步骤:1、公式3.1 2、为了从系数p、q 计算实根xr,把公式(3.1)的计算分解为下面几步:1) 令 实数xrA+B ;2)

10、 令 实数A, B 分别为实数 R,S 的立方根:3) 令 R = -q/2 + a, S = -q/2a ; (3.2)4) 令 a = sqrt (q/2) *(q/2) + (q/3) * (q/3) * (q/3) ; (3.3)实际的计算过程为:用公式(5.3)计算得到a ;用公式(5.2)计算得到 R 和S ;求出 R 和 S 的立方根 A 和 B ;最后得到实根xr。3、设计函数实现求立方根。4、完整的程序代码 # includeiostream.h# includemath.hfloat cuberoot(float);void main(void)float p, q, xr

11、;coutInput parameters p,q: ;cinpq;float asqrt (q/2) *(q/2) + (q/3) * (q/3) * (q/3) ;xrcuberoot(q2a)cuberoot(q2a);coutendlThe real root of the equation isxr;float cuberoot(float x)float root , croot;const float eps1e6;crootx;dorootcroot;croot(2*rootx/(root*root)/3;while(fabs(crootroot)eps);return(cro

12、ot);五、实验报告依据本节实验内容书写实验报告,包括如下内容:(1)实验目的(2)实验环境(3)操作步骤(4)遇到的问题及解决方法(5)回答实验问题(6)实验心得和体会 实验四: 选择排序算符一、实验目的: 1. 熟悉并掌握指针的定义 2学会使用指针 3掌握排序算符的设计二、实验环境: Windows 2000 Professional Visual C+ 6.0 Enterprise三、实验内容 1、排序算法的实现四、试验步骤:1、排序算法原理: 排序的任务是把已经存在一个数组里的n 个数按从大到小的顺序排列,可以采用多种不同的方法实现,选择排序算法的思路简单,容易理解,每次总是从无序的序

13、列中选出最大者,交换到序列的左端,于是,无序的序列越来越短,经过n-1 步,达到排序的目的。2、程序实现:#include#include#includevoid ssort(float *, int );void main(void)int i, seed, n=20;coutendlseed;coutendl;srand(seed);float list20, *pf;for(i=0; in; i+)listi = rand( );coutsetw(8)listi;if (i+1)%8=0)coutendl; i=0; coutendl; pf=&list0; ssort (pf,n);

14、while ( in ) coutsetw(8)listi; i+; if (i % 8 = 0) coutendl; coutendl;void swap1(float *a, float *b) float temp; temp = *a; *a = *b; *b = temp;void ssort (float *a, int m) int i, j, index; float elem; for (i=0; im-1; i+) elem = *(a+i); index = i; for (j=i+1; jelem) elem = *(a+j); index = j; swap1(a+i

15、, a+index); 五、实验报告依据本节实验内容书写实验报告,包括如下内容:(1)实验目的(2)实验环境(3)操作步骤(4)遇到的问题及解决方法(5)回答实验问题(6)实验心得和体会 实验五: 设计一个栈类一、实验目的: 1. 熟悉并掌握类的定义 2掌握类的成员结构 3掌握类的构造函数、析构函数 4理解类和对象二、实验环境: Windows 2000 Professional Visual C+ 6.0 Enterprise三、实验内容 1、设计一个栈类四、试验步骤:1、栈的原理 栈(stack)是程序设计过程中经常碰到的一种数据结构形式,它对于数据的存放和操作有下面这样的特点: (1)它

16、只有一个对数据进行存入和取出的端口; (2)后进者先出,即最后被存入的数据将首先被取出。其形式很像一种存储硬币的小容器,每次只可以从顶端压入一个硬币,而取出也只可从顶端进行,即后进先出。2、程序代码:# includeconst int maxsize=6;class stack float datamaxsize; int top;public: stack(void); stack(void); bool empty(void); void push(float a); float pop(void);stack:stack(void) top=0; coutstack initializ

17、ed.endl;stack: stack(void) coutstack destroyedendl;bool stack:empty(void) return top=0;void stack:push(float a) if(top=maxsize) coutStack overflow!endl; return; datatop=a; top+;float stack:pop(void) if(top=0) coutAn empty stack!endl; return 0; top-; return datatop;void main( ) stack s1,s2; for(int i

18、=1;i=maxsize;i+) s1.push(2*i); for(i=1;i=maxsize;i+) couts1.pop( ) ; for(i=1;i=maxsize;i+) s1.push(2.5*i); for(i=1;i=maxsize;i+) s2.push(s1.pop( ); coutendl; do couts2.pop( ) ; while(!(s2.empty( );3、程序执行结果stack initialized.stack initialized.12 10 8 6 4 22.5 5 7.5 10 12.5 15stack destroyed.stack dest

19、royed.五、实验报告依据本节实验内容书写实验报告,包括如下内容:(1)实验目的(2)实验环境(3)操作步骤(4)遇到的问题及解决方法(5)回答实验问题(6)实验心得和体会 实验六: 公司雇员档案管理一、实验目的: 1. 熟悉并掌握继承与派生 2掌握如何处理继承与派生类的关系二、实验环境: Windows 2000 Professional Visual C+ 6.0 Enterprise三、实验内容 1、公司雇员档案管理四、试验步骤:1、公司雇员档案管理: 假设公司雇员分为:雇员(employee)、经理(manager)、工程师(engineer)、高级主管(director)。而且假定

20、只关心这几类雇员各自的如下一些数据: employee(雇员)类: 姓名、年龄、工资; manager(经理)类: 姓名、年龄、工资、行政级别; engineer(工程师)类: 姓名、年龄、工资、专业、学位; director(高级主管)类:姓名、年龄、工资、专业、学位、职务。2、程序代码:#include #include class employee /自定义的employee 类,它将作为其它几个类的基类 short age; float salary;protected: char * name;public: employee (short ag, float sa, char *

21、na) /基类构造函数 age=ag; salary=sa; name=new charstrlen(na)+1; strcpy(name,na);void print () const cout name: ; coutage : ; coutsalaryendl;employee() deletename;class manager:public employee /派生类manager int level; /行政级别public: manager(short ag, float sa, char* na, int lev) :employee (ag,sa,na) /派生类构造函数 l

22、evel=lev; void print () const employee:print(); /调用基类的print 显示“共性”数据 /调用基类(父类)的公有函数成员print 时要通过类名限定 cout level:levelendl; ;class engineer:public employee /派生类engineer char speciality,adegree; /* 分别表示专业:E-电子, M-机械, C-计算机, A-自动化专业; 学位:O-博士, M-硕士, B-学士, N-无学位 */public: engineer(short ag, float sa, char

23、* na, char sp, char ad) :employee (ag, sa, na) /派生类构造函数 speciality=sp; adegree=ad; void print () const employee:print(); /调用基类print cout speciality:specialityendl; cout academic degree:adegreeendl; ;enum ptitle PS,GM,VPS,VGM;class director:public manager /派生类director ptitle post;public: director(sho

24、rt ag, float sa, char* na, int lev, ptitle po) :manager(ag, sa, na, lev) /派生类构造函数 post=po; void print () const manager:print(); cout post:postendl; ;void main() /主函数,对所定义的类进行使用 employee emp1(23,610.5,zhang), emp2(27,824.75,zhao); manager man1(32,812.45,li,11), man2(34,1200.5,cui,7); engineer eng(26,

25、1420.10,meng,E,M); director dir(38,1800.2,zhou,2,GM); emp1.print(); /输出雇员emp1 的有关全部信息 emp2.print(); /输出雇员emp2 的有关全部信息 man1.print(); /输出管理人员man1 的有关全部信息 man2.employee:print(); /调用基类的公有函数成员print /显示man2 的有关雇员信息 eng.print(); /输出工程师eng 的有关全部信息 dir.print(); /输出高级主管dir 的有关全部信息3、程序执行结果 zhang: 23 : 610.5 zh

26、ao: 27 : 824.75 li: 32 : 812.45 level:11 cui: 34 : 1200.5 meng: 26 : 1420.1 speciality:E academic degree:M zhou: 38 : 1800.2 level:2 post:1五、实验报告依据本节实验内容书写实验报告,包括如下内容:(1)实验目的(2)实验环境(3)操作步骤(4)遇到的问题及解决方法(5)回答实验问题(6)实验心得和体会 实验七: 计算函数的定积分一、实验目的: 1. 熟悉并掌握虚函数 2学会使用虚函数处理实际问题二、实验环境: Windows 2000 Professiona

27、l Visual C+ 6.0 Enterprise三、实验内容 1、计算函数的定积分四、试验步骤: 1、要求:假设函数f(x)=4/(1+x*x),求函数f(x)的定积分: 的值。 设计一个程序,计算定积分的近似值,可以有三种近似算法供选择,它们都须首先把区间a,b分成n 个等份,于是每一小段h=(b-a)/n,函数f(x)的自变量将顺序取为:a,a+h,a+2h,a+(n-1)h,a+nh=b,共有n+1 个点。 矩形法积分近似计算公式为: sum=(f(a)+f(a+h)+f(a+2h)+ +f(a+(n-1)h)h 梯形积分计算公式为: sum=(f(a)+2f(a+h)+2f(a+2h)+2f(a+(n-1)h)+f(b)h/2 simpson 法积分公式为: sum=(f(a)+4f(a+h)+2f(a+2h)+4f(a+3h)+2f(a+4h)+2f(a+ (n-2)h + 4f(a+(n-1)h)+f(b)h/32、程序代码:#include float function(float x) /欲积分的函数 return 4.0/(1+x*x);class inte_algo /基类inte_algoprotected: float a,b; /a,b 为积分区间的左右边界 int n; /n

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

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