c小白写了个程序,输入字符串删除相同字符,求教指出错误在那里

c小白写了个程序,输入字符串删除相同字符,求教指出错误在那里

问题描述:

#include
char result(char input,char output);
#include
int main(void)
{
char input[100];
char output[100];
int i;
printf("please write letters:");
scanf("%s",input);
for(i=0;i<strlen(input);i++)
{
output[i]=result(input, output);
printf("%c",output[i]);
}
return 0;
}
char result(char input,char output)
{
int s;
for(s=0;s<strlen(input);s++)
{
if(input[s]=input[s+1])
break;
else
output[s]=input[s];
}
return output[s];
}

错误挺多,先说几个明显的,c风格字符串是数组是一个相对离散的东西,不是一个整体,你要把它当参数整个传进去需要传入他的首地址也就是input,但是你参数是错的,要在后面加上[ ]或者把input前面加上*然后你的意思是删掉相邻且相同的东西?自定义函数break到for外面就直接return掉了,应该去掉break,把if else分支语句和自定义函数以及参数好好看看