解题思路:
循环条件及判断条件要满足题设的要求。把要求一一罗列出来就好了。
注意事项:
这个办法真的很笨,以至于第一次运行的时候要超时。看起来系统都不耐烦了,那我就让你少循环几次。
参考代码:
#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 人评分
点我有惊喜!你懂得!浏览:1435 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:688 |
C语言程序设计教程(第三版)课后习题12.1 (C语言代码)浏览:986 |
哥德巴赫曾猜测 (C语言代码)浏览:1014 |
WU-蓝桥杯算法提高VIP-企业奖金发放 (C++代码)浏览:1174 |
Wu-求圆的面积 (C++代码)浏览:1891 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:609 |
关于float,double变量的几点说明浏览:1810 |
输入输出格式练习 (C语言代码)浏览:849 |
整除问题 (C语言代码)浏览:526 |