1樓:匿名使用者
你在paixu()函式中調換的是地址,不是內容啊,所以根本沒排序,假如地址a指向1,地址b指向2,地址c指向3,那麼你傳遞給函式a,b,c的地址,然後把他們的地址進行了調換,注意,這個實際上進行的仍然是傳值操作,只不過傳遞的是地址型別的值而已,而不是傳址操作,
你如果想在被調函式中改變的資料在主調函式中使用,需要改成這樣
void paixu(int *a,int *b,int *c)
2樓:倒黴熊
int temp;
if(*a<*b)
if(*a<*c)
if(*b<*c)
3樓:灰色
void paixu(int *a,int *b,int *c);
改成
然後傳引數的時候直接傳a,b,c就可以了 ,在函式中操作的時候也直接用a,b,c就可以了,我知道你是想引用地址來比較大小,但是不是你想的那樣,因為你那樣定義函式,裡面的引數其實是整型陣列,所以 沒辦法比較的
4樓:匿名使用者
#include "stdio.h"
void paixu(int *a,int *b,int *c);
int main()
void paixu(int *a,int *b,int *c)if(*b<*c)
if(*a<*b)}
C語言問題C語言問題,C語言問題C語言問題
include include int main b k p b k 0 puts b return 0 c語言問題c語言問題 include int main int h,m scanf d d h,m printf s num h if m 0 else printf o clock print...
C語言問題,C語言問題C語言問題
這題考的是自動型別轉換,由編譯系統自動完成,轉換是 向上 靠的 舉個例子 include stdio.h void main 你編譯一下就會有警告 conversion from double to float possible loss of data 也就是說系統預設轉化了a,b的資料型別為do...
c語言問題,C語言問題
1 c2 a 3 d4 a 5 d6 b 7 a8 a9 d c語言問題 include define n 30 typedef struct student student r n int main void num 1 for i 0 ir max score max j if max i if...