历年全国计算机等级考试_二级C语言上机考试题库及答案_第1页
历年全国计算机等级考试_二级C语言上机考试题库及答案_第2页
历年全国计算机等级考试_二级C语言上机考试题库及答案_第3页
历年全国计算机等级考试_二级C语言上机考试题库及答案_第4页
历年全国计算机等级考试_二级C语言上机考试题库及答案_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

1、1 .填空给定程序的功能是调用fun函数建立班级通讯录。通讯录中记录每位学生的编号,姓名和电话号码。班级的人数和学生的信息从键盘读入,每个人的信息作为一个数据块写到名为myfile5.dat的二进制文件中。请在程序的下划线处填入正确的内容并把下划线删除,是程序得出正确的结注意:源程序存放在考生文件夹下的BLANK1.C中不得增行或删行,也不得更改程序的结构!voidcheck();/*found*/intfun(1*std)/*found*/2-*fp;inti;.if(fp=fopen("myfile5.dat","wb")=NULL)return(0

2、);printf("nOutputdatatofile!n");for(i=0;i<N;i+)/*found*/fwrite(&stdi,sizeof(STYPE),1,3);fclose(fp);return(1);修改给定程序MODI1.C中函数fun的功能是:先将在字符用s中的字符按正序存放到t用中,然后把s中的字符按逆序连接到t审后面。例如:当s中的字符串为:“ABCDE”时,则他中的字符串应为:“ABCDEEDCBA”。请改正程序中的错误,使他能得出正确的结果。注意:不要改动main函数,不能增行或删行,也不得更改程序的结构!voidfun(char

3、*s,char*t)inti,sl;sl=strlen(s);/*found*/for(i=0;i<=s1;i+)ti=si;for(i=0;i<sl;i+)tsl+i=ssl-i-1;/*found*/tsl='0'程序函数fun的功能是:将两个两位数的正整数a,b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。例如:a=45,b=12时,调用该函数后,c=4152.注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的数据不得修改。请勿改动主函数main和其他函数中的

4、任何内容,仅在函数fun的花括号中填入你编写的若干语句。答案:B:STYPEFILEfpM:for(i=0;i<sl;i+)t2*sl=0;P:*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);2 .填空给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标记。然后将文件的内容读出显示在屏幕上。文件的读写分别有自定义函数ReadText和WriteText实现。请在程序的下划线处填入正确的内容并把下划线删除,是程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.c中不

5、得增行或删行,也不得更改程序的结构!main()FILE*fp;if(fp=fopen("myfile4.txt","w")=NULL)printf("openfail!n");exit(0);WriteText(fp);,fclose(fp);if(fp=fopen("myfile4.txt","r")=NULL)printf("openfail!n");exit(0);ReadText(fp);fclose(fp);/*found*/voidWriteText(FILE1

6、)charstr81;printf("nEnterstringwith-1toend:n");gets(str);while(strcmp(str,"-1")!=0)/*丽*/fputs(2,fw);fputs("n",fw);gets(str);)voidReadText(FILE*fr)charstr81;printf("nReadfileandoutputtoscreen:n");fgets(str,81,fr);while(!feof(fr)/*丽*/printf("%s",3);fge

7、ts(str,81,fr);)修改给定程序MODI1.C中函数fun的功能是:从低位开始取出长整形变量s中的奇数位上的数,依次构成一个新数放在t中,高位仍放在高位,低位仍放在低位。例如:当s中的数为:7654321时,t中的数为:7531请改正程序中的错误,使他能得出正确的结果。注意:不要改动main函数,不能增行或删行,也不得更改程序的结构!#include<stdio.h>/*found*/voidfun(longs,longt)longsl=10;*t=s%10;while(s>0)s=s/100;*t=s%10*sl+*t;/*found*/sl=sl*100;程序函

8、数fun的功能是:将两个两位数的正整数a,b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。例如:a=45,b=12时,调用该函数后,c=1524.注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的数据不得修改。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。2、B:*fwstrstrM:long*tsl=sl*10;P:*c=(b/10)*1000+(a%10)*100+(b%10)*10+(a/10);3 .填空给定程序中,函数fun的功能是:将自

