资源描述:
《中国海洋大学2010-2011 12月份 c程上机考试20题的答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、中国海洋大学2010-201112月份C程上机考试20题的答案偶数的数依次取出,构成一个新数返回。高位仍在高位,低位仍在低位。例如:下面程序运行时输入:124578902,程序输出:24802.若输入:1357,输出:0#includelongfun(longx){inti=0,m,a[20];longb=0;do{m=x%10;if(m%2==0){a[i]=m;i=i+1;}}while((x/=10)!=0);for(i=i-1;i>=0;i--){b=b*10+a[i];}returnb;}2.编写函数vo
2、idfun(intk,int*p),功能是:将参数k(2≤k≤32767)所有的不相同质因子升序写入p所指的一维数组中,以-1作为所有质因子的结束标志。例如:下面程序运行时若输入200,输出:25;若输入27720,输出:235711;若输入101,输出101。#include#includevoidfun(intk,int*p){intm,j,i,n=0;for(m=2;m<=k;m=m+1){j=sqrt(m);for(i=2;i<=j;i++){if(m%i==0)break;}if((i>=
3、j+1)&&(k%m==0)){*(p+n)=m;k=k/m;if(k)n=n+1;}}*(p+n)=-1;}3.编写函数voidfun(int*x,intn),功能是:求出长度为n的数组x中的最大数与次最大数,并把最大数和a[0]对调,次最大数与a[1]对调,其余的数保持不变。下面程序运行时若输入:2461397058,则输出:9861327054。#include#defineN10voidfun(int*x,intn){inti,j,k,t;for(i=0;i<=1;i++){j=k=i;for(;j4、++){if(*(x+k)<*(x+j))k=j;}t=*(x+i);*(x+i)=*(x+k);*(x+k)=t;}}4.数组x中保存有n个整数,编写函数intfun(int*x,intn,float*w),对数组x进行如下操作:从第0个元素起对每5个元素求一个平均埴,并将这些均值依次存放在w所指的数组中。函数返回平均值的个数。例如:若输入n为14,14个数据为:112135245516275818011121314,则只为前10个求均值,输出结果为:29.2023.80#includeintfun(int*x,
5、intn,float*w){inti,j,k;floats=0;for(i=0;i#includeintfun(intx,longinty
6、){inti;longs=0;for(i=0;;i++){if(sintfun(char(*ss)[N],intm,char*s){inta,i,j,n,max=0;for(i=0;i<
7、m;i++){for(j=0;*(*(ss+i)+j)!=' ';j++);if(max