C语言字符串快速压缩算法代码

通过键盘输入一串小写字母(a~z)组成的字符串。

请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。

压缩规则:

1、仅压缩连续重复出现的字符。比如字符串”abcbc”由于无连续重复字符,压缩后的字符串还是”abcbc”。

2、压缩字段的格式为”字符重复的次数+字符”。例如:字符串”xxxyyyyyyz”压缩后就成为”3x6yz”。

示例

输入:“cccddecc” 输出:“3c2de2c”

输入:“adef” 输出:“adef”

输入:“pppppppp” 输出:“8p”

主要说来就是进行字符串处理类的问题,主要涉及到:

1.字符串的输入与输出;

2.基本常用的C语言的字符串的函数使用;

3.对于多重情况的考虑;

4.将数字转换成字符串并进行拼接;

#include

#include

#include

int main()

{

char str[100] = {'\0'};

char res[100] = {'\0'};

scanf("%s",str);

int length = strlen(str);

int i=0, j=0, k=0;

int count = 0;

do

{

if(i < length && str[i++] == str[j])

count++;

if(str[i] != str[j])

{

if(count <= 1)

res[k++] = str[j];

else

{

if(count > 1)

{

char temp[10] = {'\0'};

itoa(count,temp,10);

strcpy(res+k,temp);

k+=strlen(temp);

res[k++] = str[j];

}

}

j = i;

count = 0;

}

}while(i

res[k] = '\0';

printf("The result is : %s\n",res);

return 0;

}

以上就是本文给大家分享的字符串压缩算法的全部内容了,希望对大家学习C语言能够有所帮助。相关阅读:

Win10默认收集大量隐私 隐私设置需要立即更改 附阻断教程

Build2016关于Win10 Redstone的完全揭秘 win10.1 win11即将面世

初识ThinkPHP控制器

ios百度地图的使用(普通定位、反地理编码)

详解JavaScript中this关键字的用法

Chrome扩展页面动态绑定JS事件提示错误

浅谈JSON和JSONP区别及jQuery的ajax jsonp的使用

PHP实现基于文本的摩斯电码生成器

javascript日期处理函数,性能优化批处理

基于jQuery实现文本框缩放以及上下移动功能

Android Studio导入第三方类库的方法

ajax基本通用代码示例

IOS实现验证码倒计时功能(一)

你可能不知道的 一大波 Linux 网络工具

c语言怎么表示小写字母a到z,C++_C语言字符串快速压缩算法代码,通过键盘输入一串小写字母(a~z - phpStudy...相关推荐

  1. C语言字母的压缩,C语言字符串快速压缩算法代码

    C语言字符串快速压缩算法代码 大家知道C语言字符串快速压缩算法是怎么样的吗?下面小编为大家整理了C语言字符串快速压缩算法代码,希望能帮到大家! 通过键盘输入一串小写字母(a~z)组成的字符串. 请编写 ...

  2. 通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。

    压缩规则: 1.仅压缩连续重复出现的字符.比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc". 2.压缩字段的格式为"字符重 ...

  3. 键盘输入一串英文字母,统计每个英文字母的个数,并且输出个数

    以下是题目: 程序思路:   分为三部分 首先输入字符串 ,其次设定一个字符数组英文小写字母24, 同时设一个int数组 记录个数, 以及一个int c 为了给int数组赋值.最后在输入的时候进行判断 ...

  4. 汇编“从键盘输入一串字符,分别统计其中字母、数字和其

    '从键盘输入一串字符,分别统计其中字母.数字和其他字符的个数,并输出显示." 不知道哪里错了.请帮忙看一下,谢谢 DATA SEGMENT STR2 DB 'abcd543@' LEN EQ ...

  5. C语言怎么才能让末尾没有多余的空格_C语言干货分享

    各位DUTer们,全国计算机等级考试不久将至,不知各位同学复习得怎么样了?面对计算机二级C语言的程序操作题是不是无从下手啊?大家不要慌,我们在这里给大家准备了满满的干货.相信DUT们在家里看完一定会收 ...

  6. c语言精品课程网站论文免费下载,【毕业论文_c语言程序设计精品课程网站的研究与实现6喜欢就下吧材料】...

    毕业论文_c语言程序设计精品课程网站的研究与实现(6)(喜欢就下吧) <毕业论文_<c语言程序设计>精品课程网站的研究与实现.doc>由会员分享,可免费在线阅读全文,更多与&l ...

  7. 经典例题:编写一个程序,从键盘输入一串字符,统计这串字符中英文字母、数字、其他字符号的字符数。

    思路 既然要键盘输入,那么可以通过Scanner类来实现,首先定义四个变量分别记录下字母个数的变量.数字个数.其他字符和空格个数.因为要操作字符串,可以把字符串String类型转换成char字节数组类 ...

  8. python字母金字塔代码_python实现输入任意一个大写字母生成金字塔的示例

    输入任意一个大写字母,生成金字塔图形def GoldTa(input): L = [chr(i) for i in range(65, 91)] # 大写字母A--Z idA = 65 # 从A开始 ...

  9. c语言输入数字字母个数字是什么意思,请问这个用c怎么做:输入一串字符,分别统计其中数字和字母的个数...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include main() { int acount=0,bcount=0,ccount=0,dcount=0; char a; printf(&qu ...

最新文章

  1. python下载地址-python下载网址
  2. 神策数据易向文:打造券商上层数据应用的坚实基础
  3. jdbctemplate mysql 分页查询 返回list对象_spring jdbctemplate调用存储过程,返回list对象...
  4. 常用的正则表达式---学习笔记(一)
  5. 转——idapython import site failed
  6. LeetCode--171--Excel表列序号
  7. 数据结构期末复习(に)--链式栈定义及使用
  8. java常规普氏分析法_人脸对齐:Procrustes analysis 普氏分析
  9. python入门-Python入门之类(class)
  10. JSP三大指令、七大动作、九大对象
  11. 我的第一次随笔——胡桂玲
  12. PPT如何压缩?PPT文件压缩的方法有哪些
  13. 英语听力学习-VOA
  14. java实现微信定时发送消息
  15. 第二周Java学习总结
  16. douyin视频下载,搜索用户,粉丝,评论接口、API接口
  17. C语言---集合---合取-析取-异或-条件语句-双条件语句
  18. 【Numpy】多维度切片截取
  19. VS2013 EF6连接MySQL步骤
  20. WordPress建站教程 从零开始服务器搭建网站超详细

热门文章

  1. 富士康的一些真实情况
  2. linux 2和文件2列合并,Linux按列合并两文件,列的拼合 (zhuan)
  3. C++volatile关键字
  4. 《C++入门经典(第5版•修订版)》——2.7 作业
  5. 网御星云御云成果展 促进云计算落地
  6. IEEE诞生首位华人主席,马里兰大学终身教授刘国瑞高票当选-1
  7. html中怎么打出来空格
  8. Hexo(sakura)添加live2d看板动画(可对话,换装互动)
  9. java培训达内学费
  10. Python进阶之Scrapy利用ImagesPipeline抓取汽车之家宝马5系缩略图