【C语言蓝桥杯每日一题】—— 单词分析

简介: 题目描述小蓝正在学习一门神奇的语言,这门语言中的单词都是由小写英文字母组 成,有些单词很长,远远超过正常英文单词的长度。小蓝学了很长时间也记不住一些单词,他准备不再完全记忆这些单词,而是根据单词中哪个字母出现得最多来分辨单词。现在,请你帮助小蓝,给了一个单词后,帮助他找到出现最多的字母和这 个字母出现的次数。输入描述输入一行包含一个单词,单词只由小写英文字母组成。对于所有的评测用例,输入的单词长度不超过 1000。输出描述输出两行,第一行包含一个英文字母,表示单词中出现得最多的字母是哪 个。如果有多个字母出现的次数相等,输出字典序最小的那个。

微信图片_20230427214238.gif

😎博客昵称:博客小梦

😊最喜欢的座右铭:全神贯注的上吧!!!

😊作者简介:一名热爱C/C++,算法等技术、喜爱运动、热爱K歌、敢于追梦的小博主!

😘博主小留言:哈喽!😄各位CSDN的uu们,我是你的博客好友小梦,希望我的文章可以给您带来一定的帮助,话不多说,文章推上!欢迎大家在评论区唠嗑指正,觉得好的话别忘了一键三连哦!😘

微信图片_20230427160707.gif


前言🙌


   哈喽各位友友们😊,我今天又学到了很多有趣的知识,现在迫不及待的想和大家分享一下!😘我仅已此文,和大家分享【蓝桥杯每日一题】—— 单词分析~这里利用了数组指针的方法知识, 都是精华内容,可不要错过哟!!!😍😍😍


单词分析🙌


题目描述


小蓝正在学习一门神奇的语言,这门语言中的单词都是由小写英文字母组 成,有些单词很长,远远超过正常英文单词的长度。小蓝学了很长时间也记不住一些单词,他准备不再完全记忆这些单词,而是根据单词中哪个字母出现得最多来分辨单词。

现在,请你帮助小蓝,给了一个单词后,帮助他找到出现最多的字母和这 个字母出现的次数。


输入描述

输入一行包含一个单词,单词只由小写英文字母组成。

对于所有的评测用例,输入的单词长度不超过 1000。


输出描述

输出两行,第一行包含一个英文字母,表示单词中出现得最多的字母是哪 个。如果有多个字母出现的次数相等,输出字典序最小的那个。

第二行包含一个整数,表示出现得最多的那个字母在单词中出现的次数。

微信图片_20230428145222.png


解题思路分析: 😍


  • 首先认真读题,然后分析,寻找最优解。
  • 首先,我们先创建一个数组,其实就是一个用来统计26个字母出现次数的数组。让数组下标0~25 对应 a 到 z 。
  • 循环输入字母,出现一次就让对应的数组元素加1。 遇到回车键‘\n’就停止。
  • 然后循环26次,将数组中的对应元素值(出现次数)进行比较。将max赋值为 i 。
  • 然后就可以输出对应最大出现次数和对应的字母啦。
  • 这里用到了Ascall码值和其对应关系相关知识,从而实现数字和字母的相加减的转化。


解题源码分享: 😍


#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
  int count[26] = {0};
  int max = 0;
  char ch;
  while((ch = getchar()) != '\n')
  {
    count[ch -'a']++;
  }
  int i = 0;
  for(i = 1;i < 26; i++)
  {
    if(count[i] > count[max])
    max = i;
  }
  printf("%c\n%d", max +'a',count[max]);
  return 0;
}


程序输出结果验证: 😊


微信图片_20230428145421.png


总结撒花💞


   本篇文章旨在分享【C语言蓝桥杯每日一题】—— 单词分析。希望大家通过阅读此文有所收获!😘如果我写的有什么不好之处,请在文章下方给出你宝贵的意见😊。如果觉得我写的好的话请点个赞赞和关注哦~😘😘😘



相关文章
|
2月前
|
人工智能 BI C语言
C语言----------最后一个单词的大小
C语言----------最后一个单词的大小
18 0
|
4月前
|
存储 XML JSON
【C语言-通讯录的分析与实现】
我们以手机里面的通讯录为例,说明通讯录主要有以下什么功能,我们先用一张简单的图来说明一下
23 0
|
5月前
|
程序员 C语言 C++
C语言操作符if语句好习惯 详解分析操作符(详解4)
C语言操作符if语句好习惯 详解分析操作符(详解4)
|
5月前
|
编译器 Linux C语言
函数栈帧的创建和销毁(以C语言代码为例,汇编代码的角度分析)(上)
函数栈帧的创建和销毁(以C语言代码为例,汇编代码的角度分析)
|
7月前
|
Serverless C语言 C++
【数学建模】利用C语言来实现 太阳赤纬 太阳高度角 太阳方位角 计算和求解分析 树木树冠阴影面积与种植间距的编程计算分析研究
【数学建模】利用C语言来实现 太阳赤纬 太阳高度角 太阳方位角 计算和求解分析 树木树冠阴影面积与种植间距的编程计算分析研究
113 1
|
2月前
|
小程序 C语言
【C语言】输入一个十进制正整数,将它对应的二进制数的各位逆序,形成新的十进制数输出。题目分析及拓展应用。
【C语言】输入一个十进制正整数,将它对应的二进制数的各位逆序,形成新的十进制数输出。题目分析及拓展应用。
35 0
|
4月前
|
存储 分布式数据库 数据库
C语言 B树的分析与实现
本文主要说明了B树的概念、应用以及如何用C语言实现B树。
26 1
|
4月前
|
算法 Java 应用服务中间件
C语言 红黑树分析与实现
红黑树的资料网上资料很多,对红黑树的定义、性质、以及操作都做了详细的分析,这篇博文也参考了网上的部分文章,不过主要是学习了腾讯课堂-零声king老师的课之后,对红黑树的一些理解。肯定有一些错误的地方,如果觉得不对,可以给我指出
36 0
|
9月前
|
算法 C语言
【零钱问题】C语言贪心算法分析(文末彩蛋)
【零钱问题】C语言贪心算法分析(文末彩蛋)
107 0
|
10月前
|
编译器 C语言
C语言:将一句话的单词进行倒置,标点不倒置。
总体思路: (可以把两步顺序调换) 第一步: 把 整个字符串 逆序 (知道 整个字符串 的首尾地址后,一对一对向整个字符串中间靠拢交换)