计算机机试资料.docx

上传人:b****1 文档编号:340486 上传时间:2022-10-09 格式:DOCX 页数:25 大小:28.87KB
下载 相关 举报
计算机机试资料.docx_第1页
第1页 / 共25页
计算机机试资料.docx_第2页
第2页 / 共25页
计算机机试资料.docx_第3页
第3页 / 共25页
计算机机试资料.docx_第4页
第4页 / 共25页
计算机机试资料.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

计算机机试资料.docx

《计算机机试资料.docx》由会员分享,可在线阅读,更多相关《计算机机试资料.docx(25页珍藏版)》请在冰豆网上搜索。

计算机机试资料.docx

计算机机试资料

类型一:

调整一个数的个、十、百、千位

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);

填空:

STYPEFILEFp

改错:

for(i=0;i<=sl;i++)把s后字母改为小写L

t[2*sl]='\0';

2.请编写函数fun,其功能是:

将两个两位数的正整数a、b合并形成一个整数放在c中。

合并的方式是:

将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的千位和十位上。

例如,当a=45,b=12,调用该函数后c=1524。

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

填空:

*fwstrstr

改错:

voidfun(longs,long*t)

sl=sl*10;

3.请编写函数fun,其功能是:

将两个两位数的正整数a、b合并形成一个整数放在c中。

合并的方式是:

将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的十位和千位上。

例如,当a=45,b=12,调用该函数后c=2514。

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

填空:

fpfclose(fp)fname

改错:

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

p=i;

4.请编写函数fun,其功能是:

将两个两位数的正整数a、b合并形成一个整数放在c中。

合并的方式是:

将a数的十位和个位数依次放在c数的十位和千位上,b数的十位和个位数依次放在c数的百位和个位上。

例如,当a=45,b=12,调用该函数后c=5142。

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

填空:

"r"fsft

改错:

if(d%2==0)

s/=10;

5.请编写函数fun,其功能是:

将两个两位数的正整数a、b合并形成一个整数放在c中。

合并的方式是:

将a数的十位和个位数依次放在c数的十位和千位上,b数的十位和个位数依次放在c数的个位和百位上。

例如,当a=45,b=12,调用该函数后c=5241。

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

填空:

kN-1temp

改错:

fun(inta[][M],intm)

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

6.请编写函数fun,其功能是:

将两个两位数的正整数a、b合并形成一个整数放在c中。

合并的方式是:

将a数的十位和个位数依次放在c数的百位和个位上,b数的十位和个位数依次放在c数的十位和千位上。

例如,当a=45,b=12,调用该函数后c=2415。

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

填空:

structstudent*a->score[i]a

改错:

char*fun(char(*sq)[M])

returnsp;

7.请编写函数fun,其功能是:

将两个两位数的正整数a、b合并形成一个整数放在c中。

合并的方式是:

将a数的十位和个位数依次放在c数的百位和个位上,b数的十位和个位数依次放在c数的千位和十位上。

例如,当a=45,b=12,调用该函数后c=1425。

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

填空:

0xt++

改错:

inti,s1;s后面是小写的L

t[i]=s[sl-i-1];

8.请编写函数fun,其功能是:

将两个两位数的正整数a、b合并形成一个整数放在c中。

合并的方式是:

将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的个位和百位上。

例如,当a=45,b=12,调用该函数后c=4251。

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

填空:

1si*10

改错:

intfun(intn,intxx[][M])

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

类型二:

与*号有关的操作

9.请编写函数fun,它的功能是:

将字符串中的前导*号全部删除,中间和尾部的*号不删除。

删除前导*号

intj=0;char*p=a;

while(*p=='*')p++;

while(*p){a[j++]=*p;p++;}

a[j]=0;

填空:

[N]t[i][j]t[j][i]

改错:

#defineFU(m,n)((m)/(n))

return(value);

10.请编写函数fun,它的功能是:

除了尾部的*号之外,将字符串中其他*号全部删除。

形参p已指向字符串中最后的一个字母。

除尾部*号,其余*删除

char*q=a;intj=0;

while(*q&&q

='*')a[j++]=*q;q++;}

