6-24 实验8_3_设计函数 (100 分)----北京邮电大学PTA作业

设计函数将二维数组M中每列的最小元素,依次放入一维数组x中,二维数组M的行数为n,列数为m。输入第一行为两个整数n、m,代表二维数组M的行数与列数.

函数接口定义:

void findMin(int M[][MAX],int x[],int n,int m);

其中 M , x, n 和 m 都是用户传入的参数。 M 代表二维数组;x为保存结果的一维数组;n 和 m 为二维数组的行数和列数;MAX 为常量,本题中为100 ;函数没有返回值。

裁判测试程序样例:

#include

#define        MAX        100

void findMin(int M[][MAX],int x[],int n,int m);

int main()
{
    int        matrix[MAX][MAX] ; 
    int        x[MAX] ;
    int        n, m, i, j ;


    scanf( "%d%d" , &n , &m );
    for( i = 0 ; i < n ; i++ )
    {    
        for( j = 0 ; j < m ; j++ )
        {
            scanf("%d", &matrix[i][j]) ;
        }
    }

    findMin(matrix,x,n,m);

    for( i = 0 ; i < m - 1 ; i++ )
        printf( "%d " , x[i] ) ;
    printf( "%d\n" , x[i] ) ;

    return 0 ;
}

/* 请在这里填写答案 */

输入样例:

3 4
22 45 56 30
19 33 45 38
20 22 66 40

输出样例:

在这里给出相应的输出。例如:

19 22 45 30

我的解答: (第一次觉得自己注释写的还挺清楚)

void findMin(int M[][MAX],int x[],int n,int m){//二维数组的行数为 n(0 ~ n-1),列数为 m(0 ~ m-1),任务是寻找每行中最小的元素依次放入数组 x[] 里 
	
	int min,i,j;//i 代表行, j 代表列
	for(j=0;j<=m-1;j++){//从第一列开始, 遍历每行 
		min=M[0][j]; 
		for(i=0;i<=n-1;i++){
			if(M[i][j]

你可能感兴趣的:(c语言)