Re: [問題] 新手寫3*3矩陣相乘 (已解決)

看板C_and_CPP (C/C++)作者 (慢慢)時間16年前 (2010/04/24 19:50), 編輯推噓1(106)
留言7則, 3人參與, 最新討論串2/2 (看更多)
新手試寫 程式用途為求矩陣A*B 先輸入矩陣A、B的行列數 接著輸入矩陣內容 若輸入矩陣A、B的行列數無法相乘 則輸入ERROR 接著重新輸入 以下為程式碼 謝謝指教 #include <iostream> #include <stdlib.h> using namespace std; int main(int argc, char *argv[]) { int m=0,n=0,x=0,y=0,i,j,k,a[100][100],b[100][100],c[100][100]; star : cout << "請輸入矩陣a的行列數:" << endl; cin >> m >> n; cout << "請輸入矩陣b的行列數:" << endl; cin >> x >> y; for(i=0;i<m;i++){ for(j=0;j<y;j++) c[i][j]=0;} if(n!=x){ cout << "Error" << endl; goto star;} else{ cout << "請輸入矩陣a(" << m << "*" << n << "):" << endl; for(i=0;i<m;i++){ for(j=0;j<n;j++) cin >> a[i][j];} cout << "請輸入矩陣b(" << x << "*" << y << "):" << endl; for(i=0;i<x;i++){ for(j=0;j<y;j++) cin >> b[i][j];}} for(i=0;i<m;i++){ for(j=0;j<y;j++) for(k=0;k<n;k++) c[i][j]=c[i][j]+(a[i][k]*b[k][j]);} cout << "矩陣a*b(" << m << "*" << y << "):" << endl; for(i=0;i<m;i++){ for(j=0;j<y;j++){ cout << c[i][j]; if(j!=(y-1)) cout << " ";} cout << endl;} system("PAUSE"); } -- 作者 jianoon (郎不識妾心) 看板 Gossiping 標題 [國外] 王晶細說圈中舊事 邱淑貞是性感 不是肉彈 時間 Mon Feb 1 21:42:04 2010

02/01 21:42,
我上回去香港遇到吳淑珍
02/01 21:42

02/01 21:42,
就射出來了
02/01 21:42
-- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.240.176.185

04/24 20:57, , 1F
雖然有用縮排來表示從屬關係, 但是大括號擺在行尾比
04/24 20:57, 1F

04/24 20:57, , 2F
較難看出程式區段結束在哪
04/24 20:57, 2F

04/24 21:32, , 3F
所以love大建議是?
04/24 21:32, 3F

04/24 22:05, , 4F
右大括號擺的位置, 可以再左邊一些~
04/24 22:05, 4F

04/25 02:27, , 5F
把大括弧換行擺在跟區段開始的地方同一個位置?
04/25 02:27, 5F

04/25 02:27, , 6F
^右
04/25 02:27, 6F

04/25 12:13, , 7F
喔喔 所以是對齊的意思嗎
04/25 12:13, 7F
文章代碼(AID): #1Bqji2tW (C_and_CPP)
文章代碼(AID): #1Bqji2tW (C_and_CPP)