(1)有 1、2、3 、4 个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
(2)给定一个正整数,给出消除重复数字以后最大的整数。
输入示例:423234
输出示例:432
void Three(){
for(int i = 1;i <= 4; i++){
for(int j = 1; j <= 4;j++){
for(int k = 1; k <= 4;k++){
if(i != j && j != k && i != k){
int num = i+j*10+k*100;
printf("%d ",num);
}
}
}
}
}
void getMaxNumber(char *str){
int num[10] = {0};
for(int i = 0;i<strlen(str);++i)
num[str[i] - '0'] = 1; //将给定数组的字符值改变为数字值,相同字符转化后都是同一个num数组的下标,也起到去重的作用
for(int j =9 ;j>=1;--j)
if(num[j] == 1)
printf("%d",j);
}
(感谢西交无尽学长提供以上题目练习)