解题思路:
循环条件及判断条件要满足题设的要求。把要求一一罗列出来就好了。

注意事项:
这个办法真的很笨,以至于第一次运行的时候要超时。看起来系统都不耐烦了,那我就让你少循环几次。

参考代码:

#include<stdio.h>

int main()

{

int a1, a2, a3, a4, a5, a6, a7, a8, a9;//三个三位数所用到的9个数

int A, B, C;//3个三位数用A,B,C表示

for (a1 = 1 ;a1 <= 3; a1++)//本来写成(a1 = 1 ;a1 <= 9; a1++),但结果超时。考虑到题目的限制条件,把自小的数设置为399以内。

for (a2 = 1; a2 <= 9; a2++)

for (a3 = 1; a3 <= 9; a3++)

for (a4 = 1; a4 <= 9; a4++)

for (a5 = 1; a5 <= 9; a5++)

for (a6 = 1; a6 <= 9; a6++)

for (a7 = 5; a7 <= 9; a7++)//本来写成(a7 = 1 ;a7 <= 9; a7++)。原因同上,改为了5。

for (a8 = 1; a8 <= 9; a8++)

for (a9 = 1; a9 <= 9; a9++)

{

A = a1 * 100 + a2 * 10 + a3;//计算A,B,C三个数

B = a4 * 100 + a5 * 10 + a6;

C = a7 * 100 + a8 * 10 + a9;

if (a1 != a2 && a1 != a3 && a1 != a4 && a1 != a5 && a1 != a6 && a1 != a7 && a1 != a8 && a1 != a9

&& a2 != a3 && a2 != a4 && a2 != a5 && a2 != a6 && a2 != a7 && a2 != a8 && a2 != a9

&& a3 != a4 && a3 != a5 && a3 != a6 && a3 != a7 && a3 != a8 && a3 != a9

&& a4 != a5 && a4 != a6 && a4 != a7 && a4 != a8 && a4 != a9

&& a5 != a6 && a5 != a7 && a5 != a8 && a5 != a9

&& a6 != a7 && a6 != a8 && a6 != a9

&& a7 != a8 && a7 != a9

&& a8 != a9

&& 2 * A == B && 3 * A == C)//所有不相等和几倍关系的条件都一一罗列在这里

{

printf("%d %d %d\n", A, B, C);

}

}

return 0;

}

点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论