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

Posted 博客小梦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言蓝桥杯每日一题—— 单词分析相关的知识,希望对你有一定的参考价值。

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


   
😎博客昵称:博客小梦
😊最喜欢的座右铭:全神贯注的上吧!!!
😊作者简介:一名热爱C/C++,算法等技术、喜爱运动、热爱K歌、敢于追梦的小博主!

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

前言🙌

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

单词分析🙌

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

解题思路分析: 😍

  • 首先认真读题,然后分析,寻找最优解。
  • 首先,我们先创建一个数组,其实就是一个用来统计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;

程序输出结果验证: 😊

总结撒花💞

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

以上是关于C语言蓝桥杯每日一题—— 单词分析的主要内容,如果未能解决你的问题,请参考以下文章

蓝桥杯C/C++语言每日一题特殊数的和

每日一练蓝桥杯C语言:暴力枚举

第七届蓝桥杯C语言C组-(自己懂的题目)

蓝桥杯c语言b站___哪些课程

蓝桥杯C语言题目

蓝桥杯c语言和java哪个好考