2013计算机二级试题,2013年计算机二级等级考试机试题库

本文介绍了C语言中处理字符串和数组的一些关键函数,包括字符串拼接、字符计数、数组元素操作等。通过实例展示了如何删除字符串前导和尾部的星号、合并两位数形成新整数、统计单词数量以及计算特定字符出现的次数。这些函数对于理解和操作C语言中的字符串和数组至关重要。
摘要由CSDN通过智能技术生成

《2013年计算机二级等级考试机试题库》由会员分享,可在线阅读,更多相关《2013年计算机二级等级考试机试题库(16页珍藏版)》请在人人文库网上搜索。

1、类型一:调整一个数的个、十、百、千位1.请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。例如,当a=45,b=12,调用该函数后c=4152。*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);STYPE FILE fpfor( i=0; iscoreiachar *fun(char (*sq)M)return sp;7.请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的。

2、十位和个位数依次放在c数的百位和个位上,b数的十位和个位数依次放在c数的千位和十位上。例如,当a=45,b=12,调用该函数后c=1425。*c=(b/10)*1000+(a/10)*100+(b%10)*10+(a%10);0 x t+int i,s1; s后面是小写的Lti = ssl-i-1;8.请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的个位和百位上。例如,当a=45,b=12,调用该函数后c=4251。*c=(a/10)*1000+(b%10)*100+(。

3、a%10)*10+(b/10);1 s i*10int fun(int n,int xxM)printf(%d ,xxij);类型二:与*号有关的操作9.请编写函数fun,它的功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。删除前导*号int j=0; char *p = a ;while(*p = *) p+ ;while(*p) aj+ = *p ; p+; aj=0 ;N tij tji#define FU(m,n) (m)/(n)return(value);10.请编写函数fun,它的功能是:除了尾部的*号之外,将字符串中其他*号全部删除。形参p已指向字符串中最后的一个字。

4、母。除尾部*号,其余*删除char *q=a; int j=0;while(*q & q amid)11.请编写函数fun,它的功能是:除了字符串前导和尾部的*号之外,将串中其他*号全部删除。只删除中间*号int j=0; char *q=a;while(*q & q 0.001)12.请编写函数fun,它的功能是:删除字符串中所有的*号。删除串中所有*号int j =0 ; char *p=a;while(*p) if(*p != *) aj+=*p ; p+ ; aj=0;1j+jt=a;a=b;b=t;return(b);13.请编写函数fun,它的功能是:将字符串尾部的*号全部删除,前。

5、面和中间的*号不删除。删除串尾*号char *p = a ;while(*p) p+ ; p- ;while(*p = *) p- ;p+ ;*p = 0 ;Ni-1a2=k/10;return i;14.请编写函数fun,它的功能是:除了字符串前导的*号之外,将串中其他*号全部删除。除前导*外其他删除*if(ai != *) ak+=ai; i+; Nkssiint k=0;while( *p | *q )15.请编写函数fun,它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。删除前导和尾部*char *p=a ; int j=0,len=0;while(*p) p+;。

6、 len+;while(j maxlen) maxlen = strlen(ai) ; k = i ; N i i+1aai=m%k;printf(%d,aai-1);类型三:与下标或ASCII码有关20.请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。下标奇数位置子母改大写int i;for(i=0;ssi!=0;i+)if(i%2=1&ssi=a&ssitj+1)21.请编写个函数void fun(char *ss),其功能是:将字符串ss中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。下标奇。

7、数位置子母改大写char *p = ss ; int i = 0 ;while(*p) if(i % 2) & (*p = a & *p next q p-nextwhile(*s)s+;30.请编写函数fun,该函数的功能是:删去一维数组中所有相同的数,使之只剩一个。删除一维数组相同的数int i, j = 1, k = a0 ;for(i = 1 ; i 0)else if(k=0)34.请编写函数fun(int aN,int n),该函数的功能是:使数组右上半三角元素中的值乘以m。右上三角元素同乘mint i, j;for(i = 0 ; i ttji) min=ttji ; k = j。

8、 ; ppi = ttki ; *std stdi.age max.namevoid fun ( int*a, int*b )t=*b;*b=*a;*a=t;37.请编写一个函数fun,它的功能是:求出个2M整型二维数组中最大元素的值,并将此值返回调用函数。求二维数组中最大元素的值int i, j, max=a00;for(i=0; i 2*i+1double fun (int n)s = s + (double)a / b;38.编写程序,实现矩阵(3行3列)的转置(即行列互换)。矩阵转置int i,j,arr33 ;memcpy(arr, array, 9*sizeof(int) ;for。

9、(i = 0 ; i next p-next p=h-next;p=p-next;41.请编写函数fun,该函数的功能是:将M行N列的二维数组中的字符数据,按列的顺序依次放到一个字符串中。按列顺序wshwshwshfor(j = 0 ; j upfst(char *p)43请编写函数fun,函数的功能是求出二维数组周边元素之和,作为函数值返回。二维数组周边元素之和int tot = 0, i, j ;for(i = 0 ; i next; double av=0.0; int n = 0 ;while(p!=NULL) av = av + p-s ; p=p-next; n+; av /= n。

10、 ; return av ; char chave = a-ave + a-si ;a-ave /= N ;ai aj ajswitch(g)case 1: case 2:return 1;48.请编写函数fun,该函数的功能是:找出成绩最高的学生记录。找出成绩最高学生纪录(规定只有一个最高分)int i, max = a0.s, j = 0;for(i = 1 ; i s;STREC *p;p=h-next;while(p) if(p-smax ) max=p-s;p=p-next; return max;fp = fpn=strlen(aa) ;ch=aai;52请编写函数fun,它的功能。

11、是:将低于平均分的人数作为函数值返回,将低于平均分的分数放在below所指的数组中。低于平均分的人作为函数值返回float av=0.0 ; int i, j=0 ;for(i=0; iscorei) belowj+=scorei;return j;j 0 i+for(i=2; i t) b(*n)+ = ai ;return t ;-sno -name &tdouble fun(double a, double x0)if( fabs(x1-x0)0.00001 )54.请编写函数fun,它的功能是:把分数最低的学生数据放在b所指的数组中,注意:分数最低的学生可能不止一个,函数返回分数最低的。

12、学生的人数。 54-2 分数最低学生数据放在b所指数组int i, j = 0, min=a0.s ;for(i = 0 ; i ai.s) j = 0 ; bj+ = ai ; min = ai.s ; else if(min = ai.s)bj+ = ai ; return j ;*w str strvoid fun(long s,long *t)sl=sl*10;55.请编写函数fun,该函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。找出成绩最低学生纪录int i, min = a0.s, j = 0;for(i = 1 ; i ai.s) j = i 。

13、; min = ai.s ; *s = aj ;0 xi/N j+double fun(int m)for( i = 100;i 0)57.请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。返回指定学号学生数据STREC c ; int i ;c.num0 = 0 ; c.s = -1 ; for(i = 0 ; i = l & ai.s p)类型六:字符和字符串操作59.请编写一个函数fun,它的功能是:比较两个字符串的长度,返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。返回较长字符串int i; char *p=s, *q=t;for(i=0。

14、;*p & *q; i+) p+; q+; if(*p = 0 & *q = 0) return s ;if(*p) return s ;else return t ;next t-data tfun (char *a)printf(%c ,*a) ; 60.编写函数fun,该函数的功能是:从字符串中删除指定的字符。同一字母的大、小写按不同字符处理。删除给定的字符char *p = s ; int i = 0 ;while(*p) if(*p != c) si+ = *p ;p+ ; si = 0 ;k len ssijresult *=n-;result61.请编写函数fun,它的功能是:求。

15、出ss所指字符串中指定字符的个数,并返回此值。 求ss指定字符个数int cnt = 0 ; char *p = ss ;while(*p) if(*p = c) cnt+ ;p+ ; return cnt ;j+ si=t1i jfor (j = i + 1;j = a & *p =num)t=s/n;64.请编写函数fun,该函数的功能是:统计一行字符串中单词的个数,作为函数值返回。统计一行串中单词个数int k = 1 ;while(*s) if(*s = ) k+ ;s+ ; return k ;filename fp fpp=(NODE *)malloc(sizeof(NODE);r。

16、eturn h;65.请编写函数fun,该函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。M个字符串合并成新串for(i = 0 ; i next;p=p-next;67.编写一个函数fun,它的功能是:实现两个字符串的连接(不使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串后。实现两个字符串连接char *p=p1;while(*p)p+;while(*p2) *p+=*p2+;*p=0;0 10*x n/10*t=0;if(d%2!=0)68.请编写一个函数,用来删除字符串中的所有空格。删除字符串中所有空格char *p。

17、 = str ;int i = 0 ;while(*p) if(*p != ) stri+ = *p ;p+ ; stri = 0 ;0 | 1t-=1.0/i;return t;69请编一个函数fun(char *s),该函数的功能是把字符串中的内容逆置。字符串逆置strrev(s);i+1 k=j tvoid fun(char *str, char ch)if(*str!=ch)str1 = 0;70.请编写一个函数fun,它的功能是:将一个数字字符串转换为一个整数 -1234数字字符串转换为整数while(*p) x = x*10-48+(*p+);10 0 xif (n=0)resul。

18、t *= n-;71功能是:移动字符串中的内容,移动的规则如下:把第1到第m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。1第m个字符移到串后int i,j; char t; for(i=1;i0.000001);return x1;i+ m mwhile (high = 2) & (n =0 & k1e-6);return sum;x n fabs(t)for(i=1; i1 & n=100) for(i=1; i=n; i+)sum+=1.0/(2*i-1)-1.0/(2*i); return sum;j=2 i jsum=j=0;if(sum%4=2)79.请编写函数fun,其功能是:计算并输出S=1+(1+20.5)+(1+20.5+30.5)+(1+20.5+30.5+n0.5)输入20后,则输出为s=534.188884。int i; double fac=1.0; double sum=1.0;for(i=2;i=n;i。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值