当前位置:首页 » 编程语言 » 是否为自恋数的C语言代码
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

是否为自恋数的C语言代码

发布时间: 2023-03-15 01:41:48

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

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

include<stdio.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");

}

(1)是否为自恋数的C语言代码扩展阅读:

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

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

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

if(x>y)

printf("%d",x);

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

else

语句2,例如:

if(x>y)

printf("%d",x);

else

printf("%d",y);

‘贰’ 水仙花数的c语言编程。

C语言具体实现水仙花过程如下:

一、问题描述:

输出所有的“水仙花数”,所谓的“水仙花数”是指一个三位数其各位数字的立方和等于该数本身,例如153是“水仙花数”,因为:153 = 13 + 53 + 33。

二、问题分析:

根据“水仙花数”的定义,判断一个数是否为“水仙花数”,最重要的是要把给出的三位数的个位、十位、百位分别拆分,并求其立方和(设为s),若s与给出的三位数相等, 三位数为“水仙花数”,反之,则不是。

三、算法设计:

“水仙花数”是指满足某一条件的三位数,根据这一信息可以确定整数的取值范围是 100〜999。对应的循环条件如下:

for(n=10; n<1000; n++) { //...... }

四、完整的代码:

‘叁’ c语言 编写一个判断是否为水仙花数的函数,并通过调用该函数打印输出所有水仙花数。

#include&lt;stdio.h&gt;

#include&lt;math.h&gt;

int narcissistic(int number);

void PrintN(int m,int n);

int main()

{

int m,n;

scanf("%d%d",&m,&n);

if(narcissistic(m))printf("%d is a narcissistic number ",m);

PrintN(m,n);

if(narcissistic(n))printf("%d is a narcissistic number ",n);

return 0;

}

int narcissistic(int number){

int i,n=0,sum=0,cnt=0;

n=number;

while(n){

cnt++;

n/=10;

}

n=number;

while(n){

i=n%10;

sum+=(int)pow(i,cnt);

n/=10;

}

if(sum==number)

return 1;

else

return 0;

}

void PrintN(int m,int n){

int i;

for(i=m+1;i&lt;n;i++)

if(narcissistic(i))

printf("%d ",i);

}

(3)是否为自恋数的C语言代码扩展阅读:

printf函数使用注意事项

1、域宽

%d:按整型数据的实际长度输出。

如果想输出指定宽度可以指定域宽,%md--&gt,m域宽,打印出来以后,在控制台上,显示m位;

如果要打印的数的位数如果超过我们设定m则原样输出;

如果要打印的数的位数如果小于设定的位数,则补空白,具体如下:

如果m为正数,则左对齐(左侧补空白);

如果m为负数,则右对齐(右侧补空白)。

2、转义字符

如果想输出字符"%",则应该在“格式控制”字符串中用连续两个%表示。

如:printf("%f%%",1.0/3);输出结果:0.333333%。