设为首页 加入收藏

TOP

C语言编程笔试题(第三十四套)
2014-11-24 01:20:14 来源: 作者: 【 】 浏览:7
Tags:语言编程 试题 第三十四

编程题:


52.编写一个函数fun,它的功能是:实现两个字符串的连接(不使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串后。


例如,分别输入下面两个字符串:


FirStString–


SecondString


则程序输出:FirstString–SecondString


注意:部分源程序给出如下。


请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。


#include


#include



void fun(char p1[], char p2[])


{


}



main()


{


char s1[80], s2[40] ;


clrscr() ;


printf(“Enter s1 and s2:\n”) ;


scanf(“%s%s”, s1, s2) ;


printf(“s1=%s\n”, s1) ;


printf(“s2=%s\n”, s2) ;


printf(“Invoke fun(s1,s2):\n”) ;


fun(s1, s2) ;


printf(“After invoking:\n”) ;


printf(“%s\n”, s1) ;


}



56.假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是;除了尾部的*号之外,将字符串中其他*号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时,不得使用C语言提供的字符串函数。


例如,若字符串中的内容为****A*BC*DEF*G*******,删除后,字符串中的则内容应当是ABCDEFG*******。


注意:部分源程序给出如下。


请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。


#include


#include



void fun( char *a, char *p)


{


}



main()


{


char s[81],*t;


printf(“Enter a string:\n”);


gets(s);


t=s;


while(*t)


t++;


t–;


while(*t==’*')


t–;


fun( s , t );


printf(“The string after deleted:\n”);


puts(s);


}



改错题:


87.下列给定程序中,函数fun的功能是:给一维数组a输入任意4个整数,并按如下的规律输出。例如输入1、2、3、4,程序运行后将输出以下方阵:


4 1 2 3


3 4 1 2


2 3 4 1


1 2 3 4


请改正函数fun中的错误,使它能得出正确的结果。


注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!


试题程序:


#include


#define M 4



/********found********/


int fun(int a)


{


int i,j,k,m;


printf(“Enter 4 number : “);


for(i=0; i

scanf(“%d”,&a[i]);


printf(“\n\nThe result :\n\n”);


for(i=M;i>0;i–)


{


k=a[M-1];


/********found********/


for(j=M-1;j>0;j–)


a[j]=a[j+1];


a[0]=k;


for(m=0; m

printf(“%d “,a[m]);


printf(“\n”);


}


}


main()


{


int a[M];


fun(a);


printf(“\n\n”);


}




89.下列给定程序中,函数fun的功能是:求整数x的y次方的低3位值。例如,整数5的6次方为15625,此数的低3位值为625。


请改正函数fun中的错误,使它能得出正确的结果。


注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!


试题程序:


#include



long fun(int x,int y,long *p)


{


int i;


long t=1;


/********found********/


for(i=1; i

t=t*x;


*p=t;


/********found********/


t=t/1000;


return t;


}


main()


{


long t,r;


int x,y;


printf(“\nInput x and y: “);


scanf(“%ld%ld”,&x,&y);


t=fun(x,y,&r);


printf(“\n\nx=%d, y=%d, r=%ld, last=%ld\n\n”,x,y,r,t);


}


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C语言编程笔试题(第三十三套) 下一篇C语言编程笔试题(第三十五套)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: