大学生计算机程序设计题库.docx

上传人:夺命阿水 文档编号:609820 上传时间:2023-09-09 格式:DOCX 页数:188 大小:275.92KB
返回 下载 相关 举报
大学生计算机程序设计题库.docx_第1页
第1页 / 共188页
大学生计算机程序设计题库.docx_第2页
第2页 / 共188页
大学生计算机程序设计题库.docx_第3页
第3页 / 共188页
大学生计算机程序设计题库.docx_第4页
第4页 / 共188页
大学生计算机程序设计题库.docx_第5页
第5页 / 共188页
点击查看更多>>
资源描述

《大学生计算机程序设计题库.docx》由会员分享,可在线阅读,更多相关《大学生计算机程序设计题库.docx(188页珍藏版)》请在课桌文档上搜索。

1、一、程序设计共116题(共计1160分)第1题(10.0分)【程序设计】功能:从键盘上输入任意实数,求出其所对应的函数值。z=e的X次幕(x10)z=log(x+3)(x-3)z=sin(x)(cos(x)+4)*/#includeincludedoubley(floatx)(/*Program*/*End*)main()(floatx;scanf(%f,);printf(y=%n,y(x);yzj();getch();)yzj()(FILE*IN,*OUT;intn;floati;doubleo;IN=fopen(in.datzr);if(IN=NLL)(printf(ReadFileErr

2、or);)OUT=fopen(,out.dat,w);if(OUT=NLL)(printf(WriteFileError);for(n=0;n10)z=exp(x);elseif(x-3)z=log(x+3);elsez=sin(x)(cos(x)+4);return(z);第2题(Io.0分)【程序设计】功能:在键盘上输入一个3行3列矩阵的各个元素的值(值为整数),然后输出主对角线元素的积,并在fun()函数中输出.*/includestdio.hvoidmain()intizjzsza33;for(i=0;i3;i+)for(j=0;j3;j+)scanf(%d,aij);)s=fun(a

3、);printf(Sum=%dn,s);yzj();getch();)intfun(inta33)*Program*/*End*)yzj()(FILE*INOUT;intm;intn;iti33;into;IN=fopen(in.dat,r);If(IN=NULL)(printf(,ReadFileError);)OUT=fopen(out.dat,w);if(OUT=NLL)(printf(WriteFileError);)for(m=0;m3;m+)for(n=0;n3;n+)fscanf(INz%dz8imn);o=fun(i);fprintf(OUT%dn,o);getch();)fc

4、lose(IN);fclose(OUT);)答案:intsum;iti,j;sum=l;for(i=0;i3;i+)sum=sum*aii;returnsum;第3题(IO.0分)*【程序设计】功能:求1到100之间的偶数之积。includestdio.hdoublefun(intm)*Program4c*/*End*/)voidmain()(printf(ji=%n,fun(100);yzj();getch();)yzj()(FILE*IN,*OUT;intilNJ;doubledOUT;IN=fopen(in.dat,r);If(IN=NULL)(printf(PleaseVerifyTh

5、eCurrerntDir.ItMayBeChanged);)OUT=fopen(out.dat,w);if(OUT=NLL)(printf(PleaseVerifyTheCurrentDir.ItMayBeChanged);)for(i=0;i5;i+)(fscanf(IN%d,8ilN);dOUT=fun(ilN);fprintf(OUTz%nzdOUT);)fclose(IN);fclose(OUT);)答案:doubley=l;inti;for(i=l;i=m;i+)if(i%2=O)y*=i;returny;第4题(IO.0分)/*【程序设计】功能:求出NXM整型数组的最大元素及其所在

6、的行坐标及列坐标(如果最大元素不唯一,选择位置在最前面的一个)。例如:输入的数组为:12341561218910112求出的最大数为18,行坐标为2,列坐标为1。*/ftdefineN4ftdefineM3includeintRow,Col;voidmain()(intaNMJJzmax,row,col;printf(inputaarray:);for(i=0;iN;i+)for(j=0;jM;j+)scanf(,%daij);for(i=0;iN;i+)(for(j=OJMJ+)printf(%d,aiD);printf(n);)max=fun(a);printf(max=%d,row=%d

7、zcol=%dzmaxzRow,Col);getch();yzj();)intfun(intarrayNM)*Program*/*End*/)yzj()(FILE*IN,*OUT;intilNNM,iOU11i,j;IN=fopen(in.dat,r);If(IN=NULL)(printf(PleaseVerifyTheCurrerntDir.ItMayBeChanged);)OUT=fopen(out.dat,w);if(OUT=NLL)(printf(PleaseVerifyTheCurrentDir.ItMayBeChanged);)for(i=0;iN;i+)for(j=0;jM;j+

8、)fscanf(IN,%dilNij);iOUT=fun(ilN);fprintf(OT%d%d%dnJOi;RowzCoI);fclose(IN);fclose(OUT);)答案:intmaxj,j;max=array00;Row=O;CoI=O;for(i=0;iN;i+)for(j=0;jM;j+)if(maxarrayij)max=arrayij;Row=i;Co=j;)return(max);第5题(IO.0分)【程序设计】功能:编写函数实现两个数据的交换,在主函数中输入任意三个数据,调用函数对这三个数据从大到小排序。ftincludevoidswap(int*a,int*b)*Pr

