解题思路:
注意事项:
代码说明
宏定义:
#define SIZE 5 定义了矩阵的大小为5x5。
swapRows函数:
该函数用于交换矩阵中的两行。它使用一个临时数组 temp 来存储要交换的行元素。
printMatrix函数:
该函数用于输出矩阵,每行元素之间用空格分隔,每行结束后换行。
main函数:
读取输入的5x5矩阵。
读取要交换的行号(注意输入的行号是从1开始的,但数组索引是从0开始的,因此需要进行转换)。
调用 swapRows 函数进行行交换。
调用 printMatrix 函数输出交换后的矩阵。
参考代码:
#include <stdio.h>
#define SIZE 5
void swapRows(int matrix[SIZE][SIZE], int row1, int row2) {
int temp[SIZE];
for (int i = 0; i < SIZE; i++) {
temp[i] = matrix[row1][i];
matrix[row1][i] = matrix[row2][i];
matrix[row2][i] = temp[i];
}
}
void printMatrix(int matrix[SIZE][SIZE]) {
for (int i = 0; i < SIZE; i++) {
for (int j = 0; j < SIZE; j++) {
printf("%d", matrix[i][j]);
if (j < SIZE - 1) {
printf(" ");
}
}
printf("\n");
}
}
int main() {
int matrix[SIZE][SIZE];
int m, n;
// 读取矩阵
for (int i = 0; i < SIZE; i++) {
for (int j = 0; j < SIZE; j++) {
scanf("%d", &matrix[i][j]);
}
}
// 读取要交换的行号
scanf("%d %d", &m, &n);
// 确保行号在有效范围内
if (m >= 1 && m <= 5 && n >= 1 && n <= 5) {
m--; // 转换为0基索引
n--;
swapRows(matrix, m, n);
}
// 输出交换后的矩阵
printMatrix(matrix);
return 0;
}
0.0分
1 人评分
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:436 |
多输入输出练习1 (C语言代码)浏览:1219 |
C语言程序设计教程(第三版)课后习题8.6 (C语言代码)浏览:631 |
C语言训练-求函数值 (C语言代码)浏览:600 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:769 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:583 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:490 |
1071题解浏览:585 |
IP判断 (C语言代码)浏览:592 |
分糖果 (C语言代码)浏览:980 |