C语言基础语法第三章流程控制 练习题:求水仙花数

这段代码是用C语言编写的,用于判断100到999之间的数是否为水仙花数。程序通过拆分三位数的个位、十位和百位,计算它们的立方和,然后比较这个和是否等于原数来确定是否为水仙花数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

根据“水仙花数”的定义,判断一个数是否为“水仙花数”,最重要的是要把给出的三位数的个位、十位、百位分别拆分,并求其立方和(设为s),若s与给出的三位数相等, 三位数为“水仙花数”,反之,则不是。

在这里插入图片描述

#include <stdio.h>
int main()
{  //根据“水仙花数”的定义,判断一个数是否为“水仙花数”,最重要的是要把给出的三位数的个位、十位、百位分别拆分,
   //并求其立方和(设为s),若s与给出的三位数相等, 三位数为“水仙花数”,反之,则不是。
	int hun ,ten ,ge ,n;
	printf("100-999的水仙花数:");
	for (n=100;n<1000;n++)
	{
		hun=n/100;//将n整除以100,得出n在百位上的数字hun
		ten=n/10%10;//将n先整除以10再对10求模n/10%10),得出n在十位上的数字ten
		ge=n%10;//将n对10取余,得出n在个位上的数字ge
		if(n==hun*hun*hun+ten*ten*ten+ge*ge*ge)
			//得这三个数字的立方和是否与其本身相等,若相等,则该数为水仙花数
		printf("%d ",n);
	}	
	printf("\n");
	return 0;

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值