2012年9月份计算机二级C上机100套题答案

申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

文档介绍

2012年9月份计算机二级C上机100套题答案

2012年3月全国计算机等级考试二级C语言上机题库第一套1.程序填空程序通过定义学生结构体数组,存储了若干个学生的学号、姓名和三门课的成绩。函数fun的功能是将存放学生数据的结构体数组,按照姓名的字典序(从小到大排序)。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。第一处structstudentt;第二处for(i=0;i0)2程序修改/**found**/q=p+i;/**found**/while(q>p)3程序设计intfun(STREC*a,STREC*b,intl,inth){inti,j=0;for(i=0;i=1&&a[i].s<=h)b[j++]=a[i];returnj;}第二套1.程序填空给定程序中已建立一个带有头结点的单向链表,链表中的各结点按数据域递增有序连接。函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一个。第一处free(q);第二处q=p->next;第三处q=q->next;2.程序修改/**found**/p=j;/**found**/p=i;3.程序设计voidfun(intm,int*a,int*n){inti;*n=0;for(i=7;i<=m;i++)if((i%7==0)||(i%11==0))a[(*n)++]=i;}第三套1.程序填空函数fun的功能是:逆置数组元素是的值。例如:若a所指数组中的数据依次为:1、2、3、4、5、6、7、8、9,则逆置后依次为:9、8、7、6、5、4、3、2、1。形参n给出数组中数组中数据的个数。第一处for(i=0;idata==ch)returnn;第三处k=fun(head,ch);2.程序修改/**found**/for(i=0,t=0;p[i];i++)/**found**/c[t]=’’;3.程序设计voidfun(char*ss){inti;for(i=1;i=’a’&&ss[i]<=’z’)ss[i]-=32;}}第五套1.程序填空给定程序中,函数fun的功能是:计算下式前n项的和作为函数值返回。例如:当形参n的值为10的时,函数返回:9.6125588。第一处s=0;第二处for(i=1;i<=n;i++)第三处s=s+(2.0*i-1)*(2.0*i+1)/(t*t);2.程序修改/**found**/for(i=0;str[i];i++)/**found**/if(substr[k+1]==’’)3.程序设计doublefun(doubleeps){doubles=1,t=1./3;intn=1;while(t>=eps){s+=t;n++;t=t*n/(2.0*n+1);}return(s*2.0);}第六套1.程序填空给定程序中,函数fun的功能是:将形参s所指定字符串中所有的字母字符顺序前移,其他字母顺序后移,处理后字符串的首地址作为函数值返回。第一处t[j]=s[i];j++;第二处for(i=0;iscore[i]+=1;第三处returna;2.程序修改/**found**/char*fun(char(*sq)[M])/**found**/returnsp;3.程序设计#includevoidfun(inta,intb,long*c){*c=(b%10)*1000+(a/10)*100+(b/10)*10+a%10;}第八套1.程序填空函数fun的功能是:将形参观者工所指数组中的前半部分元素中的值和后半部分元素中的值对换。形参n中存放数组中数据的个数,若n为奇书,则中间元素不动。第一处p=(n%2==0)?n/2:n/2+1;第二处a[i]=a[p+i];第三处a[p+i]=t;2.程序修改/**found**/floatk;/**found**/if(*a<*c)3.程序设计intfun(STREC*a,STREC*b){inti,max=a[0].s,n=0;for(i=1;ia[i].s){j=0;b[j++]=a[i];min=a[i].s;}elseif(min==a[i].s)b[j++]=a[i];}returnj;}第十一套1.程序填空给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值,(规定所有数均为正数),将所指数组中大于平均值的数据移至数据的前部,小于等于平均数的移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。第一处av=s/N;第二处y[j++]=x[i];x[i]=-1;}第三处if(x[i]!=-1)y[j++]=x[i];2.程序修改/**found**/#include/**found**/upfst(char*p)3.程序设计doublefun(intw[][N]){inti,j,n=0;doublesum=0;for(i=0;ivoidfun(inta,intb,long*c){*c=(b%10)*1000+(a%10)*100+(b/10)*10+(a/10);}第十三套1.程序填空给定程序中,函数fun的功能是:找出N*N矩阵中每列元素中的最大值,并按顺序一次存放于形参b所指的一维数组中。第一处b[i]=a[0][i];第二处if(b[i]n#defineMAX100intfun(intlim,intaa[MAX]){inti,j,k=0;for(i=2;i<=lim;i++){for(j=2;j<=(i/2);j++)if(i%j==0)break;if(j>(i/2))aa[k++]=i;}returnk;}第十四套1.程序填空函数fun的功能是进行字母转换。若形参ch中小写英文字母,则转换成相应的大写英文字母;若形参ch中是大写英文字母,则转换成相应的小写英文字母;并将转换的结果作为函数值返回。第一处if((ch>=’a’)&&(ch<=’z’))第二处returnch+’a’-‘A’第三处returnch;2.程序修改/**found**/voidfun(int*a)/**found**/a[j]=a[j-1];3.程序设计intfun(intn){ints=0,i;for(i=2;i=’a’&&*p<=’z’)pp[*p-‘a’]+=1;p++;}}第十六套1.程序填空人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号唯一。函数fun的功能是:找出指定编号人员数据,作为函数值返回,由主函数输出,若指定编号不存在,返回数据中编号为空串。第1处STUfun(STU*std,char*num)第2处if(strcmp(std[i].num,num)==0)第3处return(std[i]);2.程序修改/**found**/r++;p++;/**found**/if(*r==0)3.程序设计#include#includevoidfun(char*s,chart[]){inti,j=0;for(i=0;i=’0’&&s[i]<=’9’)n++;第3处*t=n;2.程序修改/**found**/t=*x;*x=y;/**found**/return(t);3.程序设计#includeviodfun(int*a,int*n){inti;*n=0;for(i=7;i<1000;i++)if(((i%7)==0││(i%11)==0&&(i%77)!=0)a[(*n)++]=i;}第十八套1.程序填空给定程序中,函数fun的功能是:有N×N矩阵,根据给定的m(m<=n)值,将每行元素中的值均右移m个位置,左边值为0.第1处for(i=0;i0.000001);returnx1;}第十九套1.程序填空给定程序中,函数fun的功能是:将a所指的3×5矩阵中第k列的元素左移到第0列,第k列以后的每列元素行依次左移,原来左边的各列依次绕到右边。第1处for(p=1;p<=k;p++)第2处for(j=0;j=num)/**found**/t=s/n3.程序设计viodfun(chara[],charb[],intn){strncpy(b,a,n);b[n]=0;strcat(b,a+n+1);}第二十一套1.程序填空给定程序中,函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k的字符串右边的字符删去,只保留左边的k个字符。ss所指字符串数组中共有N个字符串,且串小于M。第一处voidfun(char(*ss)[M],intk)第二处while(in){i=n;j=k;for(;a[j]!=0;j++)a[i++]=a[j];a[i]=0;}}第二十二套1.程序填空给定程序中,函数fun的功能是:a所指4×3矩阵中第k行的元素与第0行元素交换。例如:有下列矩阵123456789101112第一处voidfun(int(*a)[N],intk)第二处for(i=0;it[j+1])3.程序设计voidfun(char*ss){char*p=ss;inri=0;while(*p){if((i%2)&&(*p>=’a’&&*p<=’z’))*p-=32;p++;i++;}}第二十三套1.程序填空给定程序的功能是:调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数的返回值是1,失败是返回值是0.在复制的过程中,把复制的内容输出到终端屏幕。主函数源文件名放在变量sfname中,目标文件放在变量tfname中。第一处if((fs=fopen(source,”r”))==NULL)第二处while(!feof(fs))第三处fputc(ch,ft);2.程序修改/**found**/if(d%2==0)/**found**/s/=10;3.程序设计voidfun(inta,intb,long*c){*c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10);第二十四套1.程序填空程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。函数fun的功能是将形参a所指结构体变量中的数据赋给函数中的结构体变量b,并修改b中的学号和姓名,最后输出修改后的数据。第一处b=a;第二处strcpy(b.name,”LiSi”)第三处for(i=0;i<3;i++)printf(“%6.2f”,b.score[i]);2.程序修改/**found**/s[j++]=s[i];/**found**/s[j]=’’;3.程序设计voidfun(char*a){char*p,*q;intn=0;p=a;while(*p==’*’){n++;p++;}q=a;while(*p){*q=*p;p++;q++;}for(;n>0;n--)*q++=’*’;*q=’’;}第二十五套1.程序填空用筛选法可得到2—n(n<10000)之间的所有素数,方法是:首先从素数2开始,将所有2的倍数的数从数表中删去(把数表中相应位置的值置成0);接着从数表中找下一个非0数,并从数表中删去该数的所有倍数,依此类推,直到所找的下一个数等于n为止。这样会得到一个序列:2、3、5、7、11、13、17、19、23……函数fun用筛选法找出所有小于等于n的素数,并统计素数的个数作为函数值返回。第一处for(j=a[i]*2;j<=n;j+=a[i])第二处while(a[i]==0)第三处if(a[i]!=0)2.程序修改/**found**/y=1;/**foune**/d=a-i;3.程序设计doublefun(intn){inti;doublesum=0.0;for(i=1;imaxlen){maxlen=strlen(a[i]);k=i;}}*max=a[k];}第二十七套1.程序填空函数fun的功能是计算f(x)=1+x-2/2!+3/3!-4/4!+……的前n项和。若x=2.5,n=15时,函数值为1.917914。第一处f=1;第二处t*=(-1)*x/i;第三处f+=t;2.程序修改/**found**/for(i=1;i<=3;i++)/**found**/if(k>=0&&k<=6)3.程序设计doublefun(intn){doubles=1’longt=1;inti;for(i=1;i<=n;i++){t=t*i;s+=1.0/t;}returns;}第二十八套1.程序填空给定程序中,函数fun的功能是:计算N*N矩阵的主对角线元素和方向对角线元素之和,并作为函数值返回。注意:要求先累加主对角线元素中的值,然后累加反响对角线元素的值。第一处sum=0;第二处sum+=t[i][i];第三处sum+=t[i][n-i-1];2.程序修改/**found**/doubler;/**found**/while(fabs(n-m)>0.001)3.程序设计voidfun(char*a,char*h,char*p){intj=0;char*q=a;while(*q&&q=0;j--)第三处t[j][N-1]=r[j];2.程序修改/**found**/doublef(doublex)/**found**/returns;3.程序设计doublefun(intm){doubles=0.0;inti;for(i=0;i<=m;i++)s+=log(1.0*i);s=sqrt(s);returns;}第三十套1.程序填空函数fun的功能是:反形参a所指数组中的奇数按原顺序依次存放到a[0]、a[1]、a[2]……中,把偶数从数组中删除,奇数个数通过函数值返回。例如:若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7,删除偶数后a所指数组中的数据为:9、1、3、5、7,返回值为5。第一处if(a[i]%2==1)第二处j++;第三处returnj;2.程序修改/**found**/t=a;a=b;b=t;/**found**/return(b);3.程序设计voidfun(char*a){intj=0;char*p=a;while(*p){if(*p!=’*’)a[j++]=*p;p++;}a[j]=0;}第三十一套1.程序填空给定程序中,函数fun的功能是:在形参ss所指字符串数组中,删除所有串长超过k的字符串,函数返回所剩字符串的个数。Ss所指字符串数组中共有N个字符串,且串长小于M。第一处for(i=0;idata=x;第二处q=p;第三处q->next=s;2.程序修改/**found**/longk=1;/**found**/num/=103.程序设计floatfun(float*a,intn){inti;floatave=0.0;for(i=0;inext;第三处fun(head,&num);2.程序修改/**found**/a=NULL;/**found**/if(*r==*p)3.程序设计voidfun(char*s,chart[]){inti,j=0;for(i=0;i=’0’&&ch<=’9’)第三处return‘9’-(ch-‘0’);2.程序修改/**found**/b[k]=*p;/**found**/b[k++]=’‘;3.程序设计doublefun(STREC*h){STREC*p=h->next;doubleav=0.0;intn=o;while(p!=NULL){av=av+p->s;p=p->next;n++;}av/=n;returnav;}第三十七套1.程序填空函数fun的功能是:把形参a所指数n组中的偶数按原顺序依次存放a[0]、a[1]、a[2]……中,把奇数从数组中删除,偶数个数通过函数值返回。第一处if(a[i]%2==0){第二处a[j]=a[i];j++;第三处returnj;2.程序修改/**found**/fun(intn)/**found**/if(n==1)3.程序设计voidfun(char*a,intn){char*p=a;intj=0;while(*p)p++;p--;while(*p==’*’)p--;p++;while(jnext;第2处while(q)第3处p=p->next;2程序修改/**found**/while(*s)/**found**/s++;3程序设计voidfun(int*w,intp,intn){inti,j=0,b[N];for(i=p+1;inext;第2处if(p==0)return;第3处p=q;q=r;2程序修改/**found**/r=t;/**found**/if(*r==0)3程序设计voidfun(chara[M][N]),char*b){inti;*b=0;for(i=0;i=xa)3程序设计p=m!/(n!*(m-n)!)floatfun(intm,intn){floatp;p=1.0*jc(m)/jc(n)/jc(m-n);returnp;}第四十七套1程序填空函数fun的功能是:计算f(x)=1+x-x2∕2!+x3∕3!-X4/4!直到∣xn/n!∣<10-6若x=2.5,函数值为:1.917915。第1处t=x第2处t*=(-1.0)*x/n;第3处while(fabs(t)>=1e-6)2程序修改/**found**/for(i=1;i<=y;i++)/**found**/t=t%1000;3程序设计doublefun(doublex){intn=1;doublesn=1;doublexn=1,xn1=0;while(fabs(xn-xn1)>=0.000001){xn=xn*x*(0.5-n+1)/n;n+=1;sn+=xn;}return(sn);}第四十八套1程序填空给定程序中,函数fun的功能是:计算出带有头节点的单向链表中各节点数据域中值之和作为函数值带回。第1处s+=p->data;第2处p=p->next;第3处printf(“nsum=%dn”,fun(head));2程序修改/**found**/while(*r)/**found**/*a=*r;a++;r++;3程序设计voidfun(char*s,chart[]){inti,j=0;for(i=1;i=len)strcpy(t,s);第2处t[j++]=s[i];第3处t[j]=0;2程序修改/**found**/if(i%k==0)/**found**/if(k>=i)3程序设计voidfun(intx,intpp[],int*n){inti;*n=0;for(i=1;i<=x;i++)if((x%i==0)&&(i%2))pp[(*n)++]=i;}第五十套n1程序填空给定程序中,函数fun的功能是:将形参s所知字符串中的所有数字字符顺序前移,其他字符顺序后移,处理后新字符串的首地址作为函数值返回。第1处p[j]=s[i];j++;}第2处for(i=0;iscore[i])below[j++]=score[i];returnj;}第五十三套1程序填空给定程序中,函数fun的功能是将形参指针所指结构体数组中的三个元素按num成员进行升序排列。第1处voidfun(PERSON*std)第2处PERSONtemp;第3处fun(std);2程序修改/**found**/intk,q,i;/**found**/pt[i]=str[k][i];3程序设计intfun(inta[][N]){inti,j;for(i=0;ia[i].s){j=i;min=a[i].s;}*s=a[j];}第五十五套1程序填空给定程序中,函数fun的功能是:判断形参s所指字符串是否是“回去”(Palindrome)若是,函数返回值为1;不是,函数返回值为0,“回文”是正读和反读都是一样的字母串(不区分大小写字母)。第1处1p=s;第2处1p++;rp--;}第3处if(1pe)第3处x=(2*i+1)/(t*t);2程序修改/**found**/doublefun(intn)/**found**/s=s+(double)a/b;3程序设计fun(inta[][M]){inti,j,max=a[0][0];for(i=0;i<2;i++)for(j=0;ja[j])2程序修改/**found**/switch(g)/**found**/case1:return1;case2:return1;3程序设计voidfun(STREC*a){inti;for(i=0;iave=a->ave+a->s[i];a->ave/=N}第六十套1程序填空给定程序中,函数fun的功能是:有N×N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素来。第1处voidfun(int)(*t)[N]第2处t[i][j]=t[i][j]+t[j][i];第3处t[j][i]=0;2程序修改/**found**/#defineFU(m,n)((m)/(n))/**found**/return(value);}3程序设计voidfun(char*a){intj=0;char*p=a;while(*p=='*')p++;while(*p){a[j++]=*p;p++;}a[j]=0;}第六十一套1程序填空人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中。函数fun的功能是:找出指定出生年份的人员,将其数据放在形参k所指出的数组中,由主函数输出,同时由函数值返回满足指定条件的人数。第1处if(std[i].year==year)第2处k[n++]=std[i];第3处return(n);1程序修改/**found**/IsPrime(intn)/**found**/if(!(n%i))2程序设计fun(STUa[],STU*s){inti,max=a[0].s,j=0;for(i=1;ia[mid])3程序设计voidfun(char*a,char*p){char*q=a;intj=0;while(*q&&q=0;j--)b[i++]=s[j];strcpy(s,b);}第六十五套1程序填空给定程序中,函数fun的功能是:计算下式前5项的和作为函数值返回。S=1×3/22-3×5/42+5×7/62-……+(-1)n-1(2×n-1)×(2×n+1)/(2×n)2例如,当形参n的值为10时,函数返回:-0.204491。第1处k=1;第2处t=2*j第3处k=k*(-1);2程序修改/**found**/K++;/**found**/if(m==k)3程序设计voidfun(inta[],intn,int*max,int*d){inti;*max=a[0];*d=0;for(i=1;i='0'&&s[i]<='9')第2处while(s[i+1+n]!=0)n++;第3处s[j+1]=s[j];2程序修改/**found**/for(i=2;i<=m;i++)/**found**/y+=1.0/(i*i);3程序设计voidfun(inta[3][3],intb[3][3]){Intc[3][3];inti,j;for(i=0;i<3;i++)for(j=0;j<3;j++){c[i][j]=a[j][i];b[i][j]=a[i][j]+c[i][j];}}第六十七套1程序填空给定程序中,函数fun的功能是:找出100~999之间(含100和999)所有整数中个位上数字之和为x(x为一正整数)的整数,然后输出:符合条件的整数个数作为函数值返回。第1处while(t<=999)第2处s1=t%10;s2=(t/10)%10;s3=t/100;第3处if(s1+s2+s3==x)2程序修改/**found**/voidfun(longs,long*t)/**found**/while(s>0)3程序设计intfun(STRECa[]){STRECtmp;inti,j;for(i=0;i2)的素数的个数,素数的个数作为函数值返回。第1处for(j=2;j=i)2程序修改/**found**/sum=0;j=0;/**found**/if(sum%4==2)3程序设计doublefun(intn){inti;doublesum=0.0;if(n>1&&n<=100){for(i=1;i<=n;i++)sum+=1.0/(2*i-1)-1.0/(2*i);}returnsum;}第七十三套1程序填空给定程序中,函数fun的功能是:f(x)=1+x+x2/+…+xn/n!直到|x/n!|<10-6,若x=2.5,函数值为:12.182494。第1处f=1.0+x;第2处t*=x/n第3处f+=t;2程序修改/**found**/d=1;s=0;/**found**/d=d/10;3程序设计doublefun(doublex[9]){inti;doubleavg=0.0,sum=0.0;for(i=0;i<8;i++){avg=(x[i]+x[i+1])/2;sum+=sqrt(avg);}rturnsum;}第七十四套1程序填空给定程序中,函数fun的功能是:计算f(x)=1+x+x2/+…+xn/n!的前n项。若x=2.5,函数值为:12.182340。第1处t=1;第2处for(i=1;inext;第2处printf("%d",t->data);第3处free(t);2程序修改/**found**/fun(char*a)/**found**/printf("%c",*a);3程序设计nchar*fun(char*s,char*t){inti;char*p=s,*q=t;for(i=0;*p&&*q;i++){p++;q++;}if(*p==0&&*q==0)returns;if(*p)returns;elsereturnt;}第七十六套1程序填空在给定程序中,函数fun的功能是在形参s所指字符串中寻找与参数c相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则函数不做任何处理。第1处for(i=0;s[i]!='';i++)第2处n=0;第3处s[j+1]=c;2程序修改/**found**/doublesum=0.0;/**found**/sum/=c;3程序设计floatfun(intn){inti,j,t;floats=0;for(i=1;i<=n;i++){t=0;for(j=1;j<=i;j++)t+=j;s=s+1.0/t;}returns;}第七十七套1程序填空给定程序中,函数fun的功能是:将形参n所指变量中,各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并通过形参指针n传回所指变量。如输入一个数:27638496,新的数为729第1处{t=*n%10;第2处if(t%2!=0)第3处*n=x;2程序修改/**found**/if(n==0)/**found**/result*=n--;3程序设计longfun(char*p){inti,len,t;longx=0;len=strlen(p);if(p[0]=='-'){t=-1;len--;p++;}elset=1;While(*p)x=x*10-48+(*p++);returnx*t;}第七十八套1给定程序中,函数fun的功能是将形参给定的字符串、整数、浮点数写到的文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。请在程序的下划线处填入正确的内容分并把下划线删除,使得程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。第1处FILE*fp;第2处while(!feof(fp)){第3处putchar(ch);ch=fgetc(fp);}2程序修改/**found**/s[j++]=s[i];/**found**/s[j]='';3程序设计题voidfun(chars[][N],char*b){inti,j,n=0;for(i=0;inext;第2处q=p->next;第3处if(p->data>=q->data))2程序修改/**found**/p=h->next;/**found**/p=p->next;3程序设计voidfun(int(*s)[10],int*b,int*n,intmm,intnn){inti,j,k;for(i=0;inext;/**found**/p=p->next;3程序设计intfun(char*str){inti,j=strlen(str);for(i=0;ia[m])m=k;3程序设计unsignedfun(unsignedw){if(w>=10000)returnw%10000;if(w>=1000)returnw%1000;if(w>=100)returnw%100;returnw%10;}第八十四套1程序填空程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是重写形参filename所指的文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其他学生的数据不变。第1处fp=fopen(filename,"rb+")第2处fseek(fp,-1L*sizeof(STU),SEEK_END);第3处fwrite(&n,sizeof(STU),1,fp);2程序修改/**found**/p=(NODE*)malloc(sizeof(NODE));/**found**/returnh;3程序设计intfun(char*s){intk=1;while(*s){if(*s=='')k++;s++;}returnk;}第八十五套1程序填空程序通过定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是从形参filename所指的文件中读入学生书数据,并按照从小到大排序后,再用二进制方式把排序后的学生数据输出到filename所指的文件中,覆盖原来的文件内容。第1处fp=fopen(filename,"rb");第2处if(s[i].sno>s[j].sno)第3处fwrite(s,sizeof(STU),N,fp);2程序修改/**found**/p=s;/**found**/while(*p++)3程序设计voidfun(int*a,int*b){inti,j;for(i=0;i10)b[M-1]++;elseb[j]++;}}第八十六套1程序填空给定程序中,函数fun的功能是将不代头结点的单向链表逆置。即若原链表中从头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次为:10、8、6、4、2.请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。第1处NODE*fun(NODE*h)第2处r=q->next;第3处q=r;2程序修改/**found**/if(i%2||s[i]%2==0)/**found**/t[j]='';3程序设计#includevoidfun(int(*s)[10],int*b,int*n,intmm,intnn){inti,j,np=0;for(i=0;is;STREC*p;p=h->next;while(p){if(p-s>max)max=p->s;p=p->nest;}returnmax;}第八十八套1程序填空给定程序中,函数fun的功能是调用随机函数产生的20个互不相同的整数放在形参a所指数组中(此数组在主函数中已置0)。第1处while(nN。第1处intfun(char(*ss)[N],int*n)第2处if(i==0)*n=len;第3处*n=len;2程序修改/**found**/t+=1.0/i;/**found**/returnt;3程序设计intfun(char*str,char*substr){intcnt=0;char*p=str,*q;while(*p){q=strstr(p,substr);if(q==NULL)break;p=q+strlen(substr);cnt++;}第九十套1程序填空给定程序中,函数fun的功能是:求出形参ss所指字符串数组中最长字符串的长度,将其余字符串右边用字符*补齐,使其与最长的字符串等长。Ss所指字符串数组中有M个字符串,且串长tt[j][i]){min=tt[j][i];k=j;}pp[i]=tt[k][i];}}第九十二套1程序填空给定程序中,函数fun的功能是:将a和b所指的两字符串转达换成面值相同的整数,并进行相加作为函数值返回,规定字符串只含9个以下数字字符。第一处d=d*10+*s-‘0’;第二处s++;第三处returnctod(a)+ctod(b);2程序修改/**found**/*a=*a+1;/**found**/*b=*b+1;3程序设计floatfun(floath){longw;w=h*100+1.5;return(float)w/100;}第九十三套1程序填空给定程序中,函数fun的功能是:找出100—x(x<=999)之间各位上的数字之和为15的所有整数,然后输出,符合条件的整数个数作为函数值返回。第一处n=0;第二处while(t<=x)第三处t++;2程序修改/**found**/inti,s1;/**found**/t[i]=s[s1-i-1];3程序设计voidfun(inta,intb,int*c){*c=(b/10)*1000+(a/10)*100+(b%10)*10+(a%10);}第九十四套1程序填空给定程序中,函数fun的功能是:从三个形参a、b、c中找出中间那个数,作为函数值返回。第一处t=a>b?(b>c?b:(a>c?c:a)):((ac)?c:b));2程序修改/**found**/c=c+32;/**found**/c=c+5;3程序设计doublefun(intn){inti;doublefac=1.0;doublesum=1.0;for(i=2;i<=n;i++){fac+=sqrt(i);sum+=fac;}returnsum;}第九十五章1程序填空给定程序中函数fun的功能是:调用fun函数建立班级通讯录。通讯录中记录每位同学的编号、姓名和电话号码。班级的人数和学生信息从键盘读入,每个人的信息作为一个数据块写到名为mylife5.dat的二进制文件中。第一处intfun(STYPE*std)第二处FILE*fp;inti;第三处fwrite(&std{i},sizeof(STYPE),1,fp);2程序修改/**found**/for(i=0;isno=10004;第二处strcpy(b->name,”LiJie”);第三处fun(&t);2程序修改/**found**/doublefun(doublea,doublex0)/**found**/if(fabs(x1-x0)>0.00001)3程序设计doublefun(STREC*a,STREC*b,int*n){doublet=0;inti;*n=0;for(i=0;it)b[(*n)++]=a[i];returnt;}第九十七套1程序填空给定程序中函数fun的功能是:找出形参s所指字符串中出现频率最高的字母(不区分大小写),并统计其出现的次数。第一处ch=tolower(*s);第二处k[n]+=1;第三处if(max=0;j--)第三处ss[i][j]=’*’;2程序修改/**found**/result*=n--;/**found**/returnresult;3程序设计intfun(chars[],charc){char*p=s;inti=0;while(*p){if(*p!=c)s[i++]=*p;p++;}s[i]=0;}第一百套1程序填空给定程序通过定义并赋值的方式,利用结构体变量存储了一名学生的学号姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系统a。第一处voidmodify(STU*ss,floata)第二处ss->score[i]*=a;第三处modify(&std,a);2程序修改/**found**/if(k>0)/**found**/elseif(k==0)3程序设计intfun(inta[][N],intn){inti,j;for(i=0;i
查看更多

相关文章