江苏科技大学C++试验设计报告汇编_第1页
江苏科技大学C++试验设计报告汇编_第2页
江苏科技大学C++试验设计报告汇编_第3页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、实 验 报 告第一题:从键盘上输入一个整数n的值,按下时求出y的值,并输出 n 和 y 的值 Y =1! +2! +3! +n!源程序清单:#i nclude void mai n ()int t=1, n,y=0;cout n=?n;cinn;cout n=n vn;for(int i=1;i=n;i+)t=t*i;y=y+t; coutvy=vvyve ndl;运行结果:25“25 y=?1289909?Pfbse 耳ny ke to continue第二题:设计一个程序,求出10010000之间的所有 素数。源程序清单:#i nclude#i ncludevioma nip.hvoid

2、mai n()int i,n,coun t=0;for(n=101; n1000; n+)for(i=2;i n-1)coutsetw(4) n;coun t+;if(cou nt%10=0) coute ndl;coute ndl;运行结果:10110310710911312?丄3113713914915115716316?1?31791S119119319?1992112232272292332392412512572632692712772812832?330731131331733133734?3493533593673733793833893974014094194214314334

3、3944344945?4614634674?948749149950350952152354154?55?5635695715775875935996016076136176196316416436476S3659661673677A83691701709719727733739743751757761769?73787797809811821823B27S29839S5385?85986387?88188388750?91191992993794194795396?9?197?983991997Piess any key to continue第三题:设计一个程序,输入一个任意整数(14位)

4、, 求出各位数字之和,并统计出位数源程序清单:#i ncludevoid mai n()int n ,k,s=O,t=O; cout n=?e ndl; cinn;while( n)k=n%10;n=n/10; s=s+k;t=t+1;coutsttr。分别求出(4,2 )、 C( 6, 4)、C ( 8,7 )的值。要求用函数来实现求阶乘和组合 数,在主函数中测试。源程序清单:#i nclude #i nclude float f(int n)if(n 0)coutn 应为正数!n;float s;if(n=1| n=0)return 1;elses=n*f(n-1);return s;fl

5、oat c(i nt m,i nt r)if(mr)cout mr;n;运行结果:4 2c4.25=6Presske to continuec=15Press anto coni inue3 ?c=8Press any key to continue第五题:设计一个程序,用筛选法求出3100之间的所有素数,要求每行输出5个素数。判断一个整数是否为 素数应设计一个函数来实现。源程序清单:#in clude#i ncludeint fun (i nt n)for(i nt i=2;i n ;i+)if(n %i=0)return 0;return 1;void mai n()int coun t=

6、0;for(i nt i=3;i100;i+) if(fun (i) coutisetw(4);coun t+;if(coun t%5=0)coutn: coutn:运行结果:35711131?192329313741434?5359&167717379838997Pressanyhe 9 1to cont第六题:把二维数组 a赋值给b并把b中元素的值等于a中对应元素的平方。源程序清单:#in clude#in cludevoid mai n()int a34,b34,i,j;for(i=0;i3;i+)for(j=0;jaij;for(i=0;i3;i+)for(j=0;j4;j+)bij=

7、aij*aij;for(i=0;i3;i+)for(j=0;j4;j+)coutbijt;coutn;运行结果:12 3423 4534 56149164916259162536Pressan*/ keyto cont inue第七题:下面的程序求出1000以内的孪生质数的对数(改错题)。源程序清单:#i nclude#i ncludevioma nip.h#in cludeint isprime(i nt x)int k,i;k=(i nt)sqrt(x);for(i=2;i=k;i+)if(x%i=O) return(O);return(1);void mai n()int a500,co

8、u nt,k=O;int b352;for(i nt i=3;i1000;i+=2)if(isprime(i)ak+=i;coun t=0;for(i=0;ik-1;i+)if(ai+1-ai=2)bcou nt0=ai;bcou nt+1=ai+1;for(i=0;ico un t;i+)if(i%5=0)coutn;coutv(vvsetw (3) bi0,setw (3)bi1)t;coute ndlco un t=co un t(S, 7 11, 13):41, 43(59, 61:137,139C149,151:227,229239,241)26?,271):347,349431,4

9、33):S69,571(599,601):809,B11C857P859;ount=35Jvess any keyto continue.第八题:有两个字符串,将主字符串中的所有子字符串删去并输出,例如,主字符串为“This is a very goodbook”,子字符串为 “book”,结果为 “ This is a very good”。源程序清单:#in clude#i ncludeint withstr(char *s1,char *subs)while(*subs&*s1=*subs)s1+;subs+;return !(*subs);char *delsub(char *s1,c

