C言語プログラミング——回数ソート--構造体配列及びバブルソート法

4279 ワード

タイトル:キーボードから文字列を大量に入力し、A、B、C、Dの出現回数を統計し、最後の出現回数は高から低出力アルファベットと出現回数である.
#include 
#include 

//          
int jiShu(char test[], char a)
{
    //      
    int n = 0;
    //      
    for (int i = 0; i<strlen(test); i++) {
        //         a,n 1
        if (test[i] == a) {
            n++;
        }
    }
    return n;

}

int main(int argc, const char * argv[]) {
    //       ,     
    printf("        :
"
); char input[1000]; scanf("%[^
]"
, &input); // A int a = jiShu(input, 'A'); // B int b = jiShu(input, 'B'); // C int c = jiShu(input, 'C'); // D int d = jiShu(input, 'D'); // struct test{ // int n; // char c; } array[4] = {{a, 'A'}, {b, 'B'}, {c, 'C'}, {d, 'D'}}; // struct test temp; // for (int i = 0; i<3; i++) { for (int j = 0; j<3-i; j++) { if (array[j].n < array[j+1].n) { temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } } } // for (int i = 0; i<4; i++) { printf("%c %d
"
, array[i].c, array[i].n); } return 0; }