|
发表于 2022-11-5 16:14:15
|
显示全部楼层
本帖最后由 jackz007 于 2022-11-5 16:20 编辑
先设定 i、j 的变化范围 899~999,如果找不到,那就扩大范围到 799~999,如果还找不到,继续扩大到 699~999 。。。余此类推
- #include <stdio.h>
- int main(void)
- {
- int d , e , f , i , j , k , p , x ;
- for(f = 1 , x = 100 ; x < 900 && f ; x += 100) {
- for(d = 999 , i = d ; i > d - x && f ; i --) {
- for(j = d ; j > d - x && f ; j --) {
- k = i * j ;
- for(p = 0 , e = k ; e ; e /= 10) p = p * 10 + e % 10 ;
- if(p == k) f = 0 ;
- }
- }
- }
- printf("%d = %d x %d\n" , k , i + 1 , j + 1) ;
- }
复制代码
编译、运行实况:
- D:\[00.Exerciese.2022]\C>g++ -o x x.c
- D:\[00.Exerciese.2022]\C>x
- 906609 = 993 x 913
- D:\[00.Exerciese.2022]\C>
复制代码 |
|