在寫程設矩陣乘法的題目的時候遇到一些問題
完整程式碼在這裡:https://pastebin.com/MxAUgHcY
這是執行結果:https://i.imgur.com/TWB7cYL.png
上面兩區塊是input,即一個2x3矩陣乘上一個3x4矩陣,最下面的區塊是相乘完的結果
中間兩個區塊是測試過程,也就是我的問題所在
以下列出我的問題,基本的程式觀念沒有很好,還請前輩們多多指教
1. 我的作法是先宣告出要存相乘結果的矩陣並初始化,如程式第18行
我記得二維陣列可以用 = {0} 來把全部的內容初始化為0
但做完第18行後,print出新宣告的陣列結果會是測試區塊的上面那塊
出現幾個很大的數字,感覺像是記憶體殘值(?
用for迴圈重新設定每個為0之後才恢復正常全部都是0
是我 = {0} 的使用上有什麼沒注意到的嗎
2. 宣告二維陣列大小的時候,大小是否可以用變數來表示
例如程式碼中的第7行中的m跟k1在scan後才能決定值
那第8行的二維陣列那樣宣告是合法的嗎,還是一定要用malloc的方式才行
我用自己電腦的IDE (CB)跟線上compiler (C99)跑都有過
但同學跑一模一樣的程式碼compiler不給過(VS)