修改后编程题答案概要_第1页
修改后编程题答案概要_第2页
修改后编程题答案概要_第3页
修改后编程题答案概要_第4页
修改后编程题答案概要_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、改正后的编程题答案纲领改正后的编程题答案纲领19/19改正后的编程题答案纲领难度1循环构造计算s=1-2!+3!-4!+-10!的值并输出。-3301819#includevoidmain()intn,t=1,f=-1;intsum=0;for(n=1;n=10;n+)4t=t*n;f=-f;sum=sum+t*f;printf(%d,sum);计算s=1-1/3+1/5-1/7+1/101的值并输出0.790300#includevoidmain()intn,f=-1;floatt,sum=0;for(n=1;n=51;n+)9t=1.0/(2*n-1);f=-f;sum=sum+t*f;p

2、rintf(%f,sum);编写程序求出555555的约数中最大的三位数是多少。要求必然使用do-while语句实现。#include#defineY555555voidmain()intn=100;intmax=0;Doif(Y%n=0)max=n;n+;while(n999);printf(%d,max);输入一个正整数,要求以相反的次序输出该数。用数组;2必然使用while语句实现。比方输入12345,输出位54321。注:1不得使#includeVoidmain()intx;Scanf(“%d”,&x);While()编写程序,求S=1/(1*2)+1/(2*3)+1/(3*4)+前5

3、0项之和。要求必然使用for语句实现。0.980393#includevoidmain()inti;110floatsum=0;for(i=1;i=50;i+)sum=sum+1.0/(i*(i+1);printf(ns=%fn,sum);编写程序,求S=1/(1+2)+1/(2+3)+1/(3+4)+前50项之和。要求必然使用while语句实现。1.947676#includevoidmain()inti=1;111floatsum=0;while(i=50)sum=sum+1.0/(i+(i+1);i+;printf(ns=%fn,sum);输入10个整数,统计同时能被3和要求必然使用do

4、-while语句实现。7整除的个数,结果寄存在变量nCount中。将nCoun输出。#includestdio.hvoidmain()inta10;inti=0,nCount=0;doscanf(%d,&ai);179i+;while(i10);i=0;doif(ai%3=0&ai%7=0)nCount+;i+;while(i10);printf(%d,nCount);编写一个sum函数乞降:输入一个正整数n,统计不大于n值的全部正偶数的和,在主函数中达成输入输出。要求用do-while语句实现。#includestdio.hvoidmain()intn,sum=0,i;181printf(请

5、输入一个正整数:);scanf(%d,&n);i=2;dosum=sum+i;i+=2;while(in);printf(%dn,sum);编程求1+(1+2)+(1+2+n),n的值由键盘输入。要求使用for语句实现#includevoidmain()inti,j=0,n;intsum=0;printf(请输入n的值:);scanf(%d,&n);for(i=1;i=n;i+)j=j+i;sum=sum+j;printf(ns=%dn,sum);从键盘输入10个整数,统计此中正数、负数和零的个数,并在屏幕上输出。要求必然使用while语句。#includestdio.hvoidmain()i

6、nta10,i,p=0,n=0,z=0;printf(输入10个整数:);i=0;265while(i0)p+;elseif(ai0)n+;elsez+;i+;printf(正数:%d,负数:%d,零:%dn,p,n,z);函数难度1编写自定义函数圆柱体的高hvolume_cy,功能是求圆柱体的体积(v=3.14*r2*h),要求和底半径r在主函数中输入,圆柱体的体积在主函数中做输出。h,r均为float型变量。#includefloatvolume_cy(floatr,floath)return(3.14*r*r*h);voidmain()floatr,h,v;printf(请输入圆柱体的半

7、径和高度);scanf(%f%f,&r,&h);v=volume_cy(r,h);printf(n圆柱体的体积为%fn,v);编写自定义函数volume_c,功能是求正方体的体积(要求:正方体的的边长在主函数中调用函数volume_c,在主函数中输出正方体体积,a为inta型变量)在主函数中做输入,。#includefloatvolume_c(inta)return(a*a*a);176voidmain()inta;floatv;printf(请输入正方形的边长:);scanf(%d,&a);v=volume_c(a);printf(n正方形的的体积为%fn,v);编写函数max,功能是找出两

8、个数的较大值。在主函数中输出num1和num2较大值。在主函数中输入两个整数num1,num2,调用函数max,#includevoidmain()178intmax(intx,inty);intnum1,num2,max1;printf(请输入两个数:n);scanf(%d%d,&num1,&num2);max1=max(num1,num2);printf(max=%dn,max1);intmax(intx,inty)intm;m=xy?x:y;returnm;定义函数areaT,功能是求圆锥体积。在主函数中输入半径r和高h,调用函数areaT求体积,并在主函数中输出圆锥的体积。此中变量r,

