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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

c实验答案.docx

1、c实验答案创新源于实践 面向对象C+程序设计实验指导书计算机科学与技术学院面向对象C+程序设计课程组 实验指导书目录实验一 c+基础练习一、实验性质验证性实验 2学时二、实验目的和要求1. 掌握c+程序的基本格式与规范,学会编写简单的c+程序。2. 理解c+程序结构的特点。3. 熟悉c+程序基本的输入输出操作。4. 掌握c+数据类型常量和变量以及修饰符的使用方法。5. 掌握函数定义、函数调用和函数说明的方法。6. 熟悉作用域运算符的功能和基本使用方法。7. 掌握c+内存的动态分配与释放方法。8. 理解引用的概念,掌握引用的使用方法。三、实验内容:1编写一个简单程序,输出“welcome you

2、”,并给程序加一行注释“fisrt c+ program”。2编写一个完整的包含输入和输出的简单c+程序。3编写内置函数求解2x+4x+5的值,x为整数,并用主函数调用该函数。利用函数重载,重载上面的函数,x为浮点数。4编写一个程序,对一个整数数组求和,求和的结果使用全局变量sum存储,同时对整数中的奇数求和,结果使用局部变量sum存储,在主程序将两个结果输出。本题要求体会和理解作用域运算符的概念与基本使用方法。5编写一个程序动态分配一个浮点空间,输入一个数到该空间中,计算以该数为半径的圆的面积并在屏幕上显示,最后释放该空间,请使用new,delete运算符。四、实验步骤第一步:根据实验内容编

3、写下面的代码进行调试。#include void main() / first c+ program cout”n welcome you n”;第二步:下面的程序对用户输入的口令进行判断,输出不同的结果。#include void main() int pass; coutpass; if (pass=12345) cout”welcome you.”; else cout”your password is not right.”;第三步:根据题目要求编写下面的代码进行调试。#include inline int f(int x) return 2*x*x+4*x+5;void main()

4、 coutf(5)endl;第四步:根据题目要求编写下面的代码进行调试。#include inline double f(double x) return 2*x*x+4*x+5;inline double f(double x) return 2*x*x+4*x+5; void main() int x=5; double y=5.2; coutf(x)endl; coutf(y)endl;第五步:在主函数内外同时使用sum做计数器,并在主函数中同时使用。#include int a=1,2,3,4,5,6,7,8,9,10;int sum;void main() int i;int sum

5、=0;for (i=0;i10;i+) if (ai%2!=0) sum=sum+ai; sum= sum+ai; cout” sum of all is:” sum; cout” sum of odd is:”sum;第六步;根据题目要求编写代码如下。#includevoid main() double *r; r=new double; cin*r; cout”area is:”3.14*(*r)*(*r); delete r;实验二 c+简单程序设计练习一、实验性质验证性实验 2学时二、实验目的和要求1. 掌握if语句的用法。2. 掌握switch语句的用法。3. 掌握循环和多重循环的用

6、法。4. 掌握递归函数的用法。5. 掌握简单的指针操作方式。6. 掌握c+内存的动态分配与释放方法。三、实验内容根据输入的百分制按五分制的成绩输出。百分制与五分制之间的关系见下表。分别使用if分支结构和switch结构编写程序。 百分制 五分制 90100 5 8089 4 6079 3 059 2 编程求3100之间的所有素数。编写程序列出婓波那挈(fibonacci)数列的前20项。分别用迭代和数组的方法编程。输入100个整数,从小到大排列并输出。使用递归方法解决背包问题:设有一个背包可以放入的物品数量为s,现有n件物品,重量分别为w1,w2,wn,问能否从这n件物品中选择若干件放入此背包

7、,使得放入的重量之和正好为s。如果存在一种符合上述要求的选择,称此问题有解,否则问题无解。读入9个双精度的数,把他们存放在一个存储块里,然后求出它们的积。使用动态分配和指针操作。四、实验步骤# include void main() int score; char grade; cout”please input score:”score; if (score=0&score89) grade=5; else if (score79) grade=4; else if (score59) grade=3; else grade=2; cout”grade is ”gradeend; else

