《C編程技巧:117個問題解決方案示例 》 —3.12 計算矩陣的乘積
3.12 計算矩陣的乘積

問題
你想要計算矩陣A和B的乘積。
解決方案
編寫一個C程序,計算矩陣A和B的乘積,使得A×B=C(C也是矩陣,見圖3-8),使用以下規格說明:
程序要求用戶輸入矩陣A的秩和矩陣B中的列數。程序還在屏幕上顯示矩陣A和B。
程序包含三個函數:input()、output()和product()。函數input()接受來自鍵盤的數據,函數output()在屏幕上顯示矩陣,函數product()計算矩陣A和B的乘積并填充矩陣C中的數據值。
程序計算矩陣A和B的乘積,并在屏幕上顯示結果。
圖3-8 矩陣A和B的乘積,使得A×B=C
代碼
以下是使用這些規格說明編寫的C程序的代碼。在文本編輯器中鍵入以下C程序,并將其保存在文件夾C:\Code中,文件名為promat.c:
編譯并執行此程序。這個程序的運行結果在這里給出:
工作原理
此程序包含三個do-while循環。第一個do-while循環接受矩陣A的行數的整數值,范圍為1≤M≤8。第二個do-while循環接受矩陣A的列數的整數值,范圍為1≤N≤8。第三個do-while循環接受矩陣B的列數的整數值,范圍為1≤P≤8。LOC 26和32分別調用函數input()并接受矩陣A和B的數據。LOC 29和35分別調用函數output()并在屏幕上顯示矩陣A和B。LOC 37調用函數product(),執行矩陣A和B的乘積,并填充矩陣C中的值。LOC 39調用函數output()并在屏幕上顯示矩陣C。LOC 44~53定義了函數input()。LOC 54~65定義了函數output()。LOC 66~80定義了函數product()。
c語言 C 語言
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。