2013-10-10 3 views
1

LaPlacian을 해결하기 위해 C로 행렬을 만들려고합니다글리치 초기화 C

그러나 이것은 잘못되었습니다. 나는 행렬의 초기화 단계에서 문제를 발견했다. 프로그램이 실행될 때마다 한 요소에 임의의 값이 표시됩니다. 이 숫자는 코드가 불안정 할 때마다 변경되며, 행렬이 9x9보다 커지면 발생합니다.

왜 이런 일이 일어날 수 있습니까? 내가 행렬을 보여주기 위해 사용하고

감사

코드는 : 각 배열의 끝에 과거의 요소에서 찾고있다

// create matrix 
    double mat[meshno][meshno] = { {0} }; // x direction defined by i, y by j 

    //variables 
    int i, j, k; 

    //print initial matrix 
for (i=0;i<=meshno;i++) 
{ 
for(j=0;j<= meshno;j++) 
{ 
    printf("%f ", mat[i][j]); 
} 
printf("\n"); 
} 

답변

6

.

귀하의 루프는 <하지 <= 사용해야에 대한 : 감사 말에 대한

for (i = 0; i < meshno; ++i) 
{ 
for(j = 0; j < meshno; ++j) 
{ 
+0

헤이 사람 덕분에 많은 – user2137944

+0

user2137944 @보다는 코멘트 사용을 StackExchange의 도구를 떠나는 수락 대답 – Mark

+0

이 답변이 유용 할 경우 [수락] (http://meta.stackexchange.com/a/5235/227203)을 고려하십시오. 자세한 내용은 _ [답변 수령 방법은 무엇입니까?] (http://meta.stackexchange.com/a/5235/227203) _을 참조하십시오. –

0

변경

for (i=0; i< meshno;i++) 
{ 
for(j=0; j< meshno;j++) 
{