一道数字游戏题,找出具有此特性的9位数
我们要找出一个数字,符合以下两个条件:其一:
一个9位的数字,每一位上各有1至9当中的一个数字。也就是说,每一位上的数字不和其它位上的数字重复。
其二:
例如数字 342615987
3 除以 1 可以被整除
34 除以 2 可以被整除
342 除以 3 可以被整除
3426 除以 4 不可以被整除
也就是说,数字 342615987 并不符合我们的条件。
为了方便大家检验,给出答案: 381654729
编程序找出符合上述两个条件的数字。
程序代码:
#include <stdio.h> #include <conio.h> int check(long long n) { int i; char temp[10]={0}; long long z, d, delare=100000000; z=n; for(i=1;i<10;i++) { //d=(int)(z/delare); d=z/delare; delare=delare/10; if(!(d/i==0)) { return 0; } } for(;n;n/=10) { if(++temp[n%10]>1) return 0; } return 1; } int main (void) { int i, j; long long a; for(a=100000000;a<999999999;a++) { if(check(a)==1) printf("%d\n"); } getch(); }
这是我写的程序,我没发现任何错误啊?一运行为什么结果显示不出来?