C语言代码 变种水仙花数

        变种水仙花数:把任意的数字从中间拆分成两个数字,如1461可拆分为1和461;14和61;146和1,若所有拆分后的乘积之和等于自身则是一个水仙花数。

1461=1*461 + 14*61 + 146*1

求出5位数中的所有水仙花数。

代码示例:

#include 
#include 

int main()
{
	int i = 0;
	for (i = 10000; i < 99999; i++)
	{
		int j = 0;
		int sum = 0;
		for (j = 1; j <= 4; j++)
		{
			int k = (int)pow(10, j);
			sum += (i / k) * (i % k);
		}
		if (sum == i)
		{
			printf("%d ", i);
		}
		
	}
	return 0;
}

运行结果:

14610 16420 23610 34420 65500

你可能感兴趣的:(c语言,开发语言)