배열 부분 질문이에용
아연
질문 제목 : 3*6배열인데요 [0][0]~ [0][4]와[0][0] ~[1][4]에 입력받고[0][5][1][5]와[2][0]~ [2][5] 요소들이 합계인데요..마지막 출력값들이 모두 쓰레기값으로 나옵니다.. 분명히 초기값을 쓰지 않아서 생긴것 같은데... 대체 어디서 초기화 시켜주어야 할지 모르겠습니다... 고수님들 알려주세요...ㅠㅠ질문 내용 :
#include stdio.h
#define max [3][6]
void fn( int array max , int n);
void sum( int array max );
int get( int array max , int n);
int main(void)
{
int list max;
fn( list , 2);
sum (list);
get( list , 3);
return 0;
}
void fn( int array max , int n)
{
int i,j;
for ( i = 0; i n ; i++) {
for ( j = 0; j 5 ; j++) {
printf(%d번째 학생의 점수를 입력하시오\n , i + 1 );
scanf (%d , &array max);
}
}
}
void sum( int array max )
{
array[0][5] = array[0][0] + array[0][1] + array [0][2] + array [0][3] + array[0][4];
array[1][5] = array[1][0] + array[1][1] + array [1][2] + array [1][3] + array[1][4];
array[2][0] = array[0][0] + array[1][0];
array[2][1] = array[0][1] + array[1][1];
array[2][2] = array[0][2] + array[1][2];
array[2][3] = array[0][3] + array[1][3];
array[2][4] = array[0][4] + array[1][4];
array[2][5] = array[0][5] + array[1][5];
}
int get( int array max , int n)
{
int i , j ;
for ( i = 0; i n; i++) {
for ( j = 0; j 6 ; j++) {printf(%d , array[i][j]);
}
printf(\n);
}
return array[i][j];
}
-
콩순
아 감사합니다.. 모르고 입력부분에 상수를 넣은꼴이 되어버렸네요..~~
-
맑은가람
폰트가 이상한지 [] 이 잘 안보이네요...
scanf (\%d\ , array[i]+j);
로 고쳐보세요 -
일본드립
아 scanf_s 아니라 scanf이구요... 모든 함수 인자는 int array MAX 에요.. 위에 조금 짤렸네요 ㅠㅠ 다시 수정할께용
-
여우비
scanf_s 함수 외에는 쓰레기 값이 들어갈 만한 곳이 없는데요.
함수 인자는 모두 int array[][MAX]로 사용된 것 맞죠?