//假设有4个值0到9且各不相同的整数a,b,c,d,要求abcd*d=dcba,请问abcd为?
//据说是小学三年级的奥数题目
#include <stdio.h>
main()
{
int a=0,b=0,c=0,d=0;
for(a;a<9;a++)
{
if
((a*1000+b*100+c*10+d)*d==(d*1000+c*100+b*10+a)&&(a!=b&&b!=c&&c!=d))
printf("%d%d%d%d ",a,b,c,d);
for(b=0;b<9;b++)
{
if((a*1000+b*100+c*10+d)*d==(d*1000+c*100+b*10+a)&&(a!=b&&b!=c&&c!=d))
printf("%d%d%d%d ",a,b,c,d);
for(c=0;c<9;c++)
{
if((a*1000+b*100+c*10+d)*d==(d*1000+c*100+b*10+a)&&(a!=b&&b!=c&&c!=d))
printf("%d%d%d%d ",a,b,c,d);
for(d=0;d<9;d++)
{
if((a*1000+b*100+c*10+d)*d==(d*1000+c*100+b*10+a)&&(a!=b&&b!=c&&c!=d))
printf("%d%d%d%d ",a,b,c,d);
}
}
}
}
}应该可以改正,减少重复代码的,可惜我比较菜,请高手指点。
探讨一个小学奥数题目,使用C语言编程求解abcd*d=dcba问题,通过嵌套循环验证四位数abcd与乘积dcba的关系。
2760

被折叠的 条评论
为什么被折叠?



