차원 및 요소 읽기
이 단계에서는 행렬 뺄셈을 위한 C 프로그램에서 사용자 입력으로 행렬 차원과 요소를 읽는 방법을 배웁니다. 사용자가 두 행렬의 크기와 값을 입력할 수 있도록 프로그램을 만들 것입니다.
먼저, 행렬 뺄셈 프로그램을 위한 새로운 C 파일을 만들어 봅시다.
cd ~/project
nano matrix_subtraction.c
이제 다음 코드를 파일에 추가합니다.
#include <stdio.h>
#define MAX_SIZE 100
int main() {
int rows, cols;
int matrix1[MAX_SIZE][MAX_SIZE];
int matrix2[MAX_SIZE][MAX_SIZE];
// 행렬 차원 읽기
printf("행의 개수를 입력하세요: ");
scanf("%d", &rows);
printf("열의 개수를 입력하세요: ");
scanf("%d", &cols);
// 첫 번째 행렬의 요소 입력
printf("첫 번째 행렬의 요소를 입력하세요:\n");
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
printf("요소 [%d][%d] 를 입력하세요: ", i, j);
scanf("%d", &matrix1[i][j]);
}
}
// 두 번째 행렬의 요소 입력
printf("두 번째 행렬의 요소를 입력하세요:\n");
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
printf("요소 [%d][%d] 를 입력하세요: ", i, j);
scanf("%d", &matrix2[i][j]);
}
}
return 0;
}
예시 출력:
행의 개수를 입력하세요: 2
열의 개수를 입력하세요: 2
첫 번째 행렬의 요소를 입력하세요:
요소 [0][0]를 입력하세요: 5
요소 [0][1]를 입력하세요: 6
요소 [1][0]를 입력하세요: 7
요소 [1][1]를 입력하세요: 8
두 번째 행렬의 요소를 입력하세요:
요소 [0][0]를 입력하세요: 1
요소 [0][1]를 입력하세요: 2
요소 [1][0]를 입력하세요: 3
요소 [1][1]를 입력하세요: 4
프로그램을 컴파일하고 실행해 봅시다.
gcc matrix_subtraction.c -o matrix_subtraction
./matrix_subtraction
코드 설명:
MAX_SIZE를 사용하여 최대 행렬 크기를 100x100 으로 정의합니다.
rows와 cols는 행렬의 차원을 저장합니다.
- 두 개의 2 차원 배열
matrix1과 matrix2는 행렬 요소를 저장하기 위해 생성됩니다.
scanf()는 사용자 입력으로부터 행렬 차원과 요소를 읽는 데 사용됩니다.
- 중첩된 반복문은 두 행렬의 요소를 입력하는 데 사용됩니다.