【C语言编程--水仙花数II】
水仙花数II
- 前言
- 一、题目
- 二、使用步骤
- 1. 思路
- 2. 三位数求各个位数
- 3. 判断是否为水仙花数
- 三、具体实现
前言
用C语言实现水仙花数II
一、题目
请判断一个数是不是水仙花数。其中水仙花数定义各个位数立方和等于它本身的三位数
数据包含一个整数n(100<=n<1000)输入0表示程序输入结束
如果n是水仙花数就输出Yes否则输出No
二、使用步骤
1. 思路
- 首先需要知道一个3位数怎样得到各个位置的数(个位、十位、百位)
- 根据水仙花数的定义,各个位数立方和等于它本身的三位数
- 根据题目要求,判断数据n是否为水仙花数,如果是,则输出Yes,否则输出No
- 最后就是控制程序的退出
2. 三位数求各个位数
对于一个三位数n,不妨设为n = 153,则
- 个位:3
n % 10; // 153 % 10 = 3;
- 十位:5
n / 10 % 10; // 153 /10 = 15; 15 % 10 = 5;
- 百位:1
n / 100; // 153 / 100 = 1;
3. 判断是否为水仙花数
代码如下:
i = n % 10; // 计算个位
j = n / 10 % 10; // 计算十位
k = n / 100; // 计算百位
if (i * i * i + j * j * j + k * k * k == n) // 根据水仙花数的定义判断
{printf("Yes\n");
}
else
{printf("No\n");
}
三、具体实现
代码如下:
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>int main()
{/*请判断一个数是不是水仙花数。其中水仙花数定义各个位数立方和等于它本身的三位数数据包含一个整数n(100 <= n < 1000)输入0表示程序输入结束如果n是水仙花数就输出Yes否则输出No*/int i, j, k;int n;while (scanf_s("%d", &n) != EOF){if (n == 0){break;}assert(n < 1000 && n >= 100);i = n % 10; // 计算个位j = n / 10 % 10; // 计算十位k = n / 100; // 计算百位if (i * i * i + j * j * j + k * k * k == n){printf("Yes\n");}else{printf("No\n");}}return 0;
}
【C语言编程--水仙花数II】相关推荐
- 打印出所有的水仙花数javascript_期末C语言特辑 水仙花数
点击蓝字 关注我们 期末C语言特辑 水仙花数 [问题描述]水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PP ...
- 水仙花数c语言程序解析,C语言求水仙花数代码解析
原标题:C语言求水仙花数代码解析 水仙花数 "水仙花数"又称为"阿姆斯特朗数".如果一个n(n≥3)位数的各位数字的n次幂之和等于该数本身,则该数称为" ...
- C语言求水仙花数(自幂数)
C语言求水仙花数 什么是水仙花数 水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身.例如:1^3 + 5^3+ 3^3 = 153 函数实现 代码如下: #define _CRT ...
- c语言如何水仙花数,c语言如何解水仙花数
c语言解水仙花数的方法:首先按[CTRL+N]新建一个源代码:然后输入水仙花数的源代码:接着按[F9]进行编译:最后显示无错误后按[F10]运行即可. c语言解水仙花数的方法: 1.首先什么是水仙花数 ...
- 如何用C语言完成水仙花数的搜索
如何用C语言完成水仙花数的搜索 概念讲解: 什么是水仙花数呢? 所谓的水仙花数是指:一个n 位数( n≥3 ),它的每个位上的数字的n 次幂之和等于它本身. 例如153,370,371等都是水仙花数, ...
- 基于基础c语言的水仙花数编程方法
首先,什么是水仙花数? 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI).自恋数.自幂数.阿姆斯壮数或 ...
- 计算机二级c语言求水仙花数和完数,预测江苏省高校计算机二级C考试上机编程题之二特殊数张柏雄.doc...
预测江苏省高校计算机二级C考试上机编程题之二特殊数张柏雄 内容 一.特殊数:素数平方是各位数不相同的数 二.495三位陷阱数 三.可分解的整数 四.闰年计算题 五.数制变换题 六.水仙花数题 七.亲密 ...
- 求两个数之间的水仙花数.c语言,求水仙花数(C语言/Java)
求出0-999999之间的所有"水仙花数"并输出. "水仙花数"是指一个三位数,其各位数字的立方和确好等于该数本身, 如:153=1 ^ 3+5 ^ 3+3 ^ ...
- 使用Java语言输出水仙花数,详细解答
利用Java写出所有水仙花数,面向新手,详细解答 水仙花数的定义: 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant ...
最新文章
- java小练习:.根据输入的月份,判断该月份有多少天
- 数据结构(字典,跳跃表)、使用场景(计数器、缓存、查找表、消息队列、会话缓存、分布式锁)、Redis 与 Memcached、 键的过期时间、数据淘汰策略、持久化(RDB、AOF)
- 免费的开源软件那么“香”,为何他们宁愿花钱去买软件?
- python之路--动态传参,作用域,函数嵌套
- header python 环境信息_通过Python扫描代码关键字并进行预警!这样就不会出BUG了吧?...
- 安装广告拦截插件abp
- CentOS7.2安装linux版QQ
- html回到上一步,【答疑】Photoshop返回上一步和下一步快捷键是什么? - 视频教程线上学...
- 科普下Tippy.js - 开源且高度可做空间php的气泡翻译器
- 操作系统期末实验:多用户二级文件系统
- 波士顿大学研究生计算机科学专业排名,USnews2012美国大学排名计算机科学专业研究生排名...
- Java面试题目分析
- android mac 照片恢复,照片恢复
- 排序-JAVA实现【四】堆排序
- linux 修改微秒时间,Linux系统下精确到微秒级的时间操作函数
- Java 丢手绢游戏 求和_java入门小程序—17人游戏(丢手绢问题)
- 罗振宇2021《时间的朋友》体会
- 从ReentrantLock角度解析AQS
- python特殊方法
- 每个程序猿都应该知道的网站,数量有点多,请点收藏慢慢查看