9、ograr*/*End*)main()(intx,y,z;SCanf(%d%d%d,&x,&y,&z);if(xy)swap(&x,&y);if(xz)swap(&x,&z);if(yz)swap(&y,&z);printf(%3d%3d%3d,x,y,z);yzj();getch();)FILE*INOUT;intmzn;iti2;into;IN=fopen(in.datzr);If(IN=NULL)(printf(ReadFileError);)OUT=fopen(out.dat,w);If(OUT=NULL)(printf(WriteFileError);)for(n=0;n3;n+)(

10、for(m=0;m=0&si=9)k+;returnk;第7题(IO.0分)/*【程序设计】功能:对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按降序排列。例如:原来的字符串为CEAedCa,排序后输出为CedcEAaoincludeincludeincludeintfun(char*s,intnum)*Program4c*/*End*/voidmain()(chars10;crscr();Printf(U输入7个字符的字符串gets(s);fun(s,7);printf(,n%szs);getch();NONO();)NONO()(inti;chara100;FILE*rf,*wf

11、;rf=fopen(in.dat,r);wf=fopen(out.datzw);for(i=0;i3;i+)(fscanf(rf,%s,z&a);fun(az7);fprintf(wf,%sza);fprintf(wf,);)fclose(rf);fclose(wf);)答案:intij;chart;for(i=l;inum-l;i+)for(j=i+l;jnum-l;j+)if(ss)t=si;si=sD;sj=t;第8题(IO.0分)*【程序设计】功能:编写函数fun求1+2+3+.+n的和,在main函数中由键盘输入n值,并输出运算结果。请编写fun函数。例如:若n值为2,则结果为3。*

12、/includelongfun(intn)(/*Program*/*End*)intyzj();voidmain(void)(intn;longintresult;scanf(%d,n);result=fun(n);printf(%ldn,result);yzj();)intyzj()(FILE*IN,*OUT;inti;intilN;longintiOUT;IN=fopen(inll.dat7,r);If(IN=NULL)printf(PleaseVerifyTheCurrerntDir.ItMayBeChanged);)OT=fopen(outll.dat,w);if(OUT=NLL)(p

13、rintf(PleaseVerifyTheCurrentDir.ItMayBeChanged);)for(i=0;i4;i+)(fscanf(IN%d,8ilN);iOUT=fun(ilN);fprintf(OUTz%ldnziOUT);)fclose(IN);fclose(OUT);return0;)答案:inti;longs=0;for(i=l;i=n;i+)s=s+i;returns;第9题(IO.0分)【程序设计】功能:判断一个整数W的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。*/#includestdio.h#includeconio.hintfun(intw)

