大学のC言語の課題で出された問題なのですが、 「入力された行列を転置するプログラムを作成しなさい。さらに、転置行列と元の行列を比較し、対称行列であるかどうかを確認するプログラムを作成しなさい。」 というもので、どうしても対称行列の判断をするプログラムの部分が分かりません。 私はMicrosoft Visual Studio 2022を使っています。 以下が今出来ているプログラムです。 #include <stdio.h> int main(void) { int i, j; /* 行列と行列 */ int a[10][10], trans[10][10]; /* 行と列 */ int row, column; printf("行数 = "); scanf_s("%d", &row); printf("列数 = "); scanf_s("%d", &column); /* 行列の入力 */ printf("¥n行列を入力してください¥n"); for (i = 0; i < row; ++i) { for (j = 0; j < column; ++j) { printf("行列の要素 A[%d][%d] = ", i + 1, j + 1); scanf_s("%d", &a[i][j]); } } /* 入力した行列の表示 */ printf("¥nA = ¥n"); for (i = 0; i < row; ++i) { for (j = 0; j < column; ++j) { printf("%d ", a[i][j]); if (j == column - 1) printf("¥n"); } } /* 転置行列 */ for (i = 0; i < row; ++i) { for (j = 0; j < column; ++j) { trans[j][i] = a[i][j]; } } /* 転置行列の表示 */ printf("¥n転置行列 = ¥n"); for (i = 0; i < column; ++i) { for (j = 0; j < row; ++j) { printf("%d ", trans[i][j]); if (j == row - 1) printf("¥n"); } } if (row != column) { printf("非対称¥n"); } else { //この部分が分からない } return 0; } どなたか、わかる人がいるなら教えてください。
C言語関連