题解 | #最大的两个数#

最大的两个数

https://www.nowcoder.com/practice/7385949943264a9fa4348cbd43e6e00c

#include<iostream>

using namespace std;

int main() {
    int A[4][5];

    int i, j;
    for (i = 0; i < 4; i++)
        for (j = 0; j < 5; j++)cin >> A[i][j];

    int B[2][5];

    int m, n;
    for (j = 0; j < 5; j++) {
        //找到该列最大的数
        m = 0;
        for (i = 1; i < 4; i++)
            if (A[i][j] > A[m][j])m = i;
        //找到该列第二大的数
        if (m == 0)n = 1;
        else n = 0;
        for (i = 0; i < 4; i++)
            if (A[i][j] > A[n][j] && i != m)n = i;
        //根据m和n的大小关系对数组B赋值
        if (m < n) {
            B[0][j] = A[m][j];
            B[1][j] = A[n][j];
        } else {
            B[0][j] = A[n][j];
            B[1][j] = A[m][j];
        }
    }

    for (i = 0; i < 2; i++) {
        for (j = 0; j < 5; j++)cout << B[i][j] << " ";
        cout << endl;
    }

    return 0;
}

全部评论

相关推荐

整顿职场的柯基很威猛:这种不可怕,最可怕的是夹在一帮名校里的二本选手,人家才是最稳的。
点赞 评论 收藏
分享
4 收藏 评论
分享
牛客网
牛客企业服务