1樓:揪揪伱的小貓咪
比如說3 2 7
4 1 3
5 0 2
轉置後是
3 4 5
2 1 0
7 3 2
這個只需要 交換幾個指標就可以 了現在沒時間 一會兒給你程式關鍵**
void change (char *s1 ,char *s2)change(s[1][0],s[0][1]);
change(s[1,2]),s[2][1]);
change(s[2][0]),s[0][2]) ;
2樓:孔子有云
#include
#define n 3
int main (void)
int ar[n][n],arr[n][n];
int i,m;
printf("輸入九個數.\n");
for(i=0;ifor(m=0;mscanf("%d",*(ar+i)+m);
/*輸出陣列*/
for(i=0;ifor(m=0;mprintf("%d ",*(*(ar+i)+m));
putchar('\n');
putchar('\n');
/*轉置*/
for(m=0;mfor(i=0;i*(*(arr+m)+i)=*(*(ar+i)+m);
/*輸出*/
for(m=0;m
for(i=0;iprintf("%d ",*(*(arr+m)+i));
putchar('\n');
return 0;
c語言(指標): 編寫一個函式實現n*n矩陣轉置。在主函式中用scanf輸入矩陣元素;將陣列名作為函式實參。
3樓:庫後濤
好吧,簡單說下:void fun( float a) }這個函式的侷限只限於方陣。也只能對上三角元素操作,是因為a陣列本身空間的限制,如果採用指標的話:
令p=a;其他注意是對內容**p之類操作即可。不過如果採用引入矩陣b來操作可以完美解決上述問題:
void fun( float a,float b) }最後如果非要用a輸出的話,可以用b 回代即可
c語言:輸入一個2*3的整數矩陣和一個3*2的整數矩陣,使用指標陣列實現這兩個矩陣的相乘。程式如下:
4樓:
//正確的程式如下:
#include
void main()
}for(i=0;i<2;i++)
}printf("請輸入第2個矩陣:\n");
for(i=0;i<3;i++)
}printf("輸出2個矩陣相乘得到的矩陣:\n");
for(i=0;i<2;i++)}}
for(i=0;i<2;i++)
printf("\n");
}getch();}
用c語言程式設計,用c語言如何程式設計?
皇家救星 include include include include void insert int array,int num 將num按遞增順序插到array中 else if array i num if i 29 return for j 28 j i j 將待插入位置後面的元素後移 a...
用c語言程式設計1 2! ,用c語言程式設計1 2! 3! 20!
兔子和小強 n m n應該在第一個for裡面,所以第一個for記得加大括號 linux小小鳥 第8行放到第七行大括號前,細節哦 include void main n m n 這對大括號如果不加,結果就是兩個for迴圈結束,再執行 n m n 這樣肯定錯啦 printf d n n 首先不得不說的是...
c語言用指標引用陣列元素,C語言用指標引用陣列元素
琪樂 p 3 是定義一個指向一維陣列的指標,陣列元素為三。也就是說p指向的其實是a 0 a 1 a 2 這樣的形式。p a 其實就是把第0行的首地址賦值給p.所以答案c中p 1 即是把第1行的首地址給p,在此基礎上向後移一位,取出地址中的元素數值。p 1 1 相當於a 1 1 所以是對的。b的形式是...