91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c語言字符串數組如何排序

小億
140
2024-02-01 11:33:48
欄目: 編程語言

c語言中可以通過使用庫函數qsort()來對字符串數組進行排序。

qsort()函數原型為:

void qsort(void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *));

其中,base為待排序數組的起始地址,nmemb為待排序數組的元素個數,size為每個元素的大小,compar為比較函數的指針。

比較函數的原型為:

int compar(const void *a, const void *b);

其中,ab為指向待比較元素的指針,比較函數應返回一個整數值:

  • 若返回值小于0,則a應排在b之前;
  • 若返回值大于0,則a應排在b之后;
  • 若返回值等于0,則ab的相對順序不變。

下面是一個示例代碼,演示如何使用qsort()函數對字符串數組進行排序:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int compare(const void *a, const void *b) {
    return strcmp(*(char **)a, *(char **)b);
}

int main() {
    char *array[] = {"apple", "banana", "orange", "grape", "lemon"};
    int length = sizeof(array) / sizeof(array[0]);

    qsort(array, length, sizeof(array[0]), compare);

    for (int i = 0; i < length; i++) {
        printf("%s\n", array[i]);
    }

    return 0;
}

輸出結果為:

apple
banana
grape
lemon
orange

該示例中,字符串數組array中存儲了5個字符串,通過調用qsort()函數對其進行排序,排序結果按照字母順序排列。

0
亚东县| 三江| 湘西| 阿拉善盟| 资源县| 阿拉善左旗| 赤峰市| 高雄县| 道孚县| 安福县| 兴文县| 安达市| 焦作市| 广南县| 斗六市| 平罗县| 沁源县| 崇礼县| 永康市| 泗阳县| 于都县| 芜湖市| 丹东市| 南投县| 独山县| 临朐县| 盐边县| 乐陵市| 朝阳县| 凭祥市| 穆棱市| 台中县| 枣庄市| 米泉市| 卓资县| 勐海县| 黎城县| 乐平市| 庆城县| 深泽县| 湖口县|