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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 柏麟 中级黑马   /  2016-4-19 13:42  /  1364 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int main(int argc, const char * argv[]) {
    //1.实现输入
    char str[100] = {0};
    printf("请输入字符");
    gets(str);
    //2.实现计数
    //  定义一个数组,记录ABCD出现的次数
    int times[4] = {0};
   
    for (int i = 0 ; i < strlen(str); i++)
    {
        char c = str[i];
        if (c=='A')
        {
            times[0]++;
        }
        else if(c=='B')
        {
            times[1]++;
        }
        else if(c=='C')
        {
            times[2]++;
        }
        else if(c=='D')
        {
            times[3]++;
        }
    }
    int jiaoBiao[4] = {0,1,2,3};
    int temp = -1;
    for (int i = 0; i < 3; i++) {
        for (int j = 0 ; j < 3-i; j++) {
            if (times[j] < times[j+1]) {
                temp = times[j];
                times[j] = times[j+1];
                times[j+1] = temp;
               
                temp = jiaoBiao[j];
                jiaoBiao[j] = jiaoBiao[j+1];
                jiaoBiao[j+1] = temp;
            }
        }
    }
    for (int i = 0; i<4; i++)
    {
        printf("%c出现了%d次\n",jiaoBiao[i]+65,times[i]);

    }
   
   
    return 0;
}

8 个回复

倒序浏览
哇塞,感觉好高级的样子!
回复 使用道具 举报
tennco 发表于 2016-4-19 13:50
哇塞,感觉好高级的样子!

你学你也会!!
回复 使用道具 举报
牛 牛 牛
回复 使用道具 举报

谢谢啦!!
回复 使用道具 举报
用数组记录次数,这点想法比我想的好,学习了
回复 使用道具 举报
来看看,学习了
回复 使用道具 举报
可以的兄弟
回复 使用道具 举报
  
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马