C语言定义一个3*3的整形矩阵输出最大值与最小值之和并对调最大值与最小值
时间: 2024-12-24 19:34:09 浏览: 7
在C语言中,我们可以定义一个3x3的整型数组来代表矩阵,并通过遍历数组找到最大值和最小值。首先,我们需要定义数组并初始化,然后计算它们的和,最后交换最大值和最小值。以下是简单的步骤:
```c
#include <stdio.h>
#define ROWS 3
#define COLS 3
// 定义矩阵
int matrix[ROWS][COLS] = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
// 函数声明
void findMinMax(int arr[][COLS], int row, int col);
void swapMaxMin(int& max_val, int& min_val);
int main() {
// 初始化最大值和最小值为矩阵的第一个元素
int max_val = matrix[0][0];
int min_val = matrix[0][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];
}
if (matrix[i][j] < min_val) {
min_val = matrix[i][j];
}
}
}
// 输出原始和调整后的和
printf("Original sum of max and min: %d\n", max_val + min_val);
// 调换最大值和最小值
swapMaxMin(max_val, min_val);
// 再次输出交换后的和
printf("Sum after swapping max and min: %d\n", max_val + min_val);
return 0;
}
// 用于交换两个数的函数
void swapMaxMin(int& max_val, int& min_val) {
int temp = max_val;
max_val = min_val;
min_val = temp;
}
阅读全文