用户从键盘输入n个数字,我应该在它们之间找到数字最不相同的数字。
示例:
输入数字:12
输入数字:123
输入数字:5555
数字不同的数字是123(3个不同的数字)。
问题是我不应该使用向量或数组或其他东西。 我应该只使用循环和if子句。我知道如何找到给定数字中的位数,但我应该如何比较所有数字以找到不同数字的数量?
答案 0 :(得分:-2)
最简单的方法是迭代每个可能的数字(0到9)并查看它是否存在。
这样可以确定数字中的唯一数字:
int FindNumberDigits(int number) {
int uniqueDigits=0;
for(int i=0;i<10;++i) {
int numberTemp=number;
while(numberTemp) {
if(numberTemp%10 == i) {
++uniqueDigits;
break;
}
numberTemp/=10;
}
}
return uniqueDigits;
}