|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
【问题描述】
编写一个函数del(s),将输入的字符串s中重复出现的字符删除,只保留最后出现的字符,要求大小写无关(即'A'与'a'视为相同字符)。在main()函数中测试此函数:从键盘输入一个字符串,然后调用该函数进行删除重复字符串操作,将结果打印到屏幕上。
【输入形式】
从键盘输入一个字符串。
【输出形式】
在屏幕上输出删除重复字符以后的字符串。
【输入样例】
AbCdaAbcdEeF
【输出样例】
AbcdeF
【样例说明】
由于要求大小写无关,将字符串"AbCdaAbcdEeF"删除重复出现的字符,只保留最后出现的字符后的结果是"AbcdeF",故打印输出:AbcdeF
#include <stdio.h>
#include <string.h>
#include <ctype.h>
void del(char s[])
{
int i,j,k;
int l=strlen(s);
for (i=0;i<l;i++)
{
for (j=i+1;j<l;j++)
{
if (s[j]==s[i])
{
for (k=j;k<l-1;k++)
{
s[k]=s[k+1];
}
s[l-1]='\0';
l--;
j--;
}
}
}
}
int main()
{
char s[100];
scanf("%s",s);
del(s);
printf("%s\n",s);
return 0;
}
为什么不对啊 求大神帮忙!!!! |
|