9、然数110以及它们的平方根写到名为myfile3txt的文本文档中,然后再顺序读出显示在屏幕上。请在程序的下划线处填入正确的内容并把下划线删除,是程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中不得增行或删行,也不得更改程序的结构!intfun(char*fname)return0;FILE*fp;inti,n;floatx;if(fp=fopen(fname,"w")=NULL)for(i=1;i<=10;i+)/*丽*/fprintf(1,"%d%fn",i,sqrt(double)i);printf("nSuc

10、ceed!n");/*丽*/:n");printf("nThedatainfile/*found*/if(fp=fopen(3,"r")=NULL)return0;fscanf(fp,"%d%f",&n,&x);while(!feof(fp),printf("%d%fn",n,x);fscanf(fp,"%d%f',&n,&x);fclose(fp);return1;修改给定程序MODII.c中fun函数的功能是:将n个无序整数从小到大排序。fun(int

11、n,int*a)inti,j,p,t;for(j=0;j<n-1;j+)p=j;/*found*/for(i=j+1;i<n-1;i+)if(ap>ai)/*向口*/t=i;if(p!=j)t=aj;aj=ap;ap=t;程序函数fun的功能是:将两个两位数的正整数a,b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。例如:a=45,b=12时,调用该函数后,c=2514注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的数据不得修改。请勿改动主函数main和其他函数中的任何内容

12、,仅在函数fun的花括号中填入你编写的若干语句。3、B:fpfclose(fp)fnameM:i<np=iP:*c=(b%10)*1000+(a%10)*100+(b/10)*10+(a/10);4 .填空给定程序的功能是:调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回值为1,失败时返回值为0,在复制的过程中,把复制的内容输出到终端屏幕。主函数中源文件名放在变量sfname中,目标文件名放在变量tfname中intfun(char*source,char*target)FILE*fs,*ft;charch;/*丽*/if(fs=fopen(source,1)

13、=NULL)return0;if(ft=fopen(target,"w")=NULL)return0;printf("nThedatainfile:n");ch=fgetc(fs);/*found*7while(!feof(2)putchar(ch);/*丽*/fputc(ch,3);ch=fgetc(fs);fclose(fs);fclose(ft);printf("nn");return1;修改给定程序MODI1.C中函数fun的功能是:将长整形数中每一位上为偶数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。例如

14、:当s中的数为:87653142时,t中的数为:8642voidfun(longs,long*t)intd;longsl=1;*t=0;while(s>0)d=s%10;/*found*/if(d%2=0)*t=d*sl+*t;sl*=10;/*found*/s=10;程序函数fun的功能是:将两个两位数的正整数a,b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。例如:a=45,b=12时,调用该函数后,c=5142注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的数据不得修改。请勿改动

15、主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。4、B:F”fsftM:(d%2=0)s/=10;P:*c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10);5 .填空给定程序中已建立一个带有头结点的单向链表,链表中的各节点按结点数据域中的数据递增有序链表。函数fun的功能是:把形参x的值放入一个新结点并插入到链表中,插入后结点数据域的值仍保持递增有序。typedefstructlistintdata;structlist*next;SLIST;voidfun(SLIST*h,intx)SLIST*p,*q,*s;s=(SLIS

16、T*)malloc(sizeof(SLIST);/*found*/s->data=1q=h;p=h->next;while(p!=NULL&&x>p->data)/*found*/q=一2p=p->next;s->next=p;/*砧口口*/q->next=3;修改给定程序MODI1.C中函数fun的功能是:计算正整数num的各位上的数字之积。例如,若输入:252,则输入应该是:20.若输入:202,则输出应该是:0.longfun(longnum)/*found2*/longk;dok*=num%10;/*.n*/num=10;whi

17、le(num);return(k);请编写一个函数fun,它的功能是:它的功能是:计算n门课程的平均分,计算结果作为函数值返回。例如:若有5门课程的成绩是:90.5,72,80,61.5,55则函数的值为:71.805、B:M:longk=1;num/=10;P:inti;floatave=0.0;for(i=0;i<n;i+)ave=ave+ai;ave=ave/n;returnave;6 .填空给定程序中已建立一个带有头结点的单向链表,在main函数中将多次调用fun函数,没调用一次fun函数,输出链表尾部结点中的数据,并释放该节点,是链表缩短。voidfun(SLIST*p)SLI

18、ST*t,*s;t=p->next;s=p;while(t->next!=NULL)s=t;/*骨口*/t=t->1;/*found*/printf("%d",2);s->next=NULL;/*found*/free(3);)修改给定程序MODI1.C中函数fun的功能是:将字符串中的字符按逆序输出,单补改变字符串中的内容。例如,若字符串昧abcd,则应卒&出:dcba/*found*/fun(chara)if(*a)fun(a+1);/*found*/printf("%c"*a);)程序请编写一个函数fun,他的功能是

