jzoj 2102: 【基础】删除字符串中间的*

                2102: 【基础】删除字符串中间的*

时间限制: 1.000 Sec  内存限制: 32 MB
提交: 4156  解决: 1503
[命题人:][下载数据: 40]

提交状态报告

题目描述

输入一个字符串,将串前和串后的*保留,而将中间的*删除。

输入

一个含*的字符串。

输出

删除了串中的*的字符串。

样例

输入  复制

***ABC123**123*abc***********

输出  复制

***ABC123123abc***********

提示 

题解

#include "stdio.h"

int delSpeCh(char *s)
{
 char *f, *e;
f = e = s;  
 int i, j;

while(*e) 
 e++;
 e--;  
 while(*e == '*') 
 e--;
 while(*f == '*') 
f++;

for (i = 0 , j = 0; &f[i] < e; i++)
 {
 if (f[i] != '*')

 f[j++] = f[i];

}
 for (i = 0; e[i]; i++, j++) 
 f[j] = e[i];
 f[j] = '\0';  

}
int main(int agrc, char *agrv[])
{
char s[100];
gets(s); 
 delSpeCh(s);


puts(s);
return 0;
}

        

你可能感兴趣的:(c++,c++)