while(*p)a[j++]=*p++;a[j]=0;

填空:

t[][N]i=0;i

改错:

intfun(inta[],intm)

elseif(m>a[mid])

11.请编写函数fun,它的功能是:

除了字符串前导和尾部的*号之外,将串中其他*号全部删除。

只删除中间*号

intj=0;char*q=a;

while(*q&&q

while(*h&&*p&&h

{if(*h!

='*')a[j++]=*h;h++;}

while(*p)a[j++]=*p++;

a[j]=0;

填空:

sum=0t[i][i]1

改错:

doubler;

while(fabs(m-n)>0.001)

12.请编写函数fun,它的功能是:

删除字符串中所有的*号。

删除串中所有*号

intj=0;char*p=a;

while(*p)

{if(*p!

='*')a[j++]=*p;p++;}

a[j]=0;

填空:

1j++j

改错:

t=a;a=b;b=t;

return(b);

13.请编写函数fun,它的功能是:

将字符串尾部的*号全部删除,前面和中间的*号不删除。

删除串尾*号

char*p=a;

while(*p)p++;p--;

while(*p=='*')p--;

p++;

*p=0;

填空:

NI-1

改错:

a2=k/10;

returni;

14.请编写函数fun,它的功能是:

除了字符串前导的*号之外,将串中其他*号全部删除。

除前导*外其他删除*

inti=0,k;

while(a[i]=='*')i++;

k=i;

while(a[i]!

='\0'){if(a[i]!

='*')a[k++]=a[i];i++;}

a[k]='\0';

填空:

Nkss[i]

改错:

intk=0;

while(*p||*q)

15.请编写函数fun,它的功能是:

只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。

删除前导和尾部*

char*p=a;intj=0,len=0;

while(*p){p++;len++;}

while(j

填空:

Nsubstr0

改错:

fun(intx,inty,intz)

returnj;

16.请编写函数fun,它的功能是:

使字符串中尾部的*号不得多于n个

串尾部*号不多于n个

char*p=a;intj=0;

while(*p)p++;p--;

while(*p=='*')p--;p++;

while(j

填空:

a[i]%2a[j]j

改错:

fun(intn)

if(n==1)

17.请编写函数fun,它的功能是:

使字符串的前导*号不得多于n个

前导*不多于n个

inti=0,j,k=0;

while(a[k]=='*')k++;

if(k>n)

{i=n;j=k;

for(;a[j]!

=0;j++)a[i++]=a[j];

a[i]=0;}

填空:

MN0

改错:

t=1;

return(2*s);

18.请编写函数fun,它的功能是:

将字符串中的前导*号全部移到字符串的尾部。

串前*移至串尾

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='\0';

填空:

ab.namescore[i]

改错:

s[j++]=s[i];

s[j]=0;

19.编写一个函数,从传入的num个字符串中找出最长的一个字符串,并通过形参指针max传回该串地址

(用****作为结束输入的标志)。

inti,k=0,maxlen;

maxlen=strlen(a[k]);

for(i=1;i

{if(strlen(a[i])>maxlen)

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

*max=a[k];

填空:

[N]ii+1

改错:

aa[i]=m%k;

printf("%d",aa[i-1]);

类型三:

与下标或ASCII码有关

20.请编写一个函数fun,它的功能是:

将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。

下标奇数位置子母改大写

inti;

for(i=1;i

{

if(ss[i]>='a'&&ss[i]<='z')ss[i]-=32;

}

填空:

kNa[k][i]

改错:

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

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

21.请编写—个函数voidfun(char*ss),其功能是:

将字符串ss中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。

下标奇数位置子母改大写

char*p=ss;inti=0;

while(*p){

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

p++;i++;}

returnss;

填空:

NULLnhead,ch

改错:

for(i=0,t=0;p[i];i++)

c[t]='\0';

22.请编写函数fun,其功能是:

将s所指字符串中下标为偶数的字符删除,串中剩余字符形成的新串放在t所指数组中。

下标为偶数字符删除

inti,j=0;

for(i=1;i

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

当前位置:首页 > 工作范文 > 制度规范

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1