19、:比较两个字符串的长度(不得调用c语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。例如,输入beijing<CR>shanghai<CR>(<CR>20tt),函数将返回shanghai6、B:nextt->datatM:fun(char*a)printf("%c",*a);P:inti;char*p=s,*q=t;for(i=0;*p&&*q;i+)一p+;q+;)if(*p=0&&*q=0)returns;if(*p)returns;elseretu

20、rnt;7 .填空给定程序中建立一个带有头结点的单向链表,链表中的各节点按数据域递增有序连接。函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一个typedefstructlistintdata;structlist*next;SLIST;voidfun(SLIST*h)SLIST*p,*q;p=h->next;if(p!=NULL)q=p->next;while(q!=NULL)if(p->data=q->data)p->next=q->next;/*found*/free(1);/*found*/q=p->2elsep=q;/*foun

21、d*/q=q->3;修改给定程序MODI1.C中函数fun的功能是:用选择法对数组中的n个元素按从小到大的顺序进行排序。voidfun(inta口,intn)inti,j,t,p;for(j=0;j<n-1;j+)/*found*/p=jfor(i=j;i<n;i+)if(ai<ap)/*found*/p=j;t=ap;ap=aj;aj=t;请编写一个函数fun,它的功能是:求出1至Im之间(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。例如,若传3送给m的之位50,则程序输出:711142122183335424449答案:7、B:qnextn

22、extM:p=j;p=i;P:inti;*n=0;for(i=7;i<=m;i+)if(i%7=0)|(i%11=0)a(*n)+=i;8.填空给定程序中,函数fun的gongn是:在带有头结点的单向链表中,查找数据域中值为ch的结点。找到后通过函数值返回改结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值typedefstructlistintdata;structlist*next;SLIST;SLIST*creatlist(char*);voidoutlist(SLIST*);intfun(SLIST*h,charch)intn=0;SLIST*p;p=h->ne

23、xt;/*骨口*/while(p!=*/n+;/*foundif(p->data=ch)return2;elsep=p->next;return0;修改给定程序MODI1.C中函数fun的功能是:删除p所指字符串中的所有空白字符(包括制表符,回车符及换行符)输入字符串是用“#”结束输入。fun(char*p)inti,t;charc80;/*founw*/For(i=0,t=0;pi;i+)Ssif(!isspace(*(p+i)ct+=pi;/*founw*/ct="0"strcpy(p,c);程序请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为

24、奇数位置上的字母转换成大写(若该位置上不是字母,则不转换)例如:若输入“abc4EFg,则应输出“aBc4Efg”。答案:8、B:NULLnhead,chM:forct='0'P:inti;for(i=1;i<strlen(*ss);i+=2)if(ssi>='a'&&ssi<='z')ssi-=32;9.填空给定程序中,函数fun的功能是:统计出带有头结点的单向链表中的个数,存放在形参n所指的存储单元中。voidfun(SLIST*h,int*n)SLIST*p;/*found*/1=0;p=h->nex

25、t;while(p)(*n)+;/*found*/p=p->2;main()SLIST*head;intaN=12,87,45,32,91,16,20,48,num;head=creatlist(a);outlist(head);/*found*/fun(3,&num);printf("nnumber=%dn",num);修改给定程序MODI1.C中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数返回值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值为NULL例如:当字符串中的内容为“abcdefabcdxt中的内

26、容为“ab”时,输出的结果应是:abcdx当字符串中的内容为“abcdefabcdxt中的内容为“abd'时,则程序输出未找到信息notbefoundchar*fun(char*s,char*t)char*p,*r,*a;/*founw*/a=Null;while(*s)p=s;r=t;while(*r)/*founw*/if(r=p)r+;p+;elsebreak;if(*r='0')a=s;s+;)returna;)程序函数fun的功能是:将s所指字符串中除了下标问为偶数,同时ASCII值也为偶数的字符外,其余的全部删除:申中剩余字符所形成的一个新申放在t所指的数组

27、中例如,若s所指的字符串中的内容为“ABCDEFG123456",其中字符A的ASCII码味奇数,因此应当删除,其中字符b的ASCII码值为偶数,但是在数组中的下标为基数,因此也当删除;答案9、B:*nnextheadM:a=NULL;*r=*pP:inti,j=0;for(i=0;i<strlen(s);i+=2)if(si%2=0)tj+=si;tj=0;10.填空给定程序中,函数fun的功能是:计算出带有头结点的单向链表中各结点数据域中值之和作为函数的返回值。ints=0;intfun(SLIST*h)SLIST*p;p=h->next;while(p)/*丽*/s

28、+=p->1;/*found*/p=p->2;)returns;)修改给定程序MODI1.C中函数fun的功能是:将s所指字符串中出现的与t1所指字符串相同的字串全部替换成t2所指字符串,所形成的新申放在w所指的数组中,在此处,要求t1和t2所指字符串的长度相同。intfun(char*s,char*t1,char*t2,char*w)inti;char*p,*r,*a;strcpy(w,s);while(*w)p=w;r=t1;/*founds*/while(r)if(*r=*p)r+;p+;elsebreak;if(*r='0')a=w;r=t2;while(*

29、r)/*found*/*a=*r;a+;r+、w+=strlen(t2);elsew+;程序函数fun的功能是;将s所指字符串下标为偶数的字符删除,申中剩余字符形成的新用放在t所指的数组中例如:当s所指字符串中的内容为:“ABCDEFGHIJK”在t所指数组中的内容应是“BDFHJ”10、B:datanextheadM:*rr+;P:inti,j=0;for(i=1;i<strlen(s);i+=2)tj+=si;tj=0;11.填空人员记录有编号和出生年月日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号唯一。函数fun的功能是:找出数据中的编号为空用。/*found*/

30、1fun(STU*std,char*num)-inT-i;STUa="",9999,99,99;,for(i=0;i<N;i+)/*found*/*found*/if(strcmp(2,num)=0)return(3);returna;修改给定程序MODI1.C中函数fun的功能是:从s所指字符串中,找出与t所指字符串相同的字串的个数作为函数返回值例如,当s所指字符串中的内容为:“abcdabfab',t所指字符串的内容为:“ab”则函数返回整数3intfun(char*s,char*t)intn;char*p,*r;n=0;while(*s)p=s;r=t;

31、while(*r)if(*r=*p)/*founw*/r+;p+、elsebreak;/*founw*/if(r='0')n+;s+;fJreturnn;函数fun的功能是:将s所指字符串中ASCII值为偶数的字符删除,用中剩余字符形成一个新申放在t所指的数组中例如,若s所指字符串中的内容为“ABCDEFG12345",其中字符B的ASCII码值为偶数.答案:11、B:STUstdi.numstdiM:p+;*r=?0?;P:inti,j=0;for(i=0;i<strlen(s);i+)if(si%2)tj+=si;tj=0;12 .填空人员的记录由编号和出生

32、年月日组成N名成员的数据已在主函数中存入结构体数组std中,函数fun的功能是:找出指定出生年份的人员,将其数据放在形参k所指的数组中,由主函数输出,同事有函数值返回满足指定条件的人数intfun(STU*std,STU*k,intyear)inti,n=0;for(i=0;i<N;i+)/*found*/*found*/if(1=year)kn+=2;/*found*/return(3);修改给定程序MODI12。C的功能是:读入一个整数k(2k1000),打印她的所有I例如2310,则应输出2,3,5,7,11/*found*/IsPrime(intn);inti,m;m=1;for

33、(i=2;i<n;i+)/*found2*/if!(n%i)m=0;break;return(m);设计已知学生的记录有学号成绩构成,N名学生的数据已经存入结构体数组a中写函数fun,函数功能是:找出成绩最高的学生记录,通过形参指针传回主函数(规定只有一个最高分)12、B:stdi.yearstdi0已给出函数的首部,请完成该函数M:分号去掉if(!(n%i)P:inti,max=a0.s,j=0;for(i=1;i<N;i+)if(max<ai.s)j=max=ai.s;*s=aj;13 .填空给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号,名和3们课程

34、的成绩,函数fun的功能是将该学生的各科成绩都乘以一个系数voidshow(STUtt)inti;printf("%d%s:",tt.num,);for(i=0;i<3;i+)printf("%5.1f",tt.scorei);|/fprintf("n");*/*ss,floata)/*foundvoidmodify(inti;for(i=0;i<3;i+)/*found*/ss->2*=a;main()STUstd=1,"Zhanghua”,76.5,78.0,82.0;floata;pri

35、ntf("nTheoriginalnumberandnameandscores:n");show(std);printf("nInputanumber:");scanf("%f",&a);/*found*/modify(3,a);printf("nAresultofmodifying:n");show(std);)修改给定程序MODI0C中函数fun的功能是:求k!(k<13),所求阶乘的值作为函数值返回,例如若(k=10,则应输出:3628800longfun(intk)(/*found*/ifk&

36、gt;0return(k*fun(k-1);/*found*/elseif(k=0)return1L;)设计程序定义了N*N的二维数组。并在主函数中自动赋值,请编写函数fun,函数的功能是:使数组左下三角元素的值乘以n例如:若n的值为3,a数组的值为13、B:STUscorei&stdM:|()k=0P:inti,j;for(i=0;i<N;i+)for(j=0;j<=i;j+)aij*=n;14 .给定程序中,函数fun的功能是:将形参所指结构体数组中的三个元素按num成员进行升序排列/*found*/voidfun(PERSON1)(/*found*/2temp;std

37、1=temp;if(std0.num>std1.num)ftemp=std0;std0=std1;,if(std0.num>std2.num)temp=std0;std0=std2;std2=temp;if(std1.num>std2.num)temp=std1;std1=std2;std2=temp;main()PERSONstd=5,"Zhanghu",2,"WangLi",6,"LinMin"inti;/*found*/fun(3);printf("nTheresultis:n");for(

38、i=0;i<3;i+)printf("%d,%sn",stdi.num,);修改给定程序MODII.c中函数fun的功能是:将m个字符串连接起来组成一个新审,放入pt所指存储区中m,char*pt)intfun(charstr10,int/*found*/Intk,q,i;for(k=0;k<m;k+)q=strlen(strk);for(i=0;i<q;i+)/*found*/pti=strk,i;pt+=q;pt0=0;设计程序定义了N*N的二维数组,并在主函数中自动赋值,请编写函数fun,函数的功能是:使数组左下三角元素中的值全部值

39、014、Bl*stdPERSONstdM:intstrkiP:inti,j;for(i=0;i<N;i+)for(j=0;j<=i;j+)aij=0;15 .给定程序中,函数fun的功能是:将形参std所指结构体数组中年龄最大者的数据作为函数值返回,并在主函数中输出STDfun(STDstd,intn)STDmax;int/i;/*found*/max=1;,for(i=1;i<n;i+)/*found*/if(max.age<2)max=stdi;returnmax;main()STDstd5="aaa",17,"bbb",16

40、,"ccc",18,"ddd",17,"eee",15;STDmax;max=fun(std,5);printf("nTheresult:n");/*found*/printf("nName:%s,Age:%dn",3,max.age);修改给定程序MODI1.c中函数fun的功能是:实现两个整数的交换例如给a和b分别输入60和65,输出为:a=65b=60/*found*/voidfun(inta,b)intt;/*found*/t=b;b=a;a=t;设计请编制一个函数fun,tt指向一个M

41、行N列的二维数组,求二维数组每列中最小兀系,并以此放入pp所指一维数组中。二维数组中的数已在主函数中赋予inti,j,15、B:*M:int*bt=*b;*b=*a;*a=t;P:min,k;for(i=0;i<N;i+)min=tt0i;k=0;for(j=1;j<M;j+)if(min>tt皿i)min=ttji;k=j;ppi=ttki;16 .程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的信息,函数fun的功能是输出这位学生的信息/*found*/voidshow(STUinti;printf("n%d%s%

42、c%d-%d-%d",tt.num,,tt.sex,tt.birthday.year,tt.birthdaymonth,tt.birthdayday);for(i=0;i<3;i+)/*found*/printf("%5.1f",2);printf("n");main()STUstd=1,"Zhanghua",'M',1961,10,8,76.5,78.0,82.0;printf("nAstudentdata:n");/*found*/show(3);修改给定程序MOD

43、I1.C中函数fun的功能是:求出数组中最大数和次大数,并把最大数和a0中的数对调,次最大数和a1中的书对调intfun(int*a,intn)inti,m,t,k;for(i=0;i<2;i+)/*found*/m=0;for(k=i+1;k<n;k+)/*found*/if(ak>am)k=m;)设计请编写一个函数unsignedfun,w是一个大与10的无符号整数,若w是n为的整数,函数求出w的低n-1位的数作为函数值返回例如w为5923则函数返回923;16、B:tttt.scoreistdM:m=im=kP:if(w>10000)w%=10000;elseif

44、(w>1000)w%=1000;elseif(w>100)w%=100;elseif(w>10)w%=10;returnw;17 .填空给定程序中,函数fun的功能是:对形参ss所指字符由数组中的M个字符串按长度由短到长进行排序。Ss所指字符串数组中共有M个字符串,且由长«Nvoidfun(char(*ss)N)inti,j,k,nM;chartN;for(i=0;i<M;i+)ni=strlen(ssi);for(i=0;i<M-1;i+)k=i/*found*/for(j=1;j<M;j+)if(nk>nj)2.strcpy(ssi,ss

45、k);/*found*/if(k!=i)strcpy(t,ssi);/*found*/strcpy(ssk,3);nk=ni;./)给定程序MODI0C中函数fun的功能是:判断ch中字符是否与str所指用中的某个字符相同;若相同,什么也不做,若不同,则将其插在用的最后#include<string.h>/*found*/voidfun(charstr,charch)while(*str&&*str!=ch)str+;/*found*/if(*str=ch)str0=ch;/*found*/str1='0'设计请编制一个函数fun,函数功能是吧s所指

46、字符串中的内容逆值17、B:i+1k=jtM:char*str!=0P:charbN;inti=0,j;for(j=strlen(s)-1;j>=0;j-)bi+=sj;bi=0;strcpy(s,b);18填空给定程序中,函数fun的功能是:求出形参ss所指的字符串数组中最长字符用的长度,其余字符串左边用字符*补齐,使其与最长的字符串等长,字符串数组中共有M个字符串voidfun(char(*ss)N)inti,j,k=0,n,m,len;for(i=0;i<M;i+)len=strlen(ssi);if(i=0)n=len;if(len>n)/*found*/n=len;

47、1=i;for(i=0;i<M;i+)if(i!=k)m=n;len=strlen(ssi);/*found*/for(j=2;j>=0;j-),ssim-=ssij;for(j=0;j<n-len;j+)f/*found*/修改给定程序MODII.c中函数fun的功能是:计算整数n的阶乘doublefun(intn)doubleresult=1.0;while(n>1&&n<170)/*found*/result*=-n;/*found*/return设计编写函数fun,函数的功能是:从s所指的字符串中删除给定字符。同一个字母的大小写按不同字符处

48、理18、B:klenssijM:n-resultP:char*p=s;inti=0;while(*p)if(*p!=c)si+=*p;p+;si=0;19.给定程序中,函数fun的功能是:求出形参ss所指字符串数组中最长字符串的长度,将其余字符串右边用字符*补齐,使其与最长的字符串等长。Ss所指的字符串数组中共有M个字符串voidfun(char(*ss)N)inti,j,n,len=0;for(i=0;i<M;i+)len=strlen(ssi);if(i=0)n=len;if(len>n)n=len;for(i=0;i<M;i+)/*骨口*/n=strlen(1);for

49、(j=0;j<len-n;j+)/*found*/ssi2='*'/*found*/ssin+j+3='0'修改给定程序MODI1。C中函数fun的功能是将:p所指字符串中每个单词的最后一个字母改成大写#include<stdio.h>voidfun(char*p)intk=0;for(;*p;p+)if(k)/*found*/if(p='')k=0;/*found*/*(p-1)=toupper(*(p-1)elsek=1;设计请编写函数fun,对长多为7个字符的字符串,除首,尾字符外,将其余5个字符按ASCII降序排列19、B:ssin+j1M:*p;P: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;20.填空给定程序中,函数fun的功能是

温馨提示

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

评论

0/150

提交评论