计算机二级c语言答案in.docx

上传人:b****4 文档编号:5981573 上传时间:2023-05-09 格式:DOCX 页数:24 大小:28.23KB
下载 相关 举报
计算机二级c语言答案in.docx_第1页
第1页 / 共24页
计算机二级c语言答案in.docx_第2页
第2页 / 共24页
计算机二级c语言答案in.docx_第3页
第3页 / 共24页
计算机二级c语言答案in.docx_第4页
第4页 / 共24页
计算机二级c语言答案in.docx_第5页
第5页 / 共24页
计算机二级c语言答案in.docx_第6页
第6页 / 共24页
计算机二级c语言答案in.docx_第7页
第7页 / 共24页
计算机二级c语言答案in.docx_第8页
第8页 / 共24页
计算机二级c语言答案in.docx_第9页
第9页 / 共24页
计算机二级c语言答案in.docx_第10页
第10页 / 共24页
计算机二级c语言答案in.docx_第11页
第11页 / 共24页
计算机二级c语言答案in.docx_第12页
第12页 / 共24页
计算机二级c语言答案in.docx_第13页
第13页 / 共24页
计算机二级c语言答案in.docx_第14页
第14页 / 共24页
计算机二级c语言答案in.docx_第15页
第15页 / 共24页
计算机二级c语言答案in.docx_第16页
第16页 / 共24页
计算机二级c语言答案in.docx_第17页
第17页 / 共24页
计算机二级c语言答案in.docx_第18页
第18页 / 共24页
计算机二级c语言答案in.docx_第19页
第19页 / 共24页
计算机二级c语言答案in.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

计算机二级c语言答案in.docx

《计算机二级c语言答案in.docx》由会员分享,可在线阅读,更多相关《计算机二级c语言答案in.docx(24页珍藏版)》请在冰点文库上搜索。

计算机二级c语言答案in.docx

计算机二级c语言答案in

a与b合并成c

填空STYPEFILEfp

改错for(i=0;i<=sl;i++)t[2*sl]='\0';

a十位和个位放在c千位和十位,b十位和个位放在c百位和个位。

4152

*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);

填空1si*10

改错intfun(intn,intxx[][M])

printf("%d",xx[i][j]);

a十位和个位放在c千位和十位,b十位和个位放在c个位和百位。

4251

*c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10);

填空*fwstrstr

改错voidfun(longs,long*t)sl=sl*10;

a十位和个位放在c个位和百位,b十位和个位放在c千位和十位。

1524

*c=(b/10)*1000+(a%10)*100+(b%10)*10+(a/10);

填空fpfclose(fp)fname

改错for(i=j+1;i

a十位和个位放在c个位和百位,b十位和个位放在c十位和千位。

2514

*c=(b%10)*1000+(a%10)*100+(b/10)*10+(a/10);

填空"r"fsft

改错if(d%2==0)s/=10;

a十位和个位放在c十位和千位,b十位和个位放在c百位和个位。

5142

*c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10);

填空kN-1temp

改错voidfun(int(*a)[M],intm)

a[j][k]=(k+1)*(j+1);

a十位和个位放在c十位和千位,b十位和个位放在c个位和百位。

5241

*c=(a%10)*1000+(b%10)*100+(a/10)*10+(b/10);

填空0xt++

改错inti,sl;t[i]=s[sl-i-1];

a十位和个位放在c百位和个位,b十位和个位放在c千位和十位。

1425

*c=(b/10)*1000+(a/10)*100+(b%10)*10+(a%10);

填空structstudent*a->score[i]a

改错char*fun(char(*sq)[M])returnsp;

a十位和个位放在c百位和个位,b十位和个位放在c十位和千位。

2415

*c=(b%10)*1000+(a/10)*100+(b/10)*10+(a%10);

整除

填空qnextnext

改错p=j;p=i;

1到m之内(含m)能被7或11整除的整数放在数组a中。

inti;*n=0;

for(i=7;i<=m;i++)if((i%7==0)||(i%11==0))a[(*n)++]=i;

填空s[i]'9'*t=n

改错t=*x;*x=y;return(t);

1到1000之内能被7或11整除,但不能同时被7和11整除的整数放在数组a中。

inti;*n=0;

for(i=7;i<1000;i++)

if(((i%7)==0||(i%11)==0)&&(i%77)!

=0)a[(*n)++]=i;

填空a[i]a[i]0

改错y=1;d=a-i;