10、har *subs)char *p1,*p2;int len=strle n( subs);p2=p1=s1;while(*p1)if(withstr(p1,subs)p1+=le n;else *p2+=*p1+;*p2=0;return s1;void mai n()char str180=This is a very good book;char str240=book;coutstr1e ndlvstr2ve ndl;coutdelsub(str1,str2)e ndl;运行结果:Tills is a bookThis is a Press anyuei*y good bookuepy

11、 good kev to cont inue第九题:设计一个通用函数查询一个带通配符“?”个字符串中出现的次数,在主程序中进行测试。源程序清单:#i ncludeint fun(char*str,char*sear , int &n)n=0 ;char *s ,*f ;for( ; *str ; st叶+)if(*str=*sear|*sear= ? )s=str ; f=sear ;s+;f+ ;if(*f=? )if(*(f+1)= o &*s!= 0 )n+ ;else s+ ; f+ ; while(*s+=*f+)if(*f= 0 ) n+ ; break ;return n ;vo

12、id mai n()int n ;char str81, s010;coutvv “请输入被查询的字符:n ”;cin.getline(str,80);cout “请输入要查询的字符:n ”;cin.getline(s0,9);if(fun(str, s0,n)coutvs0v “出现了” vvnvvelse couts0“没有出现! ”;coutendl ;运行结果为:r 上一 C;U se rsh p D eskto pD e bugte st e的字符串在另一“次。”;声输人被查询的字符:abedefadobb asc需输入要查询的字符占上岀现了 3-fcoPre ss any key

13、to continue 第十题:定义一个函数,删除一个字符串中所有非数字字符并将剩下 的数字字符转化为一个整数。源程序清单:#i nclude #include char *del(char *str)for(char *p1= str;*p1;p1+)if(*p1v0|*p19)for(char *p2=p1;*p2;p2+)*p2=*(p2+1); if(*p1v0|*p19)p1-;return str;int vale(char *str)int s=0;char *p=st 叶strle n( str)-1;for(;p=str;p-)s=s*10+*p-0;return s;voi

14、d mai n()char s=3fgh21%$#78UI*;coutse ndl;coutdel(s)e ndl;coutvale(s)e ndl;运行结果为: C:Use rsh pD eskto pDe bugte st.exe3fgh21M$tt78UI*3217887123Presskey to cuntinue第十一题:已知函数 void stat(char C:LI sershpDesktopDebugtest.exe品 tGkp9h?*cGHd+3: TjAg587ddPfHDxf52nG =aphlet=25other=12Presskey to continue3,int

15、&,int*,int*),分别统计3个字符串中所有的数字字符,英文字母及其他字符的数量,编 写程序测试该函数。源程序清单:#i ncludevoid stat(char*s3,i nt&nu m,i nt*aphlet,i nt*other)int i;char*p;num=*aphlet=*other=0;for(i=0;i3;i+)P=si;coutvsv=0&*p=A&*p=a&*p=z)(* aphlet)+;else (*other)+;p+;void mai n()char*s3=1Ab12c/#$&De,(tGkp9h7*cGHd+,TjAg587ddfHD%f52 nG=;in

16、t n,a,o;stat(s, n,&a,& o);cout vnum=vvnven dl;coutaphlet=ae ndl;coutother=oe ndl;运行结果为:第十二题:建立一个类SUM求一个二维数组外围各元素之和,并输出数组中各兀素所求之和。具体要求如下:(1)私有数据成员int array55;二维整型数组int s ;/数组array各外围兀素之和(2)公有成员函数SUM(int d55):构造函数,初始化成员数据void process。:求二维数组外围元素之和 svoid print ():输出二维数组(每行输出五个元素)及其外围元素之和(3)在主程序中对该类进行测试。

17、使用如下测试数据。(外围元素是 指阴影部分的元素)(1)(2)(3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14)(15)(16)(17)(18)(19)(20)(21)(22)(23)(24)(25)源程序清单:#i nclude class SUMint array55;int s;public:SUM(int d55);void process。;void prin t();SUM:SUM(int d55)for (i nt i=0;i5;i+) for (i nt j=0;j5;j+) array ij=dij;void SUM:process() int t=0,t 1=0;for (i nt i=0;i5;i+) for (i nt j=0;j5;j+) t+=arrayij;for (i=1;i4;i+)for (i nt j=0;j5;j+)t1+=a

温馨提示

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

评论

0/150

提交评论