21xrx.com
2025-07-03 16:02:31 Thursday
文章检索 我的文章 写文章
C++输出矩阵最大值及其位置
2023-07-09 00:22:43 深夜i     140     0
C++ 输出 矩阵 最大值 位置

C++是一种广泛使用的编程语言,有许多强大的功能和库可供使用,使其成为许多开发者的首选语言。

其中,输出矩阵最大值及其位置是一个常见问题,我们可以使用C++来解决这个问题。

首先,我们需要创建一个矩阵,并随机填充它的元素值。

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
const int ROWS = 5;
const int COLS = 5;
int main() {
  // create a matrix
  int matrix[ROWS][COLS];
  // fill the matrix with random values
  srand(time(0));
  for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLS; j++) {
      matrix[i][j] = rand() % 100;
    }
  }
  // print the matrix
  for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLS; j++) {
      cout << matrix[i][j] << " ";
    }
    cout << endl;
  }
  return 0;
}

接下来,我们需要遍历矩阵,查找其中的最大值及其位置。

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
const int ROWS = 5;
const int COLS = 5;
int main() {
  // create a matrix
  int matrix[ROWS][COLS];
  // fill the matrix with random values
  srand(time(0));
  for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLS; j++) {
      matrix[i][j] = rand() % 100;
    }
  }
  // print the matrix
  for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLS; j++) {
      cout << matrix[i][j] << " ";
    }
    cout << endl;
  }
  // find the maximum value and its position
  int max_val = 0, max_row = 0, max_col = 0;
  for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLS; j++) {
      if (matrix[i][j] > max_val) {
        max_val = matrix[i][j];
        max_row = i;
        max_col = j;
      }
    }
  }
  // print the maximum value and its position
  cout << "The maximum value is " << max_val << " at (" << max_row << "," << max_col << ")." << endl;
  return 0;
}

最后,我们可以将上述代码整合在一起,形成一个完整的程序。

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
const int ROWS = 5;
const int COLS = 5;
int main() {
  // create a matrix
  int matrix[ROWS][COLS];
  // fill the matrix with random values
  srand(time(0));
  for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLS; j++) {
      matrix[i][j] = rand() % 100;
    }
  }
  // print the matrix
  for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLS; j++) {
      cout << matrix[i][j] << " ";
    }
    cout << endl;
  }
  // find the maximum value and its position
  int max_val = 0, max_row = 0, max_col = 0;
  for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLS; j++) {
      if (matrix[i][j] > max_val) {
        max_val = matrix[i][j];
        max_row = i;
        max_col = j;
      }
    }
  }
  // print the maximum value and its position
  cout << "The maximum value is " << max_val << " at (" << max_row << "," << max_col << ")." << endl;
  return 0;
}

在这个程序中,我们首先创建了一个5x5的矩阵,并随机填充了它的元素值。然后,我们通过遍历矩阵查找最大值及其位置,并输出这些信息。这个程序可以通过查找矩阵最大值及其位置,帮助我们更好地理解C++的一些语法和操作。

  
  

评论区