n以内(包括n)能被5或9整除的所有自然数的倒数之和。

inti;doublesum=0.0;

for(i=1;i<=n;i++)

if(i%5==0||i%9==0)sum+=1.0/i;returnsum;

填空'0's++sum

改错if((k%13==0)||(k%17==0))}

n以内(不包括n)同时能被3与7整除的所有自然数之和的平方根s。

doublesum=0.0;inti;

for(i=21;i<=n;i++)

if((i%3==0)&&(i%7==0))sum+=i;returnsqrt(sum);

字符串

填空nextt->datat

改错fun(char*a)printf("%c",*a);

比较两个字符串长度,返回较长字符串。

inti;char*p=s,*q=t;

for(i=0;*p&&*q;i++){p++;q++;}

if(*p==0&&*q==0)returns;

if(*p)returns;

elsereturnt;

填空[N]ii+1

改错aa[i]=m%k;printf("%d",aa[i-1]);

从传入num个字符串中找出最长的一个字符串。

if(strlen(a[i])>maxlen){maxlen=strlen(a[i]);k=i;}

填空i+1k=jt

改错voidfun(char*str,charch)

if(*str!

=ch)str[1]='\0';

字符串中内容逆置。

charb[N];inti=0,j;memset(b,0,N);

for(j=strlen(s)-1;j>=0;j--)b[i++]=s[j];strcpy(s,b);

填空doublef1f2

改错p=h->next;p=p->next;

判断字符串是否为回文。

inti,j=strlen(str);

