C++课程实践作业.doc

上传人:最*** 文档编号:1546463 上传时间:2019-10-25 格式:DOC 页数:18 大小:1.14MB
返回 下载 相关 举报
C++课程实践作业.doc_第1页
第1页 / 共18页
C++课程实践作业.doc_第2页
第2页 / 共18页
C++课程实践作业.doc_第3页
第3页 / 共18页
点击查看更多>>
资源描述
_江苏科技大学课程实践报告设计题目:计算机程序设计实践(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; coutnumx1; PP a(num,x1); a.fun(num,x1); a.process(); a.show();三、系统测试:四、实践小结:掌握递归函数调用方法、条件语句的选择五、源程序清单:第二题:一、实践任务:2、试建立一个类SP,求f(n,k)=1k+2k+3k+nk,另有辅助函数power()用于求mn。具体要求如下。私有成员数据。int n,k:存放公式中n和k的值。公有成员函数。SP(int n1,int k1):构造函数,初始化成员数据n和k。int power(int m,int n):求mn。int 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)nk; 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;i=0&datai=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);a.process();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;idataj)char k=datai;datai=dataj;dataj=k;print函数定义:void print()for(int i=0;i25;i+)if(i%5=0)coutendl;coutdatait;main函数定义:void main()char data25=”qwertyuiopasdfghjklz”;NUM a(data);a.process();a.print();三、系统测试:四、实践小结:掌握随机生成数组的方法,升序降序排列方法。五、源程序清单:THANKS !致力为企业和个人提供合同协议,策划案计划书,学习课件等等打造全网一站式需求欢迎您的下载,资料仅供参考-可编辑修改-
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!