其中把数字的各个位的数提取出来,因此输出之后已经是反序,因为输出的位数肯定是0-9的数字,标记数组a都赋值为零,当一个数字输出之后赋值为1,在if中添加标记一项,为0即没出现,不重复,则输出,否则不进行输出。

#include using namespace std;

int main() { int num; cin>>num; int a[10]={0};

while(num>0)
{
    int t= num%10;
    num=num/10;
    if(a[t]==0)
    {
        cout<<t;
        a[t]=1;
    }
}

}