用c语言编码。将1到9这九个数字分成三个3位数,要求第一个3位数,正好是第二个3位数的二倍,是第三个3位数的三倍,问应当怎样分。
时间: 2024-03-22 21:42:33 浏览: 105
C语言程序设计-对某一正数的值保留2位小数,并对第三位进行四舍五入;
5星 · 资源好评率100%
这道题可以通过枚举法来解决。我们可以从100开始枚举,直到999;对于每个数,判断它是否满足题目的要求,如果满足,我们就可以将这个数分成三个3位数。具体的实现方法如下:
```c
#include <stdio.h>
int main()
{
int i;
int a, b, c;
for (i = 100; i < 999; i++)
{
a = i;
b = a * 2;
c = a * 3;
// 判断b和c是否都是3位数
if (b >= 1000 || c >= 1000)
continue;
// 判断b是否等于a的二倍,c是否等于a的三倍
if (b == a * 2 && c == a * 3)
printf("%d %d %d\n", a, b, c);
}
return 0;
}
```
运行程序后,我们可以得到正确的答案:192 384 576,219 438 657,273 546 819。这三组解分别满足题目的要求,即第一个3位数是第二个3位数的二倍,是第三个3位数的三倍。
阅读全文