9、h均为double型数据。(公式v=h*3.14*r2/3)#includefloatareaT(doubler,doubleh)return3.14*r*r*h/3.0;182voidmain()floatr,h,v;printf(请输入圆锥体的半径和高度);scanf(%f%f,&r,&h);v=areaT(r,h);printf(n圆锥体的体积为%fn,v);定义函数Fra,功能是求华氏温度,要求在主函数中输入摄氏温度c,调用函数Fra,在主函数中输出华氏温度f。要求变量c,f均为float型数据(公式f=5/9*c+32)#includefloatFra(floatc)return5.

10、0/9*c+32.0;183voidmain()floatf,c;printf(请输入摄氏温度:);scanf(%f,&c);f=Fra(c);printf(n对应的华氏温度为%fn,f);定义函数areaT,功能是求梯形面积。要求在主函数中输入上底(用变量a储蓄)、下底(用变量b存储)、和高(用变量h储蓄),在主函数中调用函数areaT,输出梯形面积(用变量s储蓄)的值。此中,变量a,b,h,s数据种类均为double。公式:s=(a+b)*h/2#include184doubleareaT(doublea,doubleb,doubleh)return(a+b)*h/2;voidmain()

11、doublea,b,h,s;printf(请输入梯形的上底、下底和高度);scanf(%f%f%f,&a,&b,&h);s=areaT(a,b,h);printf(n梯形的面积为%fn,s);)编写自定义函数min,函数功能是找出两个数的较小值。在主函数中输入两个数,分别保留在变量a和变量b,而且在主函数中调用函数min,输出a和b的较小值。#includevoidmain()intmin(intx,inty);inta,b,min1;printf(请输入两个数:n);scanf(%d%d,&a,&b);194min1=min(a,b);printf(min=%dn,min1);intmin(

12、intx,inty)intm;m=xy?x:y;returnm;编写一个函数fun,函数的功能是:判断一个整数能否既是5又是7的整倍数。假如,输出输出no。在主函数中输入随意一个正整数,调用fun函数,输出该数对应的结果。yes,不然#includevoidmain()voidfun(int);inta;scanf(%d,&a);fun(a);197voidfun(intx)if(x%5=0&x%7=0)printf(yesn);elseprintf(non);return;35Yes49no编写一个函数div,定义该函数的返回值种类为int,功能是判断一个整数n能否能同时被5和7整除,假如能

13、,那么函数返回值为1;假如不可以,那么函数返回值为0。在main函数中达成数据输入,函数调用和数据输出。#includevoidmain()intdiv(int);inta,y;scanf(%d,&a);242y=div(a);printf(y=%d,y);intdiv(intx)inty;if(x%5=0&x%7=0)y=1;elsey=0;return(y);)编写函数sign,功能是计算以下分段函数sign(x)的值。在主函数中输入一个数,保留在变量x中,调用函数sign,在主函数中输出结果。要求x为double型变量。sign(x)=1x00 x=0-1x0#includefloats

14、ign(floatx)floatb;if(x=0)b=0;elseif(x0)317b=-1;elseb=1;returnb;voidmain()floatx,b;scanf(%f,&x);b=sign(x);printf(%f,b);难度2编一通用函数avernum,计算含有n个数据的一维数组的均匀值,并统计此数组中大于均匀值的数据154的个数;主函数中定义含有100个元素的数组x,xI=200*cos(I*0.875)(I=0,1,2,99)调用上述函数,输出此数组的均匀值及大于均匀值的数据的个数。(注:此程序不一样样意使用全局变量,不一样样意在-0.851949avernum函数中输出)

15、49#includestdio.h#includemath.h#defineN100doubleavernum(double*x,doublen,doubleave)doubleaver=0.000000,a=0;inti;if(ave=0)for(i=0;in;i+)aver=aver+*(x+i);aver=aver/n;returnaver;elsefor(i=0;in;i+)if(ave*(x+i)a+;returna;voidmain()doublexN,m,aver;inti;for(i=0;iN;i+)xi=200*cos(i*0.875);aver=avernum(x,N,0)

16、;m=avernum(x,N,aver);printf(aver=%fnm=%fn,aver,m);编一通用函数avermax,计算含有n个数据的一维数组的均匀值,并求出此数组中大于均匀值的数据之和;主函数中定义含有300个元素的数组x,xI=10*cos(3.0+I*I)/5)(I=0,1,2,调299)用上述函数,输出此数组的均匀值及大于均匀值的数据之和。-0.220814912.784553(注:此程序必须使用while语句,不一样样意使用全局变量,不一样样意在avermax函数中输出)#includestdio.h#includemath.h155#defineN300doubleav