for(i=0;i

if(str[i]!

=str[j-i-1])return0;

return1;

填空ss[i]n+j1

改错if(*p=='')*(p-1)=toupper(*(p-1));

对长度为7个字符的字符串,除首,尾字符外,将其余5个字符按ASCII码降序排列。

charch;inti,j;

for(i=1;i<6;i++)

for(j=i+1;j<6;j++)

{if(*(s+i)<*(s+j)){ch=*(s+j);*(s+j)=*(s+i);*(s+i)=ch;}}

带有头结点的单向链表中,查找数据域中值为ch的结点,找到后通过函数值返回结点在链表中所处顺序号。

填空NULLnhead,ch

改错for(i=0,t=0;p[i];i++)c[t]='\0';

字符串ss中所有下标为奇数位置上字母转换为大写。

char*p=ss;inti=0;

while(*p){if((i%2)&&(*p>='a'&&*p<='z'))*p-=32;p++;i++;}

returnss;

将a所指4*3矩阵中第k行的元素与第0行的元素交换。

填空kNa[k][i]

改错for(i=strlen(t)-1;i;i--)

if(t[j]>t[j+1])

字符串ss中所有下标为奇数位置上字母转换为大写。

char*p=ss;inti=0;

while(*p){if((i%2)&&(*p>='a'&&*p<='z'))*p-=32;p++;i++;}

returnss;

填空0||1

改错t-=1.0/i;returnt;

删除字符串中所有空格。

char*p=str;inti=0;

while(*p){if(*p!

='')str[i++]=*p;p++;}str[i]='\0';

填空klenss[i][j]

改错result*=n--;returnresult;

从字符串中删除指定字符。

char*p=s;inti=0;

while(*p){if(*p!

=c)s[i++]=*p;p++;}

s[i]='\0';

填空t=ii'\0'

改错while(fabs(t)>=num)t=s/n;

删除字符串中指定下标的字符。

strncpy(b,a,n);b[n]=0;strcat(b,a+n+1);

填空datanexthead

改错while(*r)*a=*r;a++;r++;

s字符串中下标为偶数的字符删除,剩余字符放在t数组中。

inti,j=0;

for(i=1;i

填空STUstd[i].numstd[i]

改错r++;p++;if(*r=='\0')

s字符串中ASCII值为偶数的字符删除,剩余字符放在t数组中。

inti,j=0;

for(i=0;i

填空s[i]k'\0'

改错while(*w)if(*r==*p)

s字符串中ASCII值为奇数的字符删除,剩余字符放在t数组中。

inti,j=0;

for(i=0;i

填空jkp

改错while(i

s字符串中下标为偶数同时ASCII值为奇数的字符删除,剩余字符放在t数组中。

inti,j=0;

for(i=0;i

if(!

((i%2)==0&&(s[i]%2)))t[j++]=s[i];t[j]='\0';

填空*nnexthead

改错a=NULL;if(*r==*p)

s字符串中除了下标为偶数同时ASCII值也为偶数的字符外,其余的都删除。

inti,j=0;

for(i=0;i

if(s[i]%2==0)t[j++]=s[i];t[j]='\0';

填空0i++2.0*i

改错voidfun(char*s,char*t)t[2*d]='\0';

s字符串中除了下标为奇数同时ASCII值也为奇数的字符外,其余的都删除。

inti,j=0;

for(i=1;i

if(s[i]%2)t[j++]=s[i];t[j]='\0';

填空j++s[i]=t1[i]j

改错for(j=i+1;j<6;j++)*(pstr+i)=*(pstr+j);

ss字符串中指定字符的个数。

intcnt=0;char*p=ss;

while(*p){if(*p==c)cnt++;p++;}

returncnt;

填空[N]len*n=len

改错t+=1.0/i;returnt;

统计一个长度为2的字符串在另一个字符串中出现的次数。

intcnt=0;char*p=str,*q;

while(*p)

{q=strstr(p,substr);

if(q==NULL)break;

p=q+strlen(substr);cnt++;}

returncnt;

填空1s[k]c

改错longs=0,t=0;t=t/10;

统计字符串中‘a’到‘z’26个字母各自出现次数,放在pp数组中。

char*p=tt;inti;

for(i=0;i<26;i++)pp[i]=0;

while(*p){if(*p>='a'&&*p<='z')pp[*p-'a']+=1;p++;}

填空filenamefpfp

改错p=(NODE*)malloc(sizeof(NODE));

returnh;

统计一行字符串中单词个数。

intk=1;

while(*s){if(*s=='')k++;s++;}returnk;

填空0x*10n/10

改错*t=0;if(d%2!

=0)

两个字符串的连接。

char*p=p1;

while(*p)p++;

while(*p2)*p++=*p2++;*p='\0';

平均分和结构体

填空xps

改错longk=1;num/=10;

计算n门课程的平均分。

floatave=0.0;inti;

for(i=0;i

填空j0i++

改错for(i=2;i<=m;i++)y-=1.0/(i*i);

m个人成绩存放在score数组中,将低于平均分人数返回,将低于平均分的分数放在below数组中。

floatav=0.0;inti,j=0;

for(i=0;i

for(i=0;i

if(av>score[i])below[j++]=score[i];returnj;

填空charch<=’9’‘0’

改错b[k]=*p;b[k++]=’’;

N名学生成绩已在一个带头节点的链表中,求平均分。

STREC*p=h->next;doubleav=0.0;intn=0;

while(p!

=NULL){av=av+p->s;p=p->next;n++;}

av/=n;returnav;

填空fp==fp

改错n=strlen(aa);ch=aa[i];

N名学生成绩已放入一个带头节点的链表中,h指向链表头结点,找出学生最高分。

doublemax=h->s;STREC*p;p=h->next;

while(p){if(p->s>max)max=p->s;p=p->next;}

returnmax;

填空a[i]a[j]a[j]

改错switch(g)case1:

case2:

return1;

某学生记录由学号,8门课程成绩和平均分组成,求出该学生平均分放在记录的ave成员中。

inti;

for(i=0;iave=a->ave+a->s[i];a->ave/=N;

填空*a2i+1

改错sum=0.0;if((i+1)%5==0)

学生记录由学号和成绩组成,把低于平均分学生数据放在b数组中。

inti;doubleave=0.0;*n=0;

for(i=0;i

for(i=0;i

填空->sno->name&t

改错doublefun(doublea,doublex0)

if(fabs(x1-x0)>0.00001)

学生记录由学号和成绩组成,把高于等于平均分学生数据放在b数组中。

doublet=0;inti;*n=0;

for(i=0;i

for(i=0;i=t)b[(*n)++]=a[i];returnt;

填空std[i].yearstd[i]n

改错IsPrime(intn)if(!

(n%i))

学生记录由学号和成绩构成,找出成绩最高的学生记录(只有一个最高分)。

inti,max=a[0].s,j=0;

for(i=1;i

*s=a[j];

填空0.0x[i]/Nj++

改错doublefun(intm)for(i=100;i<=m;i+=100)

学生记录由学号和成绩构成,找出成绩最低的学生记录(只有一个最低分)。

inti,min=a[0].s,j=0;

for(i=1;ia[i].s){j=i;min=a[i].s;}

*s=a[j];

填空1ia[p+i]

改错floatk;if(*a<*c)

记录由学号和成绩组成,把分数最高的学生数据放在h数组中,分数最高的学生可能不止一个。

inti,max=a[0].s,n=0;

for(i=1;i

for(i=0;i

returnn;

填空structstudenta.namea.score[i]

改错if(p==n)return-1;a[i]=a[i+1];

记录由学号和成绩组成,把分数最低的学生数据放在h数组中,分数最低的学生可能不止一个。

inti,min=a[0].s,n=0;

for(i=1;ia[i].s)min=a[i].s;

for(i=0;i

returnn;

填空n/2ia[n-1-i]

改错n=*p-‘0’;n=n*8+*p-‘0’;

记录由学号和成绩组成,函数返回指定学号的学生数据,若没找到,在结构体变量中给学号置空串,给成绩置-1。

STRECc;inti;c.num[0]=‘\0’;c.s=-1;

for(i=0;i

if(strcmp(a[i].num,b)==0)

{strcpy(c.num,a[i].num);c.s=a[i].s;break;}

returnc;

填空999t/10x

改错voidfun(longs,long*t)while(s>0)

记录由学号和成绩组成,按分数高低排列学生记录,高分在前。

STRECtmp;inti,j;

for(i=0;i

for(j=i+1;j

填空structstudentn-1a[i].name,a[j].name

改错q=p+i;while(q>p)

记录由学号和成绩组成,把指定分数范围内学生数据放在b数组中。

inti,j=0;

for(i=0;i

if(a[i].s>=l&&a[i].s<=h)b[j++]=a[i];returnj;

二维数组

填空*stdPERSONstd

改错intk,q,i;pt[i]=str[k][i];

数组左下半三角元素值全部置成0。

inti,j;

for(i=0;i

for(j=0;j<=i;j++)a[i][j]=0;

填空STUscore[i]&std

改错if(k>0)elseif(k==0)

数组左下半三角元素值乘以n。

inti,j;

for(i=0;i

for(j=0;j<=i;j++)a[i][j]*=n;

填空*avix[j]

改错floatfun(intn)for(i=2;i<=n;i++)

数组右上半三角元素值乘以m。

inti,j;

for(i=0;i

for(j=i;j

填空Nbreakn

改错sum=0;scanf("%d",&a[i][j]);

矩阵(3行3列)转置。

inti,j,arr[3][3];memcpy(arr,array,9*sizeof(int));

for(i=0;i<3;i++)

for(j=0;j<3;j++)array[i][j]=arr[j][i];

填空&&'\0's[j]

改错for(i=2;i<=m;i++)y+=1.0/(i*i);

B=A+A’,把矩阵A加上矩阵A的转置存放在矩阵B中。

inti,j,c[3][3];

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];}

填空x[i]/Nj++i++

改错num[k]=0;switch(*s)

二维数组周边元素之和。

inttot=0,i,j;

for(i=0;i

for(i=1;i

returntot;

填空s/Nj++-1

改错#includevoidupfst(char*p)

数组周边元素的平均值。

inti,j,n=0;doublesum=0;

for(i=0;i

for(i=1;i

returnsum/n;

填空h->nextp->next>

改错p=h->next;p=p->next;

M行N列的二维数组中的数据,按行的顺序放到一维数组中。

inti,j,k;

for(i=0;i

for(j=0;j

*n=mm*nn;

填空NODEnextr

改错if(i%2||s[i]%2==0)t[j]='\0';

M行N列的二维数组中的数据,按列的顺序放到一维数组中。

for(i=0;i

for(j=0;j

填空FILE*fpch

改错s[j++]=s[i];s[j]='\0';

M行N列的二维数组中的字符数据,按列的顺序放到一个字符串中。

for(j=0;j

填空nextNULLr

改错r=t;if(*r==0)

将字符串数组中的M个字符串,按顺序合并组成一个新的字符串。

for(i=0;i

素数

填空it++count

改错intfun(inta,intb,intc)

elsereturn1;

3到n之间所有素数的平方根之和。

inti,j=0;doubles=0;

for(i=3;i<=n;i++)

{for(j=2;j

if(i%j==0)break;

if(j==i)s=s+sqrt(i);}

returns;

填空a[0][i]

改错voidfun(int*x,int*y)t=*x;*x=*y;*y=t;

小于或等于lim的所有素数放在aa数组中,返回所素数个数。

for(j=2;j<=(i/2);j++)

if(i%j==0)break;

if(j>(i/2))aa[k++]=i;

填空s--return0

改错doublefun(intn)c=a;a+=

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

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2