C 實現兩個整數交換,C 為函式交換兩個整數值

發布 科技 2024-08-20
11個回答
  1. 匿名使用者2024-02-01

    呵呵。。。。。。巧合,絕對是巧合,呵呵.........C++ 庫函式具有 swap 函式,並且此函式仍然是泛型的。

    templateinline

    void swap(_ty& _x, _ty& _y)_ty _tmp = _x;

    x = _y, _y = _tmp; }

    第一:你自己寫的比較匹配,所以你自己寫的。

    第二個:你寫的不匹配,會呼叫庫函式的swap,這個泛型函式會幫你做這個工作,你可以在swap中設定乙個斷點,然後除錯,發現它根本沒有執行。 (一樓的那個很不對)。

  2. 匿名使用者2024-01-31

    顯然,第乙個你把 a 和 b 的位址分別分配給 *s1 和 *s2,所以 *s1=&a;*s2=&b;

    第二個將 a 和 b 作為引數分別傳遞給表單引數 *s1 和 *s2因此,*s1=a; *s2=b.

  3. 匿名使用者2024-01-30

    templateinline

    void swap(_ty& _x, _ty& _y)_ty _tmp = _x;

    x = _y, _y = _tmp; }

    執行的就是這個,而你自己寫的根本沒有執行。

    因為你自己寫了乙個函式,所以相當於庫函式的過載,如果引數型別和名稱的數量相同,則為重寫。 第乙個程式被重寫,執行您自己的程式,第二個過載,執行匹配的引數型別和編號。

    對於函式過載,您可以查詢教科書。 他們也有很多。

  4. 匿名使用者2024-01-29

    二顯然是錯的,結果只能說位址2的內容是3,位址是3內容是 2

  5. 匿名使用者2024-01-28

    temp=a*;

    a*=b*;

    b*=temp;

    什麼是a* b*? 是的,*a *b 是好與否,a 和 b 是指標,* 運算子應放在指標前面,參見:

    更深入地了解 C 指標的奧秘。

  6. 匿名使用者2024-01-27

    它不應該是 a*,它應該是 *a,下面的 i* 和 j* 應該替換為 *i *j

  7. 匿名使用者2024-01-26

    #include

    void exchange(int* a,int* b)int main()

    房東明白了! 如果你不明白,我會幫你回答。

  8. 匿名使用者2024-01-25

    c 語言?

    只需編寫乙個函式,viod exchange(a,b)。

  9. 匿名使用者2024-01-24

    大概邏輯是。

    建立乙個臨時變數。

    1.將 a 的值賦值給臨時變數。

    2.將 b 的值賦值給 a

    3.將臨時變數的值賦值給 b

  10. 匿名使用者2024-01-23

    #include ""void main() 我的是 C 語言,你試試吧。

  11. 匿名使用者2024-01-22

    問題 1:程式 Ex;

    vara,b,c:integer;

    beginreadln(a);

    readln(b);

    c:=a;a:=b;

    b:=c;writeln(a,' ',b);

    end.問題 2:程式 Ex;

    vara,b:integer;

    beginreadln(a);

    readln(b);

    a:=a-b;

    b:=a+b;

    a:=b-a;

    writeln(a,' ',b);

    end.收養我。

相關回答
5個回答2024-08-20

你的函式錯了,(int a, int b)是乙個值傳遞引數,它對引數本身沒有影響,返回a,b; 這是我第一次看到這種想法。 應使用指標引數或引用引數。 >>>More

10個回答2024-08-20

預設情況下,C 語言返回 i 整數值,但最好不要省略返回值型別,因為該型別不可讀,以後使用時會引發錯誤。 >>>More

7個回答2024-08-20

刪除 accept(inum1,inum2) 函式並將其直接寫入 main()。 >>>More

5個回答2024-08-20

這涉及職能的正式參與。

函式體內部的操作只能更改表單引數,而不能更改實際引數。 >>>More

21個回答2024-08-20

通過多執行緒處理,您可以實現所需的目標。