PTA 删除重复字符

7-10 删除重复字符
本题要求编写程序,将给定字符串去掉重复的字符后,按照字符ASCII码顺序从小到大排序后输出。

输入格式:
输入是一个以回车结束的非空字符串(少于80个字符)。

输出格式:
输出去重排序后的结果字符串。

输入样例:

ad2f3adjfeainzzzv

输出样例:

23adefijnvz

这题本来很简单,但我一时被比较ASCII码给搞蒙了,但一想,计算机对于字母的比较不就是直接比它的ASCII码吗?这才反应过来!
解题代码

#include<stdio.h>
#include<string.h>

int main()
{
    
    
	char a[81];
	gets(a);
    //scanf("%s",a);
	int i,j,l=strlen(a);
	char t;//注意不要习惯性的写成了 int t;
	for(i=0;i<l-1;i++)
	 for(j=0;j<l-1;j++)
	 {
    
    
	 	if(a[j]>a[j+1])
	 	{
    
    
	 		t=a[j];
	 		a[j]=a[j+1];
	 		a[j+1]=t;
		  } 
	 }
	 for(i=0;i<l;i++)
	 {
    
    
	 	if(a[i]!=a[i+1]) printf("%c",a[i]);
	 }
	 return 0;
 } 

欢迎大佬指教,有不懂的小可爱可以私信q2651877067,很高兴为你解答QwQ!!!

猜你喜欢

转载自blog.csdn.net/mmmjtt/article/details/114368855
PTA