輸入三個字串並按字母順序排序後輸出 C 語言

發布 科技 2024-02-13
5個回答
  1. 匿名使用者2024-02-06

    if(strcmp(*n[i],*n[j]))temp=n[i]; n[i]=n[j]; n[j]=temp;

    這就是問題所在。

    strcmp 返回值是大小,但使用 if(strcmp(*n[i],*n[j]))。

    只會檢查是否等於 0,如果不等於 0,則稍後執行。

    所以它應該是 if(strcmp(*n[i],*n[j])<0)

    strcmp太長了忘不了,如果不行就改“0試”,不知道是“還是<

  2. 匿名使用者2024-02-05

    問題在於,在你的 ex() 函式中,排序演算法用來傳遞位址,而不是特定值,所以跳出 ex() 函式後,所有本地操作都是無效的。

    char *temp 到 char temp;

    temp=n[i]; n[i]=n[j]; n[j]=temp;更改為 temp=*n[i]; n[i]=*n[j]; n[j]=temp;應該沒問題。

  3. 匿名使用者2024-02-04

    具體步驟如下:1定義乙個由五個字串組成的陣列,用於儲存需要排序的字串。

    2.使用字串處理程式 strcmp() 比較兩個字串的大小。 如果字串 1 小於字串 2,則返回值為負整數; 如果字串 1 大於字串 2,則返回值為正整數; 如果兩個字串相等,則返回值為 建立巢狀迴圈,比較兩個字串中每個字串的大小,並將字串從小到大排序。

    4.輸出 5 個排序字串。 下面是乙個實現示例:

    c#include #include int main() printf("排序後的字串為:");for (i = 0; i < 5; +i) puts(str[i]);輸出五串後銷毀後,褲子引線分揀返回0; 請注意,gets() 和 puts() 函式分別用於匯入和輸出字串。 這是因為 gets() 可以輸入包含空格的字串,而 puts() 會自動在輸出字串的末尾新增換行符。

    同樣是純拾取,使用 strcmp() 函式進行比較時,字串更大。

    請注意將其放在 if 語句中,以滿足按英文字元順序從小到大排序的要求。 希望這個答案對您有所幫助。 如果您仍有任何疑問或需要進一步的幫助,請隨時繼續諮詢洞穴。

    你可以打敗完整的**。

    整隻鴨子。 你整理一下。

  4. 匿名使用者2024-02-03

    看看這個**。

    希望對你有所幫助。

  5. 匿名使用者2024-02-02

    按字典順序輸出一組字串的來源如下:

    #include

    int main ()

    char name[40] ;宣告乙個名為 name 的儲存空間,陣列中的元素數為 40

    printf("what is your name ?");轉換說明字元 n 換行符。

    scanf("%s,name");使用表示輸入字串的轉換修飾符 %s 輸入字串。

    printf("hello,%s.",name);輸出字串。

    return 0;

相關回答
6個回答2024-02-13

xiá ōu tíng

海鷗亭。 >>>More

28個回答2024-02-13

小學直接說就好了,不然以後沒說就後悔了。 >>>More

12個回答2024-02-13

<>三個字前面沒有“bud”字樣的字詞。

簡體部首: 艹 , 外筆畫: 4 , 總筆畫: 7 定義. 植物的幼蟲可以發育成莖、葉或花的一部分:頭髮。 嫩。 年輕。 >>>More

11個回答2024-02-13

茝 aahh chai3

1)古籍中所說的一種草藥。 >>>More

8個回答2024-02-13

題詞後有《蘇山寺》《北嶽寺》。