C语言填空题,编写一个程序,输入一个字符串,按字符顺序由小到大排序,并删除重复的字符。答对就采纳!

如题所述

第1个回答  2015-01-12
#include "stdio.h"
#include "string.h"
int main()
{char str[100],*p,*q,*r,c;
gets(str);
for(p=str;*p;p++) //改后
{ for(q=r=p;*q;q++)
if(*r>*q) r=q;
if(*r!=*p) //改后
{c=*r; //改后
*r=*p;
*p=c;
}

}
for(p=str;*p;p++)
{ for(q=p;*p==*q;q++);
strcpy(p+1,q);

}
printf("结果为%s\n",str);
}本回答被提问者采纳
第2个回答  2015-01-12
这道题是在FOUND下面打错误进行更改,而且每一处只能改动一次,不能多。
第一处改成:for(p=str;*p;p++)就是将p改成*p。
第二处改成:if(r!=p)就是将原来的等改成非等。
第三处改成:c=*r;就是r改成*r。
第3个回答  2015-01-12

第4个回答  2015-01-12
不会
相似回答