C语言:输出所有“水仙花数”。“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身,如153=1^3 +5^3+3^3

分析:

在主函数 main 中,程序首先定义四个整型变量 m、a、b 和 c,并用于计算和判断水仙花数。然后使用 printf 函数输出提示信息。

接下来,程序使用 for 循环结构,从 100 到 999 遍历所有三位数。对于每个遍历到的数 m,程序将其百位、十位和个位分别赋值给变量 a、b 和 c。这里通过除法和取模运算的方式得到各个位数的值。

然后,程序通过 if 条件判断语句,判断当前数 m 是否是水仙花数。水仙花数是指一个三位数,其各个位上的数字的立方和等于该数本身。如果判断为真,即 m 是水仙花数,就使用 printf 函数输出该数。

最后,程序使用 printf 函数输出换行符,表示输出结束。

代码:

复制代码
#include<stdio.h>
int main()
{
	int m,a,b,c;
	printf("水仙花数:");
	for(m=100;m<=999;m++)
	{
		a=m/100;
		b=m/10-a*10;
		c=m%10;
		if(m==a*a*a+b*b*b+c*c*c)
			printf("%d ",m);
	}
	printf("\n");
		return 0;
	}

运行结果:

相关推荐
代码中介商9 小时前
银行管理系统的业务血肉 —— 流程、状态机、输入校验与持久化(下篇)
c语言·算法
爱编码的小八嘎11 小时前
C语言完美演绎9-12
c语言
Navigator_Z13 小时前
LeetCode //C - 1031. Maximum Sum of Two Non-Overlapping Subarrays
c语言·算法·leetcode
leoufung18 小时前
LeetCode 30:Substring with Concatenation of All Words 题解(含 C 语言 uthash 实现)
c语言·leetcode·c#
爱编码的小八嘎19 小时前
C语言完美演绎9-6
c语言
SunnyByte19 小时前
线性表——单链表的增删查改操作
c语言·单链表
SunnyByte20 小时前
线性表——双向链表
c语言·链表
jimy120 小时前
C 语言的 static 关键字作用
c语言·开发语言·算法
handler0121 小时前
算法:图的基本概念
c语言·开发语言·c++·笔记·算法·图论
木木_王21 小时前
嵌入式Linux学习 | 数据结构 (Day03)顺序表与单链表 超详细解析(含 C 语言实现 + 作业 + 避坑指南)
linux·c语言·数据结构·学习