栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言100题练习计划——走进水仙花数

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言100题练习计划——走进水仙花数

C语言100题练习计划——走进水仙花数

不要失去信心,只要坚持不懈,就终会有成果的。——钱学森

本篇内容简介:一、问题呈现-->二、源码实现-->三、输出结果展示-->四、流程分析

磊C语言100题练习专栏计划:目的:巩固练习C语言,增强上机、动手实践能力,交流学习!题量随时间的增加会有所增加。

C Programming Language
  • C语言100题练习计划——走进水仙花数
        • 一、问题呈现
        • 二、源码实现
        • 三、输出结果展示
          • 1.输出结果:
          • 2.输出结果(图示版):
        • 四、流程分析
          • 1.读题
          • 2.构思
          • 3.代码

//========================
流苏的博客,邀你一起学习!歷
========================//

一、问题呈现

Problem Description

输入多组整数,判断所输入的整数是否为水仙花数

水仙花数:水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。

Input

输入多组变量n的值

Output

为水仙花数输出Yes,不是水仙花数输出No

Sample Input

153

2

Sample Output

Yes

No

二、源码实现
#include

int main(){
	int n;
	while(scanf("%d",&n)!=EOF){
  		if(n==0) break;
  		int a=n/100;
  		int b=n/10%10;
  		int c=n%10;
  		if(a*a*a+b*b*b+c*c*c==n)
  		{
     		printf("1n");
  		}
  		else
  		{
     		printf("0n");
  		}
	}
	return 0;
} 


三、输出结果展示 1.输出结果:
153
Yes
2
No
^Z

--------------------------------
Process exited after 7.234 seconds with return value 0
请按任意键继续. . .
2.输出结果(图示版):


四、流程分析 1.读题

输入多组整数,判断所输入的整数是否为水仙花数。 关键点:① 输入多组 ② 是否为水仙花数

2.构思

看第一处关键:输入多组,说明需要循环输入,但是多组肯定输入是有限数量的输入,多组输入我们一般会想到使用for循环,但是用那种方法,一般都会有限制,不能随心地输入,所以这里我们使用while(scanf("%d",&n)!=EOF)语句来实现,第二处关键是是否为水仙花数,然后题目注释中给了水仙花数的定义:水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。根据这个定义,我们在循环输入中,加一个if条件语句判断是否是水仙花数就可以了。

附:while(scanf("%d",&n)!=EOF)语句逐层分析,退出该语句用ctrl+z然后enter键就行了。

3.代码

把你所思所想,以代码的形式,写出来。

ps:这道题的方法,本文虽然只写出这一种,但是思路方法其实不止这一种。其它的方法可自行尝试一下。


作者:Code_流苏(一个喜欢古诗词和编程的Coder)

★喜欢的话,还请多多点赞与关注! 感谢支持!
C语言百题练习专栏计划持续进行,欢迎评论交流学习!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/692321.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号