6-2 实验8_3_设计函数

该博客介绍了一个C语言实现的函数,用于从二维数组中找出每列的最小值并存入一维数组。函数`findMin`接收一个二维数组、一个一维数组及数组的行数和列数作为参数,遍历二维数组,逐列找到最小值并存储。输入样例给出了一个3x4的二维数组,输出样例展示了函数正确找出每列最小值的结果。
摘要由CSDN通过智能技术生成

设计函数将二维数组M中每列的最小元素,依次放入一维数组x中,二维数组M的行数为n,列数为m。

输入第一行为两个整数n、m,代表二维数组M的行数与列数,n、m的范围均是1—100。然后是n*m个整数,即二维数组M的元素。输出x数组中的元素,每个元素用空格分隔。

函数接口定义:

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

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

裁判测试程序样例:

#include<stdio.h>

#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

MY IDEAS''

1.函数没有返回值,也不需输出,只需要找到每列最小值,保存在数组x中,把行列搞清楚就好。

void findMin(int M[][MAX],int x[],int n,int m)//n行m列 
{
	int i,j,min;
	for (i=0;i<m;i++)
	{
		min=M[0][i];
		for (j=1;j<n;j++)
		{
			if (M[j][i]<min) min=M[j][i];
		}
		x[i]=min;
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值