鱼C论坛

 找回密码
 立即注册
查看: 2392|回复: 2

C语飞19课谁可以用数组做出来

[复制链接]
发表于 2018-6-3 12:34:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
这道题,有人可以不用答案方式,做出来吗?可以用二维数组
微信截图_20180603123322.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-6-3 15:38:52 | 显示全部楼层
我没有用二维数组,你说的是可以用,不是必须用 ^_^
#include <stdio.h>
#include <string.h>

#define CHAR_MAX 126

int main(void)
{
        char buf[100];
        int char_tab[CHAR_MAX] = {0};

        printf("请输入英文文本: ");
        fgets(buf, 100, stdin);
        buf[strlen(buf) - 1] = '\0';                // 去掉 '\n'

        for(int i = 0; buf[i] != '\0'; ++i)
        {
                ++char_tab[buf[i]];
        }

        int char_count = 0;
        for(int i = 0; i < CHAR_MAX; ++i)
        {
                if(char_tab[i] != 0)
                        ++char_count;
        }
        printf("你总共输入了%d个字符,其中不同的字符个数有%d个\n", strlen(buf), char_count);
        printf("它们是: ");
        for(int i = 0; i < CHAR_MAX; ++i)
        {
                if(char_tab[i] != 0)
                        fputc(i, stdout);
        }
        printf("\n");

        int max_count = char_tab[0];
        char ch = 0;
        for(int i = 0; i < CHAR_MAX; ++i)
        {
                if(max_count < char_tab[i])
                {
                        max_count = char_tab[i];
                        ch = i;
                }
        }
        printf("出现次数最多的字符是'%c',它总共出现了%d次\n", ch, max_count);

        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-6-3 17:27:42 | 显示全部楼层
人造人 发表于 2018-6-3 15:38
我没有用二维数组,你说的是可以用,不是必须用 ^_^

谢谢老师,太感谢了厉害
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-29 22:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表