[C++] 雖然已經考完上機

看板NTUBIME101HW作者 (バカ)時間15年前 (2008/12/11 20:37), 編輯推噓6(605)
留言11則, 8人參與, 最新討論串1/1
剛剛把第十二題用傳陣列的方式弄出來了... #include <iostream> #include <iomanip> #include <ctime> using namespace std; void fun(int **,int **,int **,int m,int n,int l); int main() { srand(time(NULL)); int a[11][11]={0}; int b[11][11]={0}; int c[11][11]={0}; int i,j,k,sum,m,n,l; int *ap[11],*bp[11],*cp[11],**A,**B,**C;//真的是超麻煩... cout << "Mat.A(MxN),Mat.B(NxL),Please input M,N,L:\n"; cin >> m >> n >> l; cout << endl; cout << "Matrix A(" << m << "x" << n << "):\n"; for(i=0;i<m;i++) { for(j=0;j<n;j++) { a[i][j] = rand()%9 + 1; cout << setw(3) << a[i][j]; } cout << endl; } cout << endl; cout << "Matrix B(" << n << "x" << l << "):\n"; for(i=0;i<n;i++) { for(j=0;j<l;j++) { b[i][j] = rand()%9 + 1; cout << setw(3) << b[i][j]; } cout << endl; } for(i=0;i<11;i++) { ap[i] = a[i]; cp[i] = c[i]; bp[i] = b[i]; } A = ap; B = bp; C = cp; fun(A,B,C,m,n,l); cout << endl; cout << "Matrix C(" << m << "x" << l << "):\n"; for(i=0;i<m;i++) { for(j=0;j<l;j++) cout << setw(4) << c[i][j]; cout << endl; } system("pause"); return 0; } void fun(int **a,int **b,int **c,int m,int n,int l) { int sum,i,j,k; for(i=0;i<m;i++) for(j=0;j<l;j++) { sum = 0; for(k=0;k<n;k++) sum += a[i][k]*b[k][j]; c[i][j] = sum; } } -------- 發牌程式如果不想設全域變數就只能靠傳雙重指標了... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.232.97.252

12/11 23:19, , 1F
這是.....樓下你懂嗎?
12/11 23:19, 1F

12/11 23:26, , 2F
有待研究 顆顆 那個**不太了解
12/11 23:26, 2F

12/11 23:38, , 3F
我也是今天才懂的...
12/11 23:38, 3F

12/12 01:09, , 4F
五樓你懂嗎?
12/12 01:09, 4F

12/12 01:20, , 5F
我要研究一下 六樓你說呢?
12/12 01:20, 5F

12/12 01:23, , 6F
好難我不會
12/12 01:23, 6F

12/12 01:50, , 7F
聽說八樓是神手耶~
12/12 01:50, 7F

12/12 04:20, , 8F
我是神車
12/12 04:20, 8F

12/12 19:04, , 9F
= =" 怎麼越來越向鄉民呢?!XDDD
12/12 19:04, 9F

12/13 14:49, , 10F
GOOD JOB
12/13 14:49, 10F

12/13 17:04, , 11F
助教現身!!!!!
12/13 17:04, 11F
文章代碼(AID): #19GGcEbE (NTUBIME101HW)