使用C语言输入两个整数n和m,分别表示一个m*n的矩阵的行数和列数。然后输入这个矩阵,再将其转置输出
时间: 2023-05-25 09:07:04 浏览: 98
示例:
输入:
3 4
1 2 3 4
5 6 7 8
9 10 11 12
输出:
1 5 9
2 6 10
3 7 11
4 8 12
代码实现如下:
#include <stdio.h>
int main()
{
int n, m, i, j;
scanf("%d %d", &n, &m);
int matrix[n][m];
// 输入矩阵
for(i=0; i<n; i++)
{
for(j=0; j<m; j++)
{
scanf("%d", &matrix[i][j]);
}
}
// 转置输出矩阵
for(j=0; j<m; j++)
{
for(i=0; i<n; i++)
{
printf("%d ", matrix[i][j]);
}
printf("\n");
}
return 0;
}
相关问题
使用C语言输入两个整数n和m,分别表示一个m*n的矩阵的行数和列数。然后输入这个矩阵
,最后求出矩阵中的最大值并输出。
示例输入:
3 4
1 2 3 4
5 6 7 8
9 10 11 12
示例输出:
12
代码实现:
#include <stdio.h>
int main()
{
int n, m, i, j;
int max = 0;
scanf("%d %d", &n, &m); //读入矩阵的行数和列数
int matrix[n][m]; //定义n*m的二维数组
for(i=0; i<n; i++)
{
for(j=0; j<m; j++)
{
scanf("%d", &matrix[i][j]); //读入矩阵中的元素
if(matrix[i][j] > max) //找出矩阵中的最大值
{
max = matrix[i][j];
}
}
}
printf("%d", max); //输出矩阵中的最大值
return 0;
}
C语言首先从键盘上两个矩阵的行数n和列数m,然后输入两个矩阵A和B的元素值,最后求出两个矩阵的和C并输出其元素值。 输入格式: 第1行包含两个整数n和m,表示矩阵的行数和列数。 接下来n行,每行m个整数,表示矩阵A的元素值。 再接下来n行,每行m个整数,表示矩阵B的元素值。 相邻两个整数之间用空格分隔。 输出格式: n行m个数,表示矩阵C的元素值。每行的两个数之间用一个空格分隔。
以下是使用C语言实现该题目的代码:
```c
#include <stdio.h>
int main() {
int n, m;
scanf("%d %d", &n, &m); // 输入矩阵的行数n和列数m
int A[n][m], B[n][m], C[n][m]; // 定义矩阵A、B和C
// 输入矩阵A
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
scanf("%d", &A[i][j]);
}
}
// 输入矩阵B
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
scanf("%d", &B[i][j]);
}
}
// 计算矩阵C的元素值
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
C[i][j] = A[i][j] + B[i][j];
}
}
// 输出矩阵C的元素值
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
printf("%d ", C[i][j]);
}
printf("\n");
}
return 0;
}
```
代码思路:
1. 首先从键盘输入矩阵的行数n和列数m;
2. 然后定义三个二维数组A、B和C,分别存储矩阵A、B和C的元素值;
3. 从键盘输入矩阵A和B的元素值,并计算矩阵C的元素值;
4. 最后输出矩阵C的元素值。
阅读全文