8、cout”data error007n”;第二步:使用switch结构解决成绩问题转换问题。# include void main() int score ,s,sun; char grade; cout”please input score:”(score); if score) s=score/10; switch (s); case 0; case 1; case 2; case 3; case 4; case 5; grade=2;break; case 6; case7; grade=3;break; case 8; grade=4;break; case 9; case 10; g

9、rade=5;break;cout”grade is ”gradeend;elsecout”data error007n”; 第三步:使用双重循环解决素数问题。 # include void main() int i,j; for (i=3;i=100;i+) for (j=2;ji-1;j+) if (i=j) couti” ”; cout”n”; 第四步:使用迭代方法解决裴波那契数列问题。 # include void main() int a,b,j,f; a=1;b=1; couta” ”b” ”; for (j=3;j=20;j+) f=a+b; a=b; b=f; coutf” ”

10、; if (j%5=0) cout”n”; /每输出5个换行 第五步:使用数组方法解决裴波那契数列问题。 # include void main() int i,fib20=1,1; /初始化 for (i=2;i20;i+) fibi=fibi-1+fibi-2; for (i=1;i=20;i+); coutfibi-1” ”; if (i%5=0) cout”n”; /每输出5个换行 第六步:使用选择法解释排序问题。 # include void main() int i,j,data120,temp; int min_a; cout”nplease input ”size” int:

