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; }