VC课程实践正确答案.docx
上传人:王子****青蛙 上传时间:2024-09-13 格式:DOCX 页数:33 大小:1.3MB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

VC课程实践正确答案.docx

VC课程实践正确答案.docx

预览

免费试读已结束,剩余 23 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

课程实践报告设计题目:程序设计(VC++)实践设计时间:至学院:专业班级:学生姓名:学号指导老师:1.试建立一个类PP,求出下列多项式的前n项的值。具体要求如下:(1)私有数据成员intn:前若干项的项数。doublex:存放x的值。double*p:根据n的大小动态申请存放Pn(x)前n项的数组空间。(2)公有成员函数PP(intnum,doublex1):构造函数,初始化数据成员n和x,使p指向动态申请的数组空间。~PP():析构函数,释放p指向的动态内存空间。doublefun(intn1,doublex):递归函数,用于求多项式的第n1项。注意:将递归公式中的n用作函数参数。本函数供process函数调用。voidprocess():完成求前n项的工作,并将它们存放到p指向的动态数组中。voidshow():输出n和x,并将前n项以每行4个数的形式输出到屏幕上。(3)在主函数中完成对该类的测试。先输入num和x1,并定义一个PP类的对象items,用num和x1初始化items的成员n和x,调用items的成员函数,求出并输出多项式前num项的值。程序源代码#include<iostream.h>classpp{intn;doublex;double*p;public:pp(intnum,doublex1);~pp();doublefun(intn1,doublex);voidprocess();voidshow();};pp::pp(intnum,doublex1){n=num;x=x1;p=newdouble[num+1];}pp::~pp(){delete[]p;}doublepp::fun(intn1,doublex){if(n1==0)return1;if(n1==1)returnx;if(n1>1)return((2*n1-1)*x*fun(n1-1,x)-(n1-1)*fun(n1-2,x))/n1;}voidpp::process(){inti;for(i=0;i<=n;i++){*(p+i)=fun(i,x);}}voidpp::show(){cout<<"n="<<n<<'\t'<<"x="<<x<<endl;for(inti=0,m=1;i<n;i++,m++){cout<<*(p+i)<<'\t';if(m%4==0)cout<<'\n';}}voidmain(){intnum;doublex1;cout<<"putinnumandx1"<<endl;cin>>num>>x1;ppitems(num,x1);items.process();items.show();}运行结果2.试建立一个类SP,求,另有辅助函数power(m,n)用于求。具体要求如下:(1)私有成员数据。intn,k:存放公式中n和k的值;(2)公有成员函数。SP(intn1,intk1):构造函数,初始化成员数据n和k。intpower(intm,intn):求mn。intfun():求公式的累加和。voidshow():输出求得的结果。(3)在主程序中定义对象s,对该类进行测试。程序源代码#include<iostream.h>classSP{intn,k;public:SP(intn1,intk1);intpower(intm,intn);intfun();voidshow();};SP::SP(intn1,intk1){n=n1;k=k1;}intSP::power(intm,intn){inti;if(n==0)return1;elsefor(i=1;i<n;i++)m*=m;returnm;}intSP::fun(){inty=0,x;for(x=1;x<=n;x++)y+=power(x,k);returny;}voidSP::show(){cout<<"前n项的和为:"<<fun()<<endl;}voidmain(){intn1,k1;cout<<"输入n1和k1的值"<<endl;cin>>n1>>k1;SPs(n1,k1);s.fun();s.show();}运行结果:3.建立一个类MOVE,不进行排序,将数组中小于平均值的元素放到数组的左边,大于平均值的元