规定输入的字符串中只包含字母和*号.

请编写函数fun2,它的功能是:将字符串中的前导*号和尾部的*号全部删除,中间*号不删除。
例如,字符串中的内容为:*******A*BC*DEF*G****,删除后,字符串中的内容应当是:A*BC*DEF*G。
主函数中:输入原始字符串,调用fun2,并将结果输出。

char st[81];
int i=0,j=0;
int last,len=0;

while(a[len]!='\0')
{
len++;
}
/*求字符串的长度*/

while(a[i]=='*')
{
st[j]='*';
i++;
j++;
}
/*过滤开头的**/

last=len-1;
while(a[last]=='*')
last--;
/*定位最后一个不是*的字母*/

/*删除中间的*号*/
while(i<last)
{
while(a[i]!='*')
{
st[j]=a[i];
i++;
j++;
}
while(a[i]=='*')
{
i++;
}
}

/*将字符串a最后的*号拷贝到st*/
while(i<len)
{
st[j]=a[i];
i++;
j++;
}
st[j]='\0';

/*将字符串st拷贝到a*/
i=0;
while(i<=j)
{
a[i]=st[i];
i++;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-10-05
希望我的回答对你有帮助哈,可以的话记得采纳哈,测试过啦,什么情况都可以,还是给分吧,呵呵
#include"stdio.h"
#include"string.h"
void
main()
{
int
i,j,n;
char
s[100];
printf("请输入字符串:");
gets(s);
n=strlen(s);
for(i=0;i
评论
0
0
加载更多
相似回答