如题,没调用函数就直接输出了,请问是哪里错了呢
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char delete_aim(char *string, char aim);
int main()
{
char str[151], Aim = ' '; //输入字符串和要删除的目标字符
gets(str);
getchar(Aim);
delete_aim(str, Aim); //调用删除函数
printf("%s\n", str); //输出删除后的字符串
system("pause");
return 0;
}
char delete_aim(char *string, char aim)
{
int i, j, len; //len字符串长度,count删除的字符个数
len = strlen(string);
for (i = 0; i < len; i++)
{
if (string[i] == aim) //当第i个字符与目标字符相同时
{
for (j = i; j < len; j++)
{
string[j] = string[j + 1]; //被删除的字符之后的字符依次向前递进一位
}
len --; //字符串长度-1
string[len] = '\0';
}
for(string[i] = aim) //当相邻两个字符均为指定目标字符时,重复删除动作
i--;
}
return string;
}
你调用了自己的删除函数之后返回的值没有被保存下来。
回去电脑上把代码复制给你,现在在外面