1樓:豽韷
#include
#include
void transf(int (*p)[10], int m)}}int main()
transf( a, n);
for(i=0;i return 0;} 2樓:海濤大興 int i=0,j=0; //索引變數 int n, **a; //n是維數,a是二維陣列名printf("請輸入矩陣維數:"); scanf("%d",&n); //使用者輸入維數//動態建立二位陣列 a=(int **)malloc(sizeof(int)*n); for(i=0;i //輸入陣列元素 for(i=0;i }//轉置矩陣 for(i=0;i }//輸出轉置後的矩陣 for(i=0;i }free(a); //釋放記憶體 你在除錯一下,我手寫的,可能會有小錯誤 3樓:隨心e談 你的是想求矩陣的轉置? transf(int a, int n); 你這個有語法問題了,應該是:transf(a[0],n); 而你的子函式根本就沒定義陣列! void transf(int *p,int m){ int i,j,temp;/*函式內的變數可以用些熟悉的字母,你想怎麼用就怎麼用,反正他只是在函式內起作用*/ for(i=0;ia[[3][2] 當i=3;j=2時 又a[3][2]<-->a[2][3]想想會是什麼後果? 如果將j=0改為j=i就可以了,用上三角於下三角的轉,實際上j=i+i就可以了,因為對角線的不用轉。 可以不寫,但是要把你的自定義函式寫在主函式前面才行。就是說把z的值返回到主函式,本例中就是把z的值返回給c。不能不寫的,否則當編譯器編譯到你main函式時,由於還沒編譯到下面的max定義。所以它找不到max到底是什麼符號。一般申明都寫在函式後面的,否則,出了main外,其他函式看不到max的申明的。... a宣告時形參名可以忽略也可以任意合法的變數名,但是其型別不能忽略。以上的講,可能你不好理解,我來告訴你吧 a型別必須要一樣,而且數量一定要相同,宣告形參可以寫也可以不寫 bc語言中,在宣告函式的時候其形式引數可以只是資料型別不用寫出具體的識別符號,如果要寫出具體的識別符號的話,就一定要和函式定義的識... 我也來 說幾句。標準編譯器 對函式的呼叫 都要 先申明 才能 呼叫 生產的時候就這樣設定的 我推薦試用 大點的 vs2005,vc2000.小點的 dev cpp turboc 3.0 2.0 不支援滑鼠有點 麻煩 這裡 就涉及 申明和定義之間的區別。申明 不開闢記憶體,僅僅告訴編譯器,申明的部分存...c語言的函式問題,c語言函式呼叫問題
c語言題目(函式呼叫),C語言題目(函式呼叫)
c語言函式宣告的問題,C語言函式宣告的問題