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

C语言·水仙花

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

C语言·水仙花

C语言·水仙花

前言说明实现思路流程图水仙花·代码·有注释水仙花·代码结语

前言说明

提前确定系数的值(代码中默认为3)。输入一个数,求出每位的y次方的总和。判断是否等于你输入的数。
如果是则为水仙花数。

实现思路
将输入的数;个位单独提出算;
从十位开始;输入的数/10;使其为个位;在%10;得出此数;
百位;输入的数/100;使其位个位;在%10;得出此数;
千位;输入的数/1000;使其位个位;在%10;得出此数;
(以此类推)即可得出每位的数

再将每次得出每位的数的y次方相加;得出最后的总值。
流程图

暂无

水仙花·代码·有注释
#include 
#include 
#define y 3 
int main(int argc, char* argv[])
{
	int value_1;
	int value_2=1;
	int value_3 = 1;
	int value_4 = 0;
	int sum_1 = 0;

	printf("请输入你要判断水仙花的数:");
	scanf_s("%d", &value_1);

	
	do
	{
		value_3=value_3*10;
		value_4++;
	} while (value_1 / value_3);
	

		sum_1 = pow(value_1 % 10, y);

		
		for (value_3 = 1; value_3 < value_4; value_3++)
		{
			value_2 = value_2 * 10;
			sum_1 = sum_1 + pow(value_1 / value_2 % 10,y);
		}
		

		if (sum_1 == value_1)
		{
			printf("n%d经过每位数的%d次方后的总值是其本身n", value_1, y);
			printf("所以%d是一个水仙花数n",value_1);
		}
		else {
			printf("n%d经过每位数的%d次方后的总值是%dn", value_1, y, sum_1);
			printf("所以%d不是一个水仙花数n", value_1);
		}

		return 0;

}
水仙花·代码
#include 
#include 
#define y 3 
int main(int argc, char* argv[])
{
	int value_1;
	int value_2=1;
	int value_3 = 1;
	int value_4 = 0;
	int sum_1 = 0;

	printf("请输入你要判断水仙花的数:");
	scanf_s("%d", &value_1);

	
	do
	{
		value_3=value_3*10;
		value_4++;
	} while (value_1 / value_3);
	

		sum_1 = pow(value_1 % 10, y);

		
		for (value_3 = 1; value_3 < value_4; value_3++)
		{
			value_2 = value_2 * 10;
			sum_1 = sum_1 + pow(value_1 / value_2 % 10,y);
		}
		

		if (sum_1 == value_1)
		{
			printf("n%d经过每位数的%d次方后的总值是其本身n", value_1, y);
			printf("所以%d是一个水仙花数n",value_1);
		}
		else {
			printf("n%d经过每位数的%d次方后的总值是%dn", value_1, y, sum_1);
			printf("所以%d不是一个水仙花数n", value_1);
		}

		return 0;

}

结语

编程新手。此代码有错误的或者有意见的,欢迎致信!
QQ邮箱:2787485199@qq.com

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

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

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