2013-10-10 19 views
1

我試圖創建在C矩陣初始化矩陣,這是怎麼了。我在矩陣的初始化階段找到了問題。每次程序運行時,它都會在一個元素中放置一個看似隨機的值。這個數字每次都會改變代碼的不穩定性,如果矩陣大於9x9,就會發生這種情況。毛刺爲了解決拉普拉斯</p> <p>但是用C

爲什麼會發生這種情況?

感謝

的代碼我使用的顯示矩陣是:

// 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++) 
{