首页 > 代码库 > 武汉科技大学ACM:1003: 华科版C语言程序设计教程(第二版)例题6.6.改编
武汉科技大学ACM:1003: 华科版C语言程序设计教程(第二版)例题6.6.改编
Problem Description
小明明最喜欢学英语了,英语课从来不翘课,但是英语却一直没学好,因为上课一直在睡觉。为什么会睡觉呢,因为他觉得英文单词太长了。现在小明明有一个很长很长很长的单词,想要压缩一下。你能帮助他吗?
压缩:将连续的重复的字母用一个来代替,详情见sample。
Input
先输入一个n,表示小明明给的单词数量(1<= n <= 10086)
接下来n行,每行为一个字符串,长度不大于73,数据保证都是英文字母,不包含其他字符。
Output
输出n行,每行为一个压缩后的新单词。
Sample Input
1abbcccddddeeeeef
Sample Output
abcdef
HINT
注意:读一行,处理一行
可以使用类似下面的结构:
scanf("%d",&n);
getchar();
while(n --)
{
gets(s);
.......
}
后面的题目类似
1 #include<stdio.h> 2 int main() 3 { 4 char s[74]; 5 int n; 6 while(scanf("%d",&n)!=EOF) 7 { 8 for(int k=0;k<n;k++) 9 {10 scanf("%s",s);11 char* p=s;12 13 char buf[100];14 15 char* q = p;16 int i=0;17 for(;*q;)18 {19 if(q==p|| *q != *(q-1))20 {21 buf[i++] = *q;22 }23 q++;24 }25 buf[i] = ‘\0‘; 26 printf("%s\n", buf);27 }28 29 }30 31 32 return 1;33 }
武汉科技大学ACM:1003: 华科版C语言程序设计教程(第二版)例题6.6.改编
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。