14、(/*Program*/*)voidmain()(intm;printf(Enterm:);scanf(%d,&m);printf(nTheresultis%dn,fun(m);yzj();getch();)yzj()(FILE*INOUT;intc;intt;into;IN=fopen(in.dat7,r);If(IN=NULL)(printf(ReadFileError);)OUT=fopen(out.dat,w);If(OUT=NULL)(printf(WriteFileError);for(c=l;c=5;c+)(fscanf(IN/%d,&t);o=fun(t);fprintf(OU

15、T,%dnzo);)fclose(IN);fclose(OUT);)答案:intk,s=O;dos=s+(w%10)*(w%10);w=w10;while(w!=0);if(s%5=0)k=l;elsek=0;return(k);第10题(Io.0分)/*【程序设计】功能:求一个四位数的各位数字的立方和*/#includestdio.hintfun(intn)*Program*/*End*/voidmain(void)intk;k=fun(1234);printf(k=%dn,);yzj();)yzj()FILE*INOUT;intilN,iOT;IN=fopen(22.in,r);if(IN

16、=NLL)(printf(PleaseVerifyTheCurrerntDir.ItMayBeChanged);)OT=fopen(22.out7w);if(OUT=NLL)(printf(PleaseVerifyTheCurrentDir.ItMayBeChanged);for(i=0;i0)d=n%10;s+=d*d*d;n=10;returns;第11题(IO.0分)【程序设计】功能:从低位开始取出长整型变量S奇数位上的数,依次构成一个新数放在t中。例如:当S中的数为:7654321时,t中的数为:7531。*/#includestdio.hlongfun(longs,longt)*Pr

17、ogram4c*/*End*/)returnt;)voidmain()(longs,t,m;crscr();printf(,nPleaseenters:);scanf(%ldz&s);m=fun(s,t);printf(Theresultis:%ldn,m);getch();yzj();)yzj()(FILE*IN,*OUT;intn;longi,tzm;IN=fopen(in.datzr);if(IN=NLL)(printf(ReadFileError);)OUT=fopen(,out.dat,w);if(OUT=NLL)(printf(WriteFileError);for(n=0;n0)

18、s=s/100;t=s%10*sl+1;si=si*10;第12题(IO.0分)/*【程序设计】功能:注意:例如:计算并输出给定整数n的所有因子之和(不包括1与自身)。n的值不大于100Oon的值为855时,应输出704。includestdio.hintfun(intn)*Prograr*/*End*/)voidmain()printf(s=%dn,zfun(855);yzj();getch();yzj()FILE*IN,*OUT;intilN,iOTi;IN=fopen(in.dat,r);If(IN=NULL)(printf(PleaseVerifyTheCurrerntDir.ltMa

19、yBeChanged);)OUT=fopen(out.dat,w);if(OUT=NLL)(printf(PleaseVerifyTheCurrentDir.ItMayBeChanged);)for(i=0;i5;i+)(fscanf(IN%dz8ilN);iOUT=fun(ilN);fprintf(OT%dnJOUT);)fclose(IN);fclose(OUT);答案:ints=O,i;for(i=2;in;i+)if(n%i=0)s=s+i;returns;第13题(10.0分)【程序设计】功能:求一个给定字符串中的英文字母的个数。#includestdio.hintfun(chars

20、)*Program4c*/*End*/)voidmain(void)(charstr=Bestwishesforyou!;intk;k=fun(str);printf(k=%dn);yzj();getch();)yzj()(FILE*IN,*OUT;charslN80;intiOUTi;IN=fopen(in.datzr);If(IN=NULL)(printf(PleaseVerifyTheCurrerntDir.ItMayBeChanged);)OUT=fopen(out.dat,w);If(OUT=NULL)(printf(PleaseVerifyTheCurrentDir.ItMayBe

21、Changed);)for(i=0;i=a,aasi=,A,aasi=Z)k+;returnk;第14题(IO.0分)/*【程序设计】功能:能计算从1开始到n的自然数的和,n由键盘输入,并在main()函数中输出。*/#includestdio.hintfun(intn)(/*Program*/*End*/)voidmain()intm;printf(,Enterm:);scanf(%d,&m);printf(nTheresultis%dn,fun(m);yzj();getch();)yzj()(FILE*INOUT;intt;into;intc;IN=fopen(in.dat7,r);If(

22、IN=NULL)(printf(ReadFileError);)OUT=fopen(out.datzw);If(OUT=NULL)(printf(WriteFileError);)for(c=l;c=5;c+)(fscanf(IN/%d,&t);o=fun(t);fprintf(OUT%dn,o);fclose(IN);fclose(OUT);)答案:intsumzi;sum=0;for(i=l;i=n;i+)sum=sum+i;)return(sum);第15题(IO.0分)【程序设计】功能:请编一个函数voidfun(intttMNJntppN),tt指向一个M行N列的二维数组,求出二维数

23、组每列中最大元素,并依次放入PP所指一维数组中。二维数组中的数己在主函数中赋予。*/includeinclude#defineM3ftdefineN4voidfun(intttMNJntppN)(/*Program*/*End*/)voidmain()(inttMN=22z45,56,30,19,33,45,38,20,22,66,40;intpN,i,j,k;crscr();printf(Theoriginaldatais:n);for(i=0;iM;i+)(for(j=0;jN;j+)printf(%6dztij);printf(n);)fun(t,p);printf(nTheresult

