[c] 포인터를 활용한 2차원배열 출력이 안됩니다.
조회수 378회
포인터를 활용하여 2차배열에 저장 후 출력을 하려 했지만 정상적으로 출력이 안됩니다. 봐주셔서 감사합니다.
#include<stdio.h>
void main(){
int student_subject[3][2];
int (*p)[2] = student_subject;
for (int student = 0; student < 3; student++){
printf("%d번째 학생 성적 입력\n", student+1);
for (int subject = 0; subject < 2; subject++){
switch (subject){
case 0:
printf("국어 : ");
break;
case 1:
printf("영어 : ");
break;
}
scanf("%d", (p + student)[subject]);
}
}
printf("=== 학생 성정 출력 ===\n");
printf("학번\t국어\t영어\n");
for (int student = 0; student < 3; student++){
printf("%d\t", student+1);
for (int subject = 0; subject < 2; subject++){
switch (subject){
case 0:
printf("%d\t", *(p+student)[subject]);
break;
case 1:
printf("%d\n", *(p+student)[subject]);
break;
}
}
}
}
}
댓글 입력