11、”; for (i=0;idatai; for (i=0;isize;i+) min_a=i; for (j=i;jsize;j+) if (ata jdatamin_a) min_a=j; data min_a=datai; data i=temp; cout”nafter sorted:”; for (i=0;isize;i+) cout” ”datai” ”; 第七步:使用递归方法解决背包问题。# include void main() int f; if (s=0) f=1; else if (s0) &(n!) f=0; else if (knap (s-wn,n-1)=1) cou

12、t”nw“n”=”wn;f=1; else f=knap (s,n-1); return f; void main() int i; i=knap(29,8); if (i=0) cout”no solutionn”; /背包问题无解第八步:使用动态分配和指针操作求9个double数的乘积。 # include const size=9; double *init() /返回指针值的函数 return new double (size); /分配空间将首地址返回 void readin(double *a) /从a指向的存储单元开始读入数据 int i; cout”nplealse enter

13、 ”size” value :”; for (i=0;i*(a+i); /读入数据到a+i指向的存储单元 void product (double *arr ,int size,double *resule) /计算从arr指向的存储单元开始的 /连续size个存储单元的乘积 for (size-,*result=*(arr+size);-size=0;*result=*(arr+size); /乘积的结果放入result指向的存储单元 void main() double *x,res,*init(); if (x=init()=null) return; readin(x); produc

14、t(x,size,&res); cout”the product is :”resendl; delete x;实验三 类与对象(一)一、实验性质验证性实验、 设计性实验 4学时二、实验目的与要求1、 掌握类、类的数据成员、类的成员函数的定义方式2、 理解类成员的访问控制方式3、 掌握对象的定义和操作对象的方法4、 理解构造函数和析构函数的定义与执行过程5、 掌握重载构造函数的方法6、 了解拷贝构造函数的方法三、总的设计思想,及环境语言、工具等通过设计一个time类和一个stock类达到实验目的,使用visual c+ 或turboc 3.0集成开发环境四、实验内容:1.声明一个时间类,时间类

15、中有3个私有数据成员(hour,minute,second)和两个公有成员函数(settime和print_time).settime根据传递的3个参数为对象设置时间;print_time负责将对象表示的时间显示输出。在主函数中,建立一个时间类的对象,设置时间为9点20分30秒并显示该时间。.使用构造函数代替上面的settime成员函数,并在主函数中使用构造函数设置时间为10点40分50秒,并显示该时间。.重载时间类的构造函数(不带参数)使小时,分,秒均为0。.在时间类的析构函数中输出“goodbye!”5.定义拷贝构造函数并调用。五、主要实验步骤:. #include class timep

16、ublic: void settime(int c,int m,int s) clock=c; minute=m; second=s; void print_time() coutclock:minute:secondendl; private: int clock,minute,second;void main() time time1; time1.settime(9,20,30); time1.print_time();. #include class timepublic: time(int c,int m,int s) clock=c; minute=m; second=s; voi

17、d print_time() coutclock:minute:secondendl; private: int clock,minute,second;void main() time time1(10,40,50); time1.print_time();. #include class timepublic: time() clock=0; minute=0; second=0; time(int c,int m,int s) clock=c; minute=m; second=s; void print_time() coutclock:minute:secondendl; priva

18、te: int clock,minute,second;void main() time time1; time1.print_time(); time time2(9,20,30); time2.print_time();. #include class timepublic: time() clock=0; minute=0; second=0; time(int c,int m,int s) clock=c; minute=m; second=s; print_time() coutclock:minute:secondendl; time() coutgood byeendl; pri

19、vate: int clock,minute,second; void main() time time1; time1.print_time(); time time2(9,20,30); time2.print_time();. #include class timepublic: time() clock=0; minute=0; second=0; time(int c,int m,int s) clock=c; minute=m; second=s; print_time() coutclock:minute:secondendl; time() coutgood byeendl;

20、time (const time&p) clock=p.clock; minute=p.minute; second=p.second; private: int clock,minute,second; void main() time time1; time1.print_time(); time time2(9,20,30); time2.print_time(); time time3(9,20,30); time time4(time3); time3.print_time(); time4.print_time();实验四 类与对象(二)一、实验性质验证性实验、 设计性实验 4学时

21、二、实验目的和要求1. 掌握对象数组的定义与使用方法。2. 理解对象指针的概念,学会用指针引用对象。3. 了解this指针的工作方式。4. 掌握静态数据成员和静态成员函数的基本使用方法。5. 理解友元与友元函数的作用,掌握其使用方法。三、实验内容使用实验三中的股票类stock,定义一个对象数组存放连续5个交易日的股票信息。编写一个主函数,计算两个stock对象(前后两日)的当日收盘价,计算当日涨幅。用指针引用对象数组中的两个对象。在主函数中调用该函数计算从第2个交易日开始每天的当日涨幅。在stock类中定义一个静态数据成员,记录当前stock对象的数量。设计一个成员函数assign-stock

22、为对象赋值,其中的形式参数是对另一个stock对象的引用,使用this指针 避免对自己的赋值,在主函数中显示用assign-stock赋值的对象。定义一个友元函数计算stock对象的当日开盘价是否高于当日开盘价。若是,返回真;否则,返回假。四、实验步骤第一步:定义类stock,计算两个stock对象(前后当日)的当日收盘价并计算当日涨幅。#include “iostream.h”const n=5;class stockpublic: stock() ; stock(int n,float mi,float b,float e); void set_stock(int n,float ma,f

23、loat mi,float b,float e); void set_stock(); float get-end();void show_stock();private:int number;float max,min,begin,end;);stock:stock(int n,float ma,float mi,float b,float e) number=n; max=ma; min=mi; begin=b;end=e;void stock:set_stock(int n,float ma,float mi,float b,float e) number=n; max=ma; min=

24、mi; begin=b; end=e; float stock:get_end() return end;void stock:show_stock() coutnumber”t”; coutmax”t”; coutmin”t”; coutbegin”t”; coutendend1;void stock:set_stock() coutnumber; coutmax; coutmin; coutbegin; coutend;void main() int i; stock sl100; stock *p; for (i=0, p=s1; iset_stock(); for (i=0, p=s1

25、; ishow_stock(); for (i=1, p=s1+1; in; i+, p+) cout”n”get_end()-(p-1)-get_end()/(p-1)-get_end()*100”%”;第二步:添加静态数据成员。#include const n=2;class stock public: stock() stock ( int n, float ma , float mi, float b, float e); void set_stock ( int n, float ma, float mi, float b, float e); void set_stock(); float get_end(); void show_stock(); int get_n_count(); private: static int n_count; int number ; float max, min, begin, end;int stock:n_count=0;stock:stock( int n, float ma, float mi, float b, float e) n_count+; numb

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

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