int select1, select2;
int score[100][100] = { 0, };
int score1, score2;
int index, index1, index2;
int swap;
printf("행 입력 : ");
scanf("%d", &select1);
printf("열 입력 : ");
scanf("%d", &select2);
for (int i = 0; i <= select1 - 1; i++)
{
for (int j = 0; j <= select2 - 1; j++)
{
printf("숫자 입력 : ");
scanf("%d", &score1);
score[i][j] = score1;
}
}
printf("\n\n");
for (int i = 0; i <= select1 - 1; i++)
{
for (int j = 0; j <= select2 - 1; j++)
{
printf("숫자 : %d\t", score[i][j]);
}
printf("\n");
}
printf("\n\n");
swap = score[0][0];
for (int i = 0; i <= select1 - 1; i++)
{
for (int j = 0; j <= select2 - 1; j++)
{
score[i][j] = score[i][j + 1];
}
printf("\n");
}
score[select1 - 1][select2 - 1] = swap;
for (int i = 0; i <= select1 - 1; i++)
{
for (int j = 0; j <= select2 - 1; j++)
{
printf("숫자 : %d\t", score[i][j]);
}
printf("\n");
}
아니 이거 중간에 숫자가 왜 초기화가 되는거임...??
맨 끝의 숫자가 인덱스 범위를 벗어나서 0이되는거라면 이해가 되는데
왜 멀쩡한 중간값이 초기화가 되는거야
왜 그러는지 아는사람 없니 ...
초기화 된게 아니라 배열 위치를 잘못 넣었나보지
그냥 반복하는 순서에 맞게 배치 했는데 잘못될게 있나..
행의 첫번째 숫자들을 전부 행의 마지막 숫자로 옮겨야하는데 넌 swap 하나로 맨 처음 숫자만 맨 마지막으로 보내잖아
왜 세번째에 숫자가 0이 나오냐면 score[0[[2] = score[0][3] 이렇게 넣으니 score[0][3]의 값인 0이 들어가지 행을 10개로 늘리면 모든 행의 마지막이 0일거다
뭔소린지 이해 못하겠으면 너가 swap으로 옮긴 걸 모든 행마다 해줘야한다고 생각하샘
헐.... 10행 3열 해보니깐 행 마지막 숫자는 죄다 0으로 나오네 그럼 노가다로 일일히 행의 마지막 열 마다 그 다음행에 있는 첫번째 값을 끌고 와야된다는거임?
행이 몇개 있는 줄 알고 노가다를 함 반복문으로 너가 처리해야지
ㅇㅇ.. 그래서 반복문안에 왼쪽으로 옮기라고 j + 1 해주는곳에다가 swap1 = score[i][select2 - 1]; score[i][j] = score[i][j + 1]; score[i][select2 - 1] = swap1; 이렇게 해보니깐 이제 숫자가 0으로는 안나오는데 원래 있던 숫자가나오네 하 어렵다
화이팅