中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言字符串中的字符統計與排序

發布時間:2024-08-30 13:03:42 來源:億速云 閱讀:174 作者:小樊 欄目:編程語言

在C語言中,我們可以使用各種方法來統計字符串中的字符數量和對字符進行排序

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

void count_chars(const char *str) {
    int count[256] = {0}; // 初始化一個大小為256的整型數組,用于存儲每個字符的計數

    for (int i = 0; str[i]; i++) {
        count[(unsigned char)str[i]]++; // 逐個字符遞增計數器
    }

    printf("字符統計:\n");
    for (int i = 0; i < 256; i++) {
        if (count[i] > 0) {
            printf("%c: %d\n", i, count[i]);
        }
    }
}

void sort_chars(char *str) {
    int length = strlen(str);
    int count[256] = {0};

    for (int i = 0; i< length; i++) {
        count[(unsigned char)str[i]]++;
    }

    int index = 0;
    for (int i = 0; i < 256; i++) {
        while (count[i] > 0) {
            str[index++] = i;
            count[i]--;
        }
    }
}

int main() {
    char str[] = "Hello, World!";
    printf("原始字符串: %s\n", str);

    count_chars(str);

    sort_chars(str);
    printf("排序后的字符串: %s\n", str);

    return 0;
}

這個程序首先定義了兩個函數:count_charssort_charscount_chars 函數接收一個字符串參數,并統計其中每個字符的出現次數。sort_chars 函數接收一個字符串參數,并按照字符的ASCII值對字符串進行排序。

main 函數中,我們創建了一個字符串 “Hello, World!”,然后分別調用這兩個函數來統計字符數量和對字符串進行排序。注意,這里我們使用了 unsigned char 類型來確保字符的正確處理,因為字符可能是負數(例如,擴展ASCII字符)。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

崇阳县| 寿光市| 友谊县| 遵义市| 三明市| 濉溪县| 会昌县| 太仓市| 台南县| 南充市| 鱼台县| 尚义县| 德化县| 奇台县| 霍山县| 简阳市| 晋州市| 抚顺市| 佛山市| 石嘴山市| 闽侯县| 南漳县| 黎平县| 天津市| 巴彦淖尔市| 泽库县| 元朗区| 米泉市| 岑巩县| 东山县| 丹东市| 延川县| 祁阳县| 洞头县| 桓仁| 改则县| 蕉岭县| 太湖县| 遵化市| 德庆县| 宁城县|