#include<stdio.h>
int a[100];
int main()
{
	int i,j,n,t=0,f;
	freopen("random.in","r",stdin);
	freopen("random.out","w",stdout);
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		scanf("%d",&a[i]);
	}
	for (i=1;i<=n;i++)    
        for (j=1;j<=n-i;j++)  
            if (a[j]>a[j+1]) 
            { 
                t=a[j];
                a[j]=a[j+1];
                a[j+1]=t;
            }|||||||||||||||||||||排序
    for(i=1;i<=n;i++)
    {
        for(j=n;j>=1;j--)
        {
        	if(a[i]==a[j]&&i!=j)
        	{
        		for(f=i;f<=n;f++)
        		{
        			a[f]=a[f+1];
        		}
        		n--;|||||||||||去重
        	}
        		
        }
        	
    }
	printf("%d",n);
	printf("\n");
	for(i=1;i<=n;i++)
	   printf("%d ",a[i]);
	return 0;
}
只可意会不可言传 
原文:http://www.cnblogs.com/chenyuliu/p/5815147.html