17、ernum(double*x,doublen,doubleave)doubleaver=0.000000,a=0;inti;if(ave=0)i=0;while(in)aver=aver+*(x+i);i+;aver=aver/n;returnaver;elsei=0;while(in)if(ave*(x+i)a+=*(x+i);i+;returna;voidmain()doublexN,m,aver;inti=0;while(iN)xi=10*cos(3.0+i*i)/5);i+;aver=avernum(x,N,0);m=avernum(x,N,aver);printf(aver=%fnm

18、=%fn,aver,m);编一通用函数maxsub,求出含有n个数据的一维数组的最大值及其所在地点(即下标);主函数中定义含有300个元素的数组y,yI=10*cos(3.0+I*I)/5)(I=0,1,2R-R-299),调用上述函数,输出此数组的最大值及其所在地点。(注:此程序必然使用for语句,不一样样意使用全局变量,不一样样意在maxsub函数中输出)9.99927,0.00000#includestdio.h#includemath.h#defineN300doublemaxsub(double*x,doublen,doubleave)doublemax;inti,j=0;if(av

19、e=0)max=*x;for(i=1;in;i+)if(max*(x+i)max=*(x+i);j+;returnmax;elsereturnj;voidmain()doubleyN,m,aver;inti;for(i=0;iN;i+)yi=10*cos(3.0+i*i)/5);aver=maxsub(y,N,0);m=maxsub(y,N,aver);printf(aver=%fnm=%fn,aver,m);编一函数调用函数,统计一维整数组小于数组元素均匀值的元素的个数;主函数定义,输出小于数组元素均匀值的元素的个数。必然使用whilex50,xi=600*cos(i*0.35),语句。27

20、.000000#includestdio.h#includemath.h#defineN50floatavernum(floaty,intn)floatv,s=0;intcount=0,i=0;while(in)s+=yi;i+;v=s/n;i=0;158while(in)if(yiv)count+;i+;return(count);voidmain()floatxN;inti=0;while(iN)xi=600*cos(i*0.35);i+;printf(%fn,avernum(x,50);编一函数,求有50个元素的一维整数组中最大值的地点;主函数中定义用函数,输出最大值及其地点。要求必然使

21、用for语句。599.941355y50,yj=600*sin(j*0.16),0.000000调#includestdio.h#includemath.h159doublemaxsub(doublex,intnum,doublemax)inti,j;doublem=0.00000;m=x0;j=0;if(max=0)for(i=1;im)m=xi;j=i;return(m);elsereturn(j);voidmain()doublea50,max,m;inti;for(i=0;i50;i+)ai=600*sin(i*0.16);max=maxsub(a,50,0);m=maxsub(a,5

22、0,max);printf(m=%f,J=%fn,max,m);求一维实型数组中最大元素。要求:主函数中定义含有300个元素的数组x,xi=10*cos(3.0+i*i)/5)(i=0,1,2299),调用自定义函数qmax求出最大元素,此后在主函数中输出结果。要求必然使用while语句实现。#includemath.h#includestdio.h#defineN300floatqmax(floata,intn)Inti=1;floatmax=a0;While(iN)162if(maxai)max=ai;i+;return(max);voidmain()inti=0;floatxN,max;

23、While(iN)xi=10*cos(3.0+i*i)/5;i+;max=qmax(x,N);printf(%10.4fn,max);求一维整型数组中的最小元素。要求:主函数定义数组y50,yj=600*sin(j*0.16)(j=0,1,2,49)调用自定义函数qmin求出最小元素,最后在主函数中输出结果。要求必然使用for语句实现。-598#includestdio.h#includemath.hmain()inty50,min,j;intqmin(intx50);for(j=0;j=49;j+)yj=600*sin(j*0.16);163min=qmin(y);printf(min=%d

24、,min);intqmin(intx50)inti,min;min=x0;for(i=1;i=49;i+)if(ximin)min=xi;return(min);求一维整型数组中正数的和。要求:主函数定义数组a10,从键盘输入十个数,调用自定义函数求出正数的和,此后在主函数中输出结果.要求必然使用for语句。#include”stdio.h”voidfun1(intn10)inti,sum=0;for(i=0;i,i0)sum+=ni;printf(“sum(+)=%d”,sum);voidmain()inta10,i;for(i=0;i10;i+)scanf(“%d”,ai);fun1(a)

25、;求一维整型数组中负数的和。要求:主函数定义数组a10,从键盘输入十个数,调用自定义函165数qsum求出负数的和,此后在主函数中输出结果。要求必然使用while语句。#include”stdio.h”voidqsum(intn10)inti=0,sum=0;While(i10)if(ni0)qsum+=ni;i+;return(qsum);voidmain()inta10,i=0;ssumwhile(i10)scanf(“%d”,ai);i+;ssum=qsum(a);printf(“ssum(-)=%d”,ssum);定义函数而且输入qmin,函数功能是求包括10个元素的值,调用函数10个

