[問題] 二微陣列相乘(運用涵式)

看板C_and_CPP作者 (蚊子)時間14年前 (2010/05/27 00:30), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
因為我是C語言新手 所以雖然爬了板上有些大大的文 不過還是看不懂....(對不起我太笨) 所以只好在PO一篇 真對不起 我的題目是: 寫出一個2X2的矩陣相乘的程式碼 至於矩陣是給定的 A=(1 2) B=(5 6) (3 4) (7 8) 將以上兩矩陣相乘 而我寫的程式碼如下: #include <stdio.h> #include <stdlib.h> int fn(int *x[], int *y[]); <--設一個副程式(其實我不太明白我 的*x[]這樣定義是 否有錯?? ) int main(int argc, char *argv[]) <--以下是主程式 { int a[2][2]={{1,2},{3,4}}; int b[2][2]={{5,6},{7,8}}; <--此兩行為定義A和B矩陣 printf(" A x B = %3d ",&a,&b); <--PO出最後的結果 (問題在此....) printf("\n"); system("PAUSE"); return 0; } <--主程式結束 int fn(int *x[], int *y[]) <--以下為副程式(也就是運算A*B矩陣) { int i,j,k; int c[2][2]={0}; for(i=0;i<2;i++){ for(j=0;j<2;j++){ for(k=0;k<2;k++){ c[i][j] = c[i][j] + x[i][k] * y[k][j]; } } } } <--副程式結束 我的問題在 我不了解如何把我副程式運算完的結果 傳回主程式 我找了板上的一些文章 不過都看不太懂 有高手可以幫幫我解答嗎....?? 萬分感激.... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.37.241.8
文章代碼(AID): #1B_KoyQj (C_and_CPP)
文章代碼(AID): #1B_KoyQj (C_and_CPP)