누군가
31
2020-09-12 16:39:47
1
119

c언어 이차원배열 관련 질문입니다.



#include<stdio.h>

void main(){
    int n,i=0,j=0,count=1,m;
    scanf("%d",&n);
    int a[n+1][n+1];
    m=n/2;
    while(count<=n*n){
        a[(n+i)%n][(m+j)%n]=count;
        if(count%n==0) i++;
        else{
            i--;
            j++;
        }
        count++;
    }
    for (i = 0; i < n; i++){
        for (j = 0; j < n; j++){
            printf("%d ", a[i][j]);
        }
        printf("\n");               
    }
}

프로그래밍 사이트에 나와있는 마방진 문제입니다.

그래서 코드를 짰는데 0이 나옵니다.... 도대체 count가 0이 될 수 없는데 어떻게 0값이 들어간건지 모르겠습니다. 

0
  • 답변 1

  • 그래안그래
    443
    2020-09-12 22:08:31
    배열을 동적할당
  • 로그인을 하시면 답변을 등록할 수 있습니다.