26、元素的一维整型数组b10中的最小元素。qmin求出最小元素,最后在主函数中输出结果。在主函数定义数组要求使用do-while191语句实现。难度1逻辑运算和判断采纳控制编程判断输入的正整数能否既是5又是7的整倍数。假如,输出yes,不然输出no。#includevoidmain()intn;6scanf(%d,&n);if(n%5=0&n%7=0)printf(yesa);elseprintf(noa);编写一程序,关于给定的一个百分制成绩,输出相应的五分制成绩。设:90分以上为A,8089分为B,7079分为C,6069分为D,60分以下为E。要求必然使用switch-case构造实现。#i

27、ncludestdio.h8intmain()intscore,g;printf(请输入百分制成绩:);scanf(%d,&score);g=score/10;switch(g)case1:case2:case3:case4:case5:printf(En);break;case6:printf(Dn);break;case7:printf(Cn);break;case8:printf(Bn);break;case9:printf(An);break;default:printf(InputError!);编写一个简单计算器程序,输入格式为:data1opdata2。此中data1和data2

28、是参加运算的两个数,为运算符,它的取值只好是+、-、*、/。要求必然使用switch-case语句实现。op#includevoidmain()floatdata1,data2;charop;printf(Enteryourexpression:);scanf(%f%c%f,&data1,&op,&data2);switch(op)case+:printf(%.2f+%.2f=%.2fn,data1,data2,data1+data2);break;case-:93printf(%.2f-%.2f=%.2fn,data1,data2,data1-data2);break;case*:print

29、f(%.2f*%.2f=%.2fn,data1,data2,data1*data2);break;case/:if(data2=0)printf(Divisionbyzero.n);elseprintf(%.2f/%.2f=%.2fn,data1,data2,data1/data2);break;default:printf(Unknownoperater.n);已知银行整存整取存款不一样样限时的月息利率分别为:940.315%限时一年0.330%限时二年月息利率0.345%限时三年0.375%限时五年0.420%限时八年要求输入存钱的本金和限时,求到期时能从银行获得的利息与本金的共计。#in

30、cludestdio.hintmain()floatmoney,y;printf(请输入存钱的本金和限时:);scanf(%f%f,&money,&y);if(y=1)money=money+0.00315*12*y;printf(到期时利息和本金共计为%f元。n,money);elseif(y=2)money=money+0.00330*12*y;printf(到期时利息和本金共计为%f元。n,money);elseif(y=3)money=money+0.00345*12*y;printf(到期时利息和本金共计为%f元。n,money);elseif(y=5)money=money+0.0

31、0375*12*y;printf(到期时利息和本金共计为%f元。n,money);elseif(y=8)money=money+0.00420*12*y;printf(到期时利息和本金共计为%f元。n,money);elseprintf(没有这类存款方式!);return0;从键盘输入一个学生的分数,要务实现这样的判断功能:假如分数大于100,输出”Inputerror!如”果分数介于100到90之间,输出”VeryGood!”假如分数介于80到90只,输出”Good!”假如分数介于70到80之间,输出”Middle”假如分数介于60到70之间,输出”Pass”假如分数小于60,输出”NoPa

32、ss!”。要求必然使用if-elseif构造实现。#includevoidmain()intscore;printf(yourscore:);scanf(%d,&score);if(score100)printf(Inputerror!n);elseif(score90)printf(VeryGood!n);elseif(score80)printf(Good!n);elseif(score70)printf(Middlen);elseif(score60)printf(Passn);elseprintf(NoPass!n);判断一个学生成绩的“优、良、中、差”:假如从键盘输入的字母是,A?,

33、输出考语“YouareExcellent!”;假如输入,B?,输出考语“Youarewell!”;假如输入,C?,输出考语“Youarepassing!”;假如输入,D?,输出考语“Youarenotpassing!”。假如输入的不是这四个字母,则出现提示“Inputerror!”请编写一个程序,实现该判断功能。要求必然使用switch-case构造实现。#includevoidmain()chargrade;printf(Pleaseinputagrade:);200scanf(%c,&grade);switch(grade)caseA:printf(YouareExcellent!n);break;caseB:printf(Youarewell!n);break;caseC:printf(Youarepassing!n);break;caseD:printf(Youarenotpassing!n);break;default:printf(Inputerror!n);输入一个整数,判断该数是奇数仍是偶数。要求必然使用if-else构造实现。#includevoidmain()intx;211printf(Pleasein

温馨提示

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

评论

0/150

提交评论