输入一个整数,如12336544,或1750,然后从最后一位开始倒过来输出,最后如果是0,则不输出,输出的数字是不带重复数字的,所以上面的输出是456321和571。如果是负数,比如输入-175,输出-571。
#include<stdio.h>
int main()
{
int Num,n[50],a[10]={0},temp,i=0,flag=0;
char c;
scanf("%c",&c);
scanf("%d",&Num);
while(Num>0)
{
temp=Num%10;
if(a[temp]==0)
{
a[temp]=1;
n[i]=temp;
i++;
}
Num/=10;
}
if(c=='-') printf("%c",c);
for(int j=0;j<i; j++)
{
if(n[j] !=0 || flag !=0)
{
printf("%d",n[j]);
flag=1;
}
}
//对应数字的ASCLL码强制类型转换后减去48得到相应的数字
if(c != '-') printf("%d", (int)c-48); return 0;
}