本题要求实现一个字符串压缩的简单函数。压缩规则是:如果某个字符x连续出现n(n>1)次,则将这n个字符x替换为nx的形式;否则保持不变。
函数接口定义:
void zip( char *p );
函数zip对p指向的字符串进行压缩操作。
裁判测试程序样例:
#include <stdio.h> #define MAXS 20 void zip( char *p ); void ReadString( char *s ); /* 由裁判实现,略去不表 */ int main() { char s[MAXS]; ReadString(s); zip(s); printf("%s\n", s); return 0; } /* 请在这里填写答案 */
输入样例:
Mississippi
输出样例:
Mi2si2si2pi

void zip(char*p){
char *a=p;//为方便赋值 定义*a指针拿来进行赋值
int n; //*p指针拿来进行检查
while(*p!='\0'){
n=1;
while(*p==
字符串压缩算法

本文介绍了一个简单的字符串压缩函数实现,该函数能够将连续重复的字符压缩为数字加字符的形式,例如将Mississippi压缩为Mi2si2si2pi。文章提供了完整的C语言实现代码。
最低0.47元/天 解锁文章
1241





