题目要求:

输入一串字符(字符数小于80),以回车表示输入结束,编程计算并输出这串字符中连续重复次数最多的字符和重复次数。如果重复次数最多的字符有两个,则输出最后出现的那一个。

已知函数原型:

//函数功能:统计字符串中连续重复次数最多的字符及其重复的次数

//函数参数:str指向待统计的字符串,指针形参tag返回重复字符最后出现的下标位置

//函数返回值:返回字符重复的次数

int CountRepeatStr(char str[], int *tag);

求解思路:设置一个计数器,遍历字符串中的所有字符,若str[i] == str[i+1],则计数器加1,同时判断计数器的值是否大于记录的最大重复次数max,若大于,则用计数器的值更新max,并记录该字符最后出现的位置i+1.若str[i] != str[i+1],则计数器重新初始化为1。遍历结束时,函数返回max的值。

---------------------------------------------------------------------------------------------------------------------------------代码:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int CountRepeatStr(char str[], int* tag);

int main()
{
    printf("Input a string:\n");
    char ch[100];
    int max = 0;
    int* tag = &max;
    fgets(ch, 100, stdin);
    printf("%c:%d\n", ch[*tag], CountRepeatStr(ch, tag));
    return 0;
}

int CountRepeatStr(char str[], int* tag)
{
    int i = 0, max = 0, num = 1;
    for (i = 0; i < strlen(str); i++)
    {
        
        if (str[i] == str[i + 1])
        {
            num = num + 1;
        }
        else
        {
            num = 1;
        }
        if (num > max)
        {
            *tag = i;
            max = num;
        }
    }
    return max;
}

C语言字符串练习-统计重复字符相关推荐

  1. C语言字符串中删除重复的字符的算法(附完整源码)

    C语言字符串中删除重复的字符的算法 C语言字符串中删除重复的字符的算法完整源码(定义,实现,main函数测试) C语言字符串中删除重复的字符的算法完整源码(定义,实现,main函数测试) #inclu ...

  2. R7-3 统计满足特定条件的字符数​输入字符串A(没有重复字符),输入字符串B,求在字符串A中字符的个数,这些字符必须同时又在字符串B中。提示:用in运算符。输入格式:一行输入字符串A。一行

    输入字符串A(没有重复字符),输入字符串B,求在字符串A中字符的个数,这些字符必须同时又在字符串B中.提示:用in运算符. 输入格式: 一行输入字符串A. 一行输入字符串B. 输出格式: 一行输出字符 ...

  3. java练习: 编程列出一个字符串的全字符组合情况,原始字符串中没有重复字符,例如:

    import java.util.ArrayList; import java.util.Scanner;/*** 7. 编程列出一个字符串的全字符组合情况,原始字符串中没有重复字符,例如:* 原始字 ...

  4. lintcode:Unique Characters 判断字符串是否没有重复字符

    题目: 判断字符串是否没有重复字符 实现一个算法确定字符串中的字符是否均唯一出现 样例 给出"abc",返回 true 给出"aab",返回 false 挑战 ...

  5. python字符串重复_【python】判断一个字符串是否包含重复字符?

    题目:判断一个字符串是否包含重复字符.例如good则包含,abc则不包含. 分析:哈希法. code: (1) strs = 'Good' hashTable = dict() listStrs = ...

  6. C语言 字符串分类统计 输入一行字符,分别统计出其中英文字母、数字、空格和其他字符的个数

    C语言 字符串分类统计 输入一行字符,分别统计出其中英文字母.数字.空格和其他字符的个数 题目: 输入一行字符,分别统计出其中英文字母.数字.空格和其他字符的个数 样例输入: aklsjflj123 ...

  7. Java 从键盘输入一个字符串,统计某个字符的个数

    从键盘输入一个字符串,统计某个字符的个数 例如,从键盘输入"I am a student",统计a出现的次数 字符串转字符数组 字符串.toCharArray(); Scanner ...

  8. C语言 -- 字符串中根据特定字符(串)分割

    版权 C语言字符串操作函数有很多,这里举出需要用到的,其他请自行查找. 1.len = strlen(p) ://取字符串长度 原型:size_t strlen(const char *s);  功能 ...

  9. 【面试题记】删除字符串中相邻重复字符

    问题描述 给定一个字符串,删除相邻重复字符,要求不创建新的字符串. 输入:"abbc" 输出:"abc" 输入:"cccccbbdbbaaaa&quo ...

最新文章

  1. R包dplyr进行数据清洗和整理
  2. 今日机器学习概念:感知机模型
  3. Linux配置keepalived实现nginx高可用安装过程记录
  4. hexo部署至FTP-COS
  5. DoraCMS 源码知识点备注
  6. 使用线性回归的预测建模
  7. maven整合struts: Compilation error org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException
  8. 浅析MSIL中间语言——基础篇
  9. 使用Span T 提高C#代码的性能
  10. 超声波的四个特性_超声波传感器,超声波的特性
  11. 地图不显示_图灵搜不显示地图,软件打开一片空白,怎么解决?
  12. 2021年春季学期期末统一考试电子商务概论(农) 试题
  13. SpringCloud之实现下载Excel模板文件
  14. IOS移动应用跳转微信小程序
  15. html标签blockquote,HTML中的blockquote标签怎么用
  16. mac安装虚拟机配置win10系统
  17. 深度对比Soul、觅伊,两款社交软件区别在哪?
  18. oracle omf管理,论OMF管理文件的重要性
  19. python实现二维码识别_python实现二维码、条形码识别
  20. win10、win11高级共享设置修改后无法保存怎么办,无法发现网络设备、无法发现共享设备怎么办?win10、win11发现网络共享设备的方法

热门文章

  1. 公交车之设计,堵车看模式
  2. mq系列传感器的程序_MQ-7传感器使用说明.pdf
  3. arguments函数
  4. 2022泰晤士世界大学影响力排名发布:复旦大学,内地第一!
  5. MSSQL RAISERROR
  6. 熹妃传服务器更新维护2019年8月28,熹妃传新版本更新爆料 6月28日停服更新
  7. 超实用的6款团队协作交付设计软件
  8. Android 集成facebook授权登录以及过程中登录错误,密钥散列不匹配
  9. OpenCV之imread解析
  10. WIFI基础知识整理