设为首页 加入收藏

TOP

C语言编程笔试题(第二十二套)
2014-11-24 01:23:02 来源: 作者: 【 】 浏览:6
Tags:语言编程 试题 第二十二

编程题:


83.假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串尾部的*号全部删除,前面和中间的*号不删除。


例如,若字符串中的内容为****A*BC*DEF*G*******,删除后,字符串中的内容则应当是****A*BC*DEF*G。在编写函数时,不得使用C语言提供的字符串函数。


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


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


#include


#include


void fun(char *a)


{





}


main()


{


char s[81];


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


gets(s);


fun( s );


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


puts(s);


}



84.请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的千位和十位上。


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


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


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


#include


#include


void fun(int a, int b, long *c)


{


}



main()


{


int a,b;


long c;


clrscr();


printf(” Input a, b: “);


scanf(“%d%d”, &a,&b);


fun(a,b,&c);


printf(” The result is :%ld\n”, c);


}



改错题:


43.下面给定程序中.函数fun的功能是:找出100至n(不大于1000)之间三个位上的数字都相等的所有整数,把这些整数放在s所指数组中,个数作为函数值返回。


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


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


试题程序:


#include


#define N 100


int fun(int *s,int n)


{


int i,j,k,a,b,c;


j=0;


for(i=100; i

{


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


k=n;


a=k%10;


k/=10;


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


b=k/10;


c=k/10;


if(a==b && a==c)s[j++]=i;


}


return j;


}


main()


{


int a[N], n, num=0, i;


do


{


printf(“\nEnter n(<=1000): “);


scanf(“%d”,&n);


}


while(n >1000);


num=fun(a,n);


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


for(i=0; i

printf(“%5d”,a[i]);


printf(“\n\n”);


}




44.下列给出程序中,函数fun的功能是:根据形参m的值(2≤m≤9),在m行m列的二维数组中存放如下所示的数据,由main()函数输口。


例如,若输入2 若输入4


则输出: 则输出:


1 2 1 2 3 4


2 4 2 4 6 8


3 6 9 12


4 8 12 16


#include


#include


#define M 10


int a[M][M] = {0} ;



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


fun(int **a, int m)


{


int j,k ;


for ( j = 0 ; j < m ; j++ )


for (k = 0 ; k < m ; k++ )


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


a[j][k] = k*j ;


}



main ( )


{


int i, j, n ;


clrscr( ) ;


printf ( ” Enter n:” ) ;


scanf (“%d”, &n );


fun ( a, n );


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


{


for (j = 0 ; j < n ; j++)


printf ( “%4d”, a[i][j] );


printf ( “\n” ) ;


}


}


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

评论

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