24、is:n);for(k=0;kN;k+)printf(%4d,pk);printf(n);getch();NONO();)NONO()(inti,j,array34,p4;FILE*rf,*wf;rf=fopen(in.dat,r);wf=fopen(out.dat,w);for(i=0;i3;i+)for(j=0;j4;j+)fscanf(rf,%d,&arrayij);fun(array,p);for(j=0;j4;j+)(fprintf(wfz%7d,pj);fprintf(wfz,();)fclose(rf);fclose(wf);)答案:intij;for(j=0;jN;j+)(pp

25、j=ttOj;for(i=l;ippj)PPj=ttiU;)第16题(IO.0分)【程序设计】功能:求一组数中大于平均值的数的个数。例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函数值为3。*/#includestdio.hintfun(inta,intn)*Program*/*End*/)voidmain(void)(inta10=l,3,6,9,4,23,35,67,12,88;inty;y=fun(azl);printf(,y=%dn,y);yzj();getch();)yzj()(FILE*INOUT;intilN10JOTij;IN=fopen(in.dat

26、zr);if(IN=NLL)(printf(PleaseVerifyTheCurrerntDir.ItMayBeChanged);)OUT=fopen(,out.dat,w);if(OUT=NLL)(printf(PleaseVerifyTheCurrentDir.ItMayBeChanged);for(i=0;i10;i+)fscanf(INz%dilNi);iOUT=fun(ilN40);fprintf(O%dnJOUT);fclose(IN);fclose(OUT);)答案:inti,k=O;floats=O,ave;for(i=0;in;i+)s+=ai;ave=sn;printf(%

27、f,ave);for(i=0;iave)k+;returnk;第17题(Io.0分)/*【程序设计】功能:求大于Iim(Iim小于100的整数)并且小于100的所有素数并放在aa数组中,该函数返回所求出素数的个数。includeincludeftdefineMAX100intfun(intIimJntaaMAX)*Program4c*/*End*/)voidmain()intlimitjzsum;intaaMAX;crscr();printf(,PleaseInputalnteger:);scanf(%dimit);sum=fun(limit,aa);for(i=0;isum;i+)if(i%

28、10=0&i!=0)printf(,n);printf(,%5dzaai);)NONO();getch();)NONO()(inti,j,array100,sumJim;FILE*rf,*wf;rf=fopen(in.dat,r);wf=fopen(out.datzw);for(j=0;j=5;j+)(fscanf(r%d&lim);sum=fun(lim,array);for(i=0;isum;i+)fprintf(wfz%7d,arrayi);fprintf(wf,);fclose(rf);fclose(wf);)答案:intn=0;intij;for(i=lim;i=100;i+)for

29、(j=2;j=,A,&stri=,Z)stri=stri+32;第19题(IO.0分)【程序设计】功能:从键盘输入一个大于3的整数,调用函数fun判断其是否素数,然后在main函数中输出相应的结论信息。例如:7是素数,8不是素数。请编写fun函数。素数是仅能被1和自身整除的数/#includestdio.hvoidmain()(intmzflag;printf(inputaninteger:);scanf(%d,m);flag=fun(m);if(fag)printf(%disaprime.n,m);elseprintf(%disnotaPrime.n,m);yzj();intfun(intn

30、)*Program*End*yzj()(FILE*IN,*OUT;intilN,iOUN;IN=fopen(5.in,r);if(IN=NLL)(printf(PleaseVerifyTheCurrerntDir.ItMayBeChanged);OT=fopen(5.out,7w);If(OUT=NULL)(printf(PleaseVerifyTheCurrentDir.ItMayBeChanged);)for(i=0;i10;i+)(fscanf(IN%d,8tilN);iOT=fun(ilN);fprintf(OT%dnJOUT);)fclose(IN);fclose(OUT);)答案:

31、inti;intj;j=1;for(i=2;in;i+)if(n%i=O)j=O;)returnj;第20题(IO.0分)/*【程序设计】功能:从字符串中删除指定的字符。同一字母的大、小写按不同字符处理。例如:若程序执行时输入字符串为:turbocandborlandc+从键盘上输入字符:n,则输出后变为:turbocadborladc+,如果输入的字符在字符串中不存在,则字符串照原样输出。*/#includestdio.hintfun(chars,intc)*Program4c*/*End*/)voidmain()staticcharstr=turbocandborlandc+;charch

32、;crscr();Printfr原始字符串:sn,str);Printf(U输入一个字符:);scanf(%czch);fun(stch);printf(str=%snzstr);getch();yzj();)yzj()FILE*IN,*OUT;chari200;charo200;IN=fopen(in.datzr);if(IN=NLL)(printf(ReadFileError);)OUT=fopen(,out.dat,w);if(OUT=NLL)(printf(WriteFileError);fscanf(INz%s,i);fun(i,n,);fprintf(OUT%s,i);fclose(IN);fclose(OUT);)答案:c

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号