题面:输入:一个不超过八位的正整数
输出:将这个正整数逆序输出,最前面不得有0,并输出该正整数由多少个不同的数字组成
ex:(1)
input: 12333000
output: 33321 3
没有别的意思,我都不知道考试时候在干嘛,明明三分钟可以写完的题目,硬是写了快半个小时没有写出来,功力严重不足,以此警示后人
#include<stdio.h>
#include<string.h>
int main(){
int n, sum = 0;
int num[123], cnt=0, temp;
memset(num, 0 ,sizeof(num));
scanf("%d", &n);
if(n<0) n *= -1;
while(n>0){
sum *= 10;
sum +=(n%10);
n /= 10;
}
printf("%d", sum);
while(sum>0){
int flag = 0;
temp = sum%10;
sum /= 10;
for(int i=0; i<=cnt; i++)
if(num[i] == temp)
flag = 1;
if(!flag) num[cnt++] = temp;
}
printf(" %d", cnt);
return 0;
}