资源描述:
《编程题汇总-答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一、编程题(总分100)1.(分值:2.1分)编写程序求出555555的约数中最大的三位数是多少。参考答案:#includevoidmain(){inta=555555;inti=100;intmax=100;while(i++<1000)if(a%i==0&&i>max)max=i;printf("%d",max);}2.(分值:2.1分)输入一个正整数,要求以相反的顺序输出该数。例如输入12345,输出位54321。参考答案:#includeintmain(
2、){inti;intj;scanf("%d",&i);while(i>0){j=i%10;printf("%d",j);i=i/10;}return0;}3.(分值:2.1分)编写程序,求S=1/(1*2)+1/(2*3)+1/(3*4)+……前50项之和。参考答案:#includeintmain(){floats=0;inti;for(i=1;i<51;i++)s+=1.0/(i*(i+1));printf("%f",s);return0;}4.(分值:2.1分)编写程序,求S=1
3、/(1+2)+1/(2+3)+1/(3+4)+……前50项之和。参考答案:#includevoidmain(){inti=1;floatsum=0;while(i<=50){sum=sum+1.0/(i+(i+1));i++;}printf("s=%f",sum);}5.(分值:2.1分)编一通用函数sub,分别统计字符串strg中字母''A''及''a''的个数;主函数中输入一不大于80个字符的字符串,调用上述函数,输出''A''及''a''的个数。(注:此程序不允许使用全
4、局变量,不允许在sub函数中输出)参考答案:#includevoidmain(){intnum1,num2;voidsub(char[],int,int);charstrg[80];printf("请输入字符:");gets(strg);sub(strg,&num1,&num2);printf("A的个数为:%d",num2);printf("a的个数为:%d",num1);}voidsub(charstrg[],int*n1,int*n2){inti,a=0,A=0;f
5、or(i=0;strg[i]!=' ';i++)if(strg[i]=='a')a++;elseif(strg[i]=='A')A++;*n1=a;*n2=A;}6.(分值:2.1分)编一通用函数avernum,计算含有n个数据的一维数组的平均值,并统计此数组中大于平均值的数据的个数;主函数中定义含有100个元素的数组x,x[I]=200*cos(I*0.875)(I=0,1,2……99),调用上述函数,输出此数组的平均值及大于平均值的数据的个数。(注:此程序不允许使用全局变量,不允许在avernu
6、m函数中输出)参考答案:#include"stdio.h"#include"math.h"#defineN100doubleavernum(double*x,doublen,doubleave){doubleaver=0.000000,a=0;inti;if(ave==0){for(i=0;i7、){doublex[N],m,aver;inti;for(i=0;i8、9),调用上述函数,输出此数组的平均值及大于平均值的数据之和。(注:此程序不允许使用全局变量,不允许在avermax函数中输出)参考答案:#include"stdio.h"#include"math.h"#defineN300doubleavernum(double*x,doublen,doubleave){doubleaver=0.000000,a=0;inti;if(ave==0){i=0;while(i