A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 huanglinwang 于 2016-5-22 21:42 编辑


//  输入一个字符串统计abc出现的次数,按照高到低的顺序输出
//利用函数调用实现
#include <stdio.h>


int countA = 0 ,countB = 0,countC = 0,countD = 0;

void abcdPaiXu();

void abcdCiShu(char ch[]);

int main(int argc, const char * argv[]) {

    //定义一个字符数组   --累加器
    char c[100] = {' '};
    //提示用户输入一个字符串
    printf("请输入一个字符串用空格结束\n");
    //接收字符串
    scanf("%s",c);
    //求出字符串中abcd的数量
    abcdCiShu(c);
    //abcd的数量进行排序
    abcdPaiXu(countA, countB, countC, countD);
    return 0;
}


/**
*  将一个字符串中的abcd字母统计有多少个
*
*  @param ch 字符串
*/
void abcdCiShu(char ch[]){
    for (int i = 0; i < 100; i++) {

        //这里利用switch进行判断
        switch (ch) {
            case 'a':
            case 'A':
                countA++;
                break;
            case 'b':
            case 'B':
                countB++;
                break;
            case 'C':
            case 'c':
                countC++;
                break;
            case 'D':
            case 'd':
                countD++;
                break;
            default:
                break;
        }
    }
    //    //先不进行判断次数的多少,直接输出
    //    printf("a出现了%d次\n",countA);
    //    printf("b出现了%d次\n",countB);
    //    printf("c出现了%d次\n",countC);
    //    printf("d出现了%d次\n",countD);
}
/**
*  给四个int类型的值,然后对应abcd   进行排序输出
*
*  @param a1 a对应的数量
*  @param b1 b对应的数量
*  @param c1 c对应的数量
*  @param d1 d对应的数量
*/
void abcdPaiXu(int a1,int b1,int c1,int d1){

    int a[4] = {a1,b1,c1,d1};
    char c[4] = {'a','b','c','d'};

    for (int i = 0; i <4; i++) {
        for (int j = 0 ; j < 3;  j++) {
            if (a[j] < a[j+1]) {
                char ch;
                ch = a[j];
                a[j]= a[j+1];
                a[j+1] = ch;
                int b;
                b = a[j];
                a[j] = a[j+1];
                a[j+1] = b;
            }
        }
    }
    for (int i = 0; i<4; i++) {
        printf("%c = %d\n",c,a);
    }
}










1 个回复

正序浏览
好厉害好厉害好厉害
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马