C++课程实践作业.doc_第1页
C++课程实践作业.doc_第2页
C++课程实践作业.doc_第3页
C++课程实践作业.doc_第4页
C++课程实践作业.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

江苏科技大学课程实践报告设计题目:计算机程序设计实践(C+)设计时间:学 院:专业班级:学生姓名:学号:指导老师: 第一题:一、实践任务:1、试建立一个类PP,求出下列多项式的前n项的值。 1 n=0Pn(x)= x n=1 (2n-1)xPn-1(x)-(n-1)Pn-2(x))/n n1具体要求如下:私有数据成员。int n:前若干项的项数。double x:存放x的值。double *p:根据n的大小动态申请存放Pn(x)前n项的数组空间。共有成员函数:PP(int num,double x1):构造函数,初始化数据成员n和x,使p指向动态申请的数组空间。PP:析构函数,释放p指向的动态内存空间。double fun(int n1,double x1):递归函数,用于求多项式Pn(x)的第n1项。注意:将递归公式中的n用作函数参数 。本函数供process()函数调用。void process():完成求前n项的工作,并将它们存放到p指向的动态数组中。 void show():输出n和x,并将前n项以每行4个数的形式输出到屏幕上。在主函数中完成对该类的测试。先输入num和x1,并定义一个PP类的对象items,用nun和x1初始化items的成员n和x,调用items的成员函数,求出并输出多项式前nun项的值。二、系统设计:类的描述与定义:class PP int n; double x; double *p;public:PP(int num,double x1)n=num;x=x1;p=new doublen;PP()deletep;double fun(int n1,double x);void process();void show();fun函数定义:double fun(int n1,double x) if(n1=0)return 1; else if(n1=1)return x; else return (2*n1-1)*x*fun(n1-1,x)-(n1-1)*fun(n1-2,x)/n1;process函数定义:void process() for(int i=0;in;i+)pi=fun(i,x);show函数定义:void show() int count=0; cout输出n和x的值为:ntxn; for(int i=0;in;i+) coutpit; count+; if(count%4=0) coutn; coutn;main函数定义:void main() int num; double x1; cout请输入num和x1的值为:; cinnumx1; PP a(num,x1); a.fun(num,x1); cess(); a.show();三、系统测试:四、实践小结:掌握递归函数调用方法、条件语句的选择五、源程序清单:第二题:一、实践任务:2、试建立一个类SP,求f(n,k)=1k+2k+3k+nk,另有辅助函数power()用于求mn。具体要求如下。私有成员数据。int n,k:存放公式中n和k的值。公有成员函数。SP(int n1,int k1):构造函数,初始化成员数据n和 power(int m,int n):求 fun():求公式的累加和。void show():输出求得的结果。在主程序中定义对象s,对该类进行测试。二、系统设计:类的描述与定义:class SP int n,k;public: SP(int n1,int k1)n=n1,k=k1; int power(int m,int n); int fun(); void show();power函数定义:int power(int m,int n) int p=1; for(int i=1;in+1;i+) p=p*m; return p; fun函数定义:int fun(int n,int k) int s=0; for(int j=1;j=n;j+) s+=power(j,k); return s; show函数定义:void show() cout和为fun(n,k)endl; main函数定义:void main() int n,k; cinnk; SP s(n,k); s.power(n,k); s.fun(n,k); s.show();三、系统测试:四、实践小结:掌握函数嵌套调用方法五、源程序清单:第二十五题:一、实践任务: 25.建立一个类NUM,并统计特定序列中相同字符出现的次数。具体要求如下。私有数据成员。char date25:随机生成25个字符。int num128:储存每个字符出现的次数。公有数据成员。NUM(int data):构造函数,同时初始化数组data。void process():统计数组data中每个字符出现的次数,并保存到数组num中。void print():输出每个出现的字符及其出现的次数,每行输出5个,没有出现过的字符不显示。在主程序中定义一个对象,对该类进行测试。二、系统设计:类的描述与定义:NUM(int data1)for(int i=0;i=25;i+)datai=data1i;numi=0;void process();void print();process函数定义:void process()for(int i=0;i25:i+)if(datai=0datai=9)int j=datai;numj+;print函数定义:void print()for(int i=0;i10:i+)couti”出现的次数:”numit;if(i+1)%5=0)coutendl;main函数定义void main()int data25=5,6,8,7,1,2,3,6,9,7,1,0,9,7,4,1,8,6,4,6,5,7,1,2,8;NUM a(data);cess();a.print();三、系统测试:四、实践小结:掌握数据出现次数记录的方法,数据判断方法。五、源程序清单:第二十六题:一、实践任务:26.建立一个类NUM,随机生成25个字符序列,并为特定序列进行排序。具体要求如下。私有数据成员。int data25:随机生成25个字符。公有数据成员。NUM(int data):构造函数,初始化数组data。void process():为数组data进行排序,要求按照ASCII编码进行升序排序。void print():输出数组data,每行输出5个字符。在主函数中定义一个对象,对该类进行测试。二、系统设计:类的描述与定义:NUM(char data1)for(int i=0;i25;i+)datai=data1i;void process();void print();process函数定义:void process()for(int i=0;i24;i+)for(int j=i+1;i25;i+)if(dataidataj)char k=datai;datai=dataj;dataj=k;print函数定义:void print()for(int i=0;i25;i+)if(i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论