设为首页 加入收藏

TOP

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

编程题:


13.请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。二维数组中的数已在主函数中赋予。


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


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


#include


#include


#define M 3


#define N 4



void fun ( int tt[M][N],int pp[N] )


{


}



main( )


{


int t [ M ][ N ]={{22,45, 56,30},


{19,33, 45,38},


{20,22, 66,40}};


int p [ N ], i, j, k;


clrscr();


printf ( “The original data is : \n” );


for( i=0; i

for( j=0; j

printf ( “%6d”, t[i][j] );


printf(“\n”);


}


fun ( t, p );


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


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


printf ( ” %4d “, p[ k ] );


printf(“\n”);


}



14.请编写函数fun,函数的功能是求出二维数组周边元素之和,作为函数值返回。二维数组中的值在主函数中赋予。


例如:若二维数组中的值为:,则函数值为61。


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


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


#include


#include


#define M 4


#define N 5



int fun ( int a[M][N] )


{


}



main( )


{


int aa[M][N]={{1,3,5,7,9},


{2,9,9,9,4},


{6,9,9,9,8},


{1,3,5,7,0}};


int i, j, y;


clrscr();


printf ( “The original data is : \n” );


for ( i=0; i

{


for ( j=0; j

printf( “%6d”, aa[i][j] );


printf (“\n”);


}


y = fun ( aa );


printf( “\nThe sum: %d\n” , y);


printf(“\n”);


}



改错题:


72.下列给定程序中函数fun的功能是:统计子字符串substr在字符串str中出现的次数。例如,若字符串为aaas lkaaas,子字符串为as,则应输出2。


请改正程序中的错误,使它能计算出正确的结果。


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


试题程序:


#include



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


fun(char *str,char *substr)


{


int i,j,k,num=0;


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


for(i = 0, str[i], i++)


for(j=i,k=0;substr[k]==str[j];k++,j++)


if(substr[k+1]==’\0′)


{


num++;


break;


}


return num;


}



main()


{


char str[80],substr[80];


printf(“Input a string:”);


gets(str);


printf(“Input a substring:”);


gets(substr);


printf(“%d\n”,fun(str,substr));


}




75.下列给定程序中函数fun的功能是:输出M行M列整数方阵,然后求两条对角线上各元素之和,返回此和数。


请改正程序中的错误,使它能得出正确的结果。


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


试题程序:


#include


#include



#define M 5


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


int fun(int m, int xx[][])


{


int i,j,sum=0;


printf(“\nThe %d x %d matrix:\n”,M,M );


for(i=0;i

{


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


for(j=0;j

printf(“%4f”,xx[i][j]);


printf(“\n”);


}



for(i=0;i

sum+=xx[i][i]+xx[i][m-i-1];


if(m%2!=0)


sum-=xx[m/2][m/2];


return(sum);


}



main( )


{


int aa[M][M]={{1,2,3,4,5},{4,3,2,1,0},


{6,7,8,9,0},{9,8,7,6,5},{3,4,5,6,7}};


clrscr();


printf(“\nThe sum of all elements on 2 diagnal is %d.”,fun(M,aa));


}


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

评论

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