用c语言判断是否为水仙花数(如何用c语言判断一个数是不是水仙花

http://www.itjxue.com  2023-03-16 14:37  来源:未知  点击次数: 

水仙花数的c语言编程。

所谓的“水仙花数”是指一个三位数其各位数字的立方和等于该数本身,例如153是“水仙花数”,因为:153 = 1^3 + 5^3+ 3^3?。

下面是完整的C语言编程代码:

运行结果:

result is:153? 370? 371? 407

扩展资料

常见水仙花数

水仙花数又称阿姆斯特朗数。

1、三位的水仙花数共有4个:153,370,371,407;

2、四位的四叶玫瑰数共有3个:1634,8208,9474;

3、五位的五角星数共有3个:54748,92727,93084;

4、六位的六合数只有1个:548834;

5、七位的北斗七星数共有4个:1741725,4210818,9800817,9926315;

6、八位的八仙数共有3个:24678050,24678051,88593477

参考资料:百度百科:水仙花数

c语言。。用if语句编程,输入一个三位数,判断是否为水仙花数。

三位的水仙花数就是每一位的立方之和和这个三位数相等的数,用if语句编程,输入一个三位数,判断是否为水仙花数,可以参考以下的代码:

includestdio.h

main()

{ int x,a,b,c;

scanf("%d",x);

a=x/100;

b=(x/10)%10;

c=x%10;

if(x==a*a*a+b*b*b+c*c*c)

printf("YES");

else

printf("NOT");

}

扩展资料:

if的返回值为真或假,可以用bool型变量进行存储,占用一字节。

C语言中提供了2种形式的if语句:

1、if(表达式)语句1,例如:

if(xy)

printf("%d",x);

2、if(表达式),语句1

else

语句2,例如:

if(xy)

printf("%d",x);

else

printf("%d",y);

参考资料来源:百度百科-if语句

c语言判断水仙花数

C语言输出水仙花数的具体分析和实现流程如下:

1、水仙花数的含义

“水仙花数”是一个三位数其各位数字的立方和等于该数本身。例如:3^3 + 7^3+ 0^3 = 370

2、算法分析

把给出的某个三位数的个位、十位、百位分别拆分,并求其立方和(设为sum),若sum与给出的三位数相等, 则为“水仙花数”。

3、算法设计

“水仙花数”是一个三位数,可以确定该数的取值范围是 100?999。对应的循环条件如下:

for (n=10; n1000; n++) {}

将n整除以100,得出n在百位上的数字h。

将(n-i*100)整除以10, 得出n在十位上的数字t。

将n对10取余,得出n在个位上的数字a。

求得h,t,a 三个数字的立方和是否与n相等,如果相等则证明该数为水仙花数。

4、代码实现

#include stdio.h

int main() {

int h, t, a, n;

printf("result is:");

for ( n=100; n1000; n++ )? { /*整数的取值范围*/

h = n / 100;

t = (n-h*100) / 10;

a = n % 10;

if (n == h*h*h + t*t*t + a*a*a) ?/*各位上的立方和是否与原数n相等*/

printf("%d ?", n);}

printf("\n");

return 0;}

扩展资料:

常见水仙花数

水仙花数又称阿姆斯特朗数。

1、三位的水仙花数共有4个:153,370,371,407;

2、四位的四叶玫瑰数共有3个:1634,8208,9474;

3、五位的五角星数共有3个:54748,92727,93084;

4、六位的六合数只有1个:548834;

5、七位的北斗七星数共有4个:1741725,4210818,9800817,9926315;

6、八位的八仙数共有3个:24678050,24678051,88593477

参考资料来源:百度百科-水仙花数

用C语言编写判断是否是水仙花数的程序

水仙花数指的是一个数的各位数字的立方和等于数字本身,那么我们怎么样用C语言去判断一个数字是不是水仙花数呢?下面我给大家分享一下。

工具/材料

Visual Studio 2015

01

首先打开Visual Studio 2015软件,新建一个C语言程序,如下图所示

02

然后我们需要在C语言文件中引入库文件stdio.h,它里面包含了很多后面要使用的函数,如下图所示

03

接着我们就需要实现水仙花数的判断逻辑,主要是把输入的数字各个位都取出来,然后进行立方求和,最后和输入的数字进行比较,如下图所示

04

最后我们按ctrl+F5运行程序,在弹出的界面中,我们输入一个数字,程序就会自动告诉我们这个数字是不是水仙花数

用c语言判断一个数是否为水仙花数?

你的C语言程序我帮你改完了,完整的程序如下(改动的地方见注释)

#includestdio.h

int narcissistic(int number){

//这里n=1改成n=0并加product变量保存连乘积

int a,b=0,n=0,c,number2,number3,product;

number2=number;

number3=number;

while(number0){//这里把number10改成number0

number=number/10;

n++;

}

while(number20){//这里把number2=1改成number20

a=number2%10;

number2=number2/10;

product=1;//这里初始化product变量为1

for(c=0;cn;c++)//这里把c=1;改成c=0;

product=product*a;//这里把a=a*a;改成product=product*a;

b=b+product;//这里把b=b+a;改成b=b+product;

}

if(b==number3)

return 1;

else

return 0;

}

int main(){

int i;

for(i=100;i1000;i++){

if(narcissistic(i)==1)

printf("%d ",i);

}

return 0;

}

(责任编辑:IT教学网)

更多
上一篇:没有了