C++实验例题实例.docx
问题:给定两个正整数P和q,求其最大公因数?#inc1.ude<iostream>intnain()(intp,q,k;std:cout«*'Inputtwonumbersf,<<stduend1.;std:cin»p»q;if(p<q)k=p;e1.sek=q;whi1.e(p%k!=0q%k!=0)k=k-1.;)std:cout«MResu1.tis,<<k<<,.,<<std:end1.;return0;)输入一个大于等于4小于等于100的偶数X,验证X是否可以表示为两个素数之和。intmain()(intPrimeIJstMJ;/说明存放素数表的数组CreatPrime1.ist(Prime1.ist);/建立素数表intx;/cin»x;intp;/p为素数if(4=<x&&x<M)(/检查偶数减去一个素数后的剩余部分是否仍为素数p=Prime1.ist2;whi1.c(p<x)(if(Prime1.istx*p!=O)/1Prime1.istx-pO,分解成功(cout<<,'Thenum,<<x<<,=,<<p<<,+,<<x-p<<end1.;break;)e1.se(p=NextPrimeNumber(p,Prime1.ist);)if(p>=)/找到了一个不能分解为两个素数和的偶数cout<<,'Greatdiscovery:Go1.dbachiswrong!,<<end1.;x=x+2;/检查下一个偶数)returnO;)求N阶intmain()(unsignedintn,resu1.t=1;cin»n;for(inti=1;i<=n;+i)(resu1.t=resu1.t*i;)cout«resu1.t;returnO;#inc1.ude<iostream>intmain()(constintMAXSIZE=50;intaMAXSIZE;intn;cin»n;intsum,sc,count=1;aO=1.;for(inti=2;i<=n;i+)(sc=O;for(intj=0;j<count;j+)sum=aj*i+sc;sc=sum10;aj=sum%10;whiic(sc!=O)aj=sc%10;sc=sc/10;j+;count+;for(i=count-1;i>=0;i)std:cout«ai;returnO;)#inc1.ude<iostream>出栈usingnamespacestd;intmain()(Containerc1.;Containerc2;charch;cin»ch;whi1.c(ch!='!')(if(ch=*#*)charx=c1.pop();c2.push(x);)e1.seif(ch='&*)charx=c2.pop();c1.push(x);e1.seif(ch=*)(whi1.c(c1.m_Index!=0)c1.pop();)c1.sec1.push(ch);cin»ch;)for(inti=0;i<c1.m_Index;+i)cout«c1.m-Datai;returnO;)例题:声明一个ShaPe(形状)基类,它有三个派生类:Circ1.e(圆)、Rectang1.e(正方形)、Triang1.e(三角形)。要求:1、利用多态性的概念,分别以虚函数的形式完成对圆、正方形和三角形的周长及面积的计算。2、编写一普通函数,完成对一组图形的面积求和O3、编营一普通函数,完成对一组图形的面积求和。