학교 과제로 행렬의 크기와 원소를 입력받고 출력하는 코드를 만들래.
그래서 대충 짜서 시뮬레이션을 돌려보는데
0부터 시작해서 1씩 올라가야하는 L값이
입력한 행렬의 1행 2열 원소부터 시작함
L값이 정상적으로 0부터 올라가게 할 순 없을까?
코드는 이거임
#define _CRT_SECURE_NO_WARNINGS
#include
#include
void input_value(int **m, int row, int col);
void output_value(int **m, int row, int col);
int dlwlrma[] = { 0, };
int main()
{
int row, col;
printf("행렬 A의 행, 열의 수를 입력하세요 >> ");
scanf("%d %d", &row, &col);
printf("행렬 A의 값을 입력하세요\n");
for (int i = 0; i
{
scanf("%d", &dlwlrma[i]);
}
printf("%d\n\n", dlwlrma[1]);
int **d_Array = malloc(sizeof(int *) * row);
for (int i = 0; i
{
d_Array[i] = malloc(sizeof(int)* col);
}
input_value(d_Array, row, col);
output_value(d_Array, row, col);
for (int i = 0; i
{
free(d_Array[i]);
}
free(d_Array);
system("pause");
return 0;
}
void input_value(int **m, int row, int col)
{
for (int i = 0; i
{
for (int j = 0; j
{
static int L = 0;
m[i][j] = dlwlrma[L];
printf("L: %d\n", L); // L값이 이상해서 프린트 해봄
L++;
}
}
}
void output_value(int **m, int row, int col)
{
for (int i = 0; i
{
for (int j = 0; j
{
printf("%d ", m[i][j]);
}
printf("\n");
}
}
------------------------------------------------
행렬 A의 행, 열의 수를 입력하세요 >> 3 4
행렬 A의 값을 입력하세요
1 110 2 3
1 2 3 4
4 3 2 1
110
L: 110 <-0부터 시작해야하는 L값이 110부터 시작함
L: 111
L: 112
L: 113
L: 114
L: 115
L: 116
.
.
.
0 0 0 0
0 0 0 0
0 0 0 0
계속하려면 아무 키나 누르십시오 . . .
for문이 이상한데...
주소가 겹친 건가