當前位置:首頁 » 編程語言 » 水仙花c語言實現
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

水仙花c語言實現

發布時間: 2022-08-28 18:15:47

『壹』 「水仙花」的c語言編程方法

這是我們書上的一道題目:列印出100-999中所有的「水仙花數」
#include<stdio.h>
void
main()
{

int
i,j,k,n;

printf("水仙花數為:");

for(n=100;n<1000;n++)

{

i=n/100;
/*分解出百位*/

j=n/10%10;
/*分解出十位*/

k=n%10;
/*分解出個位*/

if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)

printf("%d
",n);

}
}

『貳』 c語言怎麼編寫水仙花數

方法:先弄懂什麼是水仙花數::
水仙花數是指一個n(>=3)位數字的數,它等於每個數字的n次冪之和。
3位水仙花數————先定義3個數其中一個為1--9;2個為0--9;(用for循環)
再用如果a定義為1--9那麼用100*a來表示百位;如果b或者c定義是0--9那麼用10*b或者10*c來表示十位;那麼下面用c或者b來表示個位;
if(100*a+10*b+c==a*a*a+b*b+c) 如果滿足這個條件那麼:輸出的printf("%d%d%d",a,b,c)就是3位數的水仙花數:

4位水仙花數方法同上:

剛寫的:調試過了
#include <stdio.h>
int main(void)
{
int a,b,c,d;
system("cls");
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
for(c=0;c<=9;c++)
if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)
printf("%d%d%d\n",a,b,c);
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
for(c=0;c<=9;c++)
for(d=0;d<=9;d++)
if(1000*a+100*b+10*c+d==a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d)
printf("%d%d%d%d\n",a,b,c,d);
getch();
}

或者這樣:
#include <stdio.h>
int main(void)
{
int a,b,c,d;
system("cls");
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
for(c=0;c<=9;c++)
{
if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)
printf("%d%d%d\n",a,b,c);
for(d=0;d<=9;d++)
if(1000*a+100*b+10*c+d==a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d)
printf("%d%d%d%d\n",a,b,c,d);
}
getch();
}

『叄』 水仙花數C語言程序

n放錯地方了。
#include<stdio.h>
void main()
{
int i,j,k,n;

for(i=1;i<10;i++)
for(j=0;j<10;j++)
for(k=0;k<10;k++)
{
n=i*100+j*10+k;
if((i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))
printf("水仙花數為:%d\n",n);
}
}
沒讀你的程序,現在不那樣了。
還有問題給我留言。

『肆』 c語言,水仙花作業

#include <stdio.h>


int main()


{


int start, end, i = 0, a, b, c, size = 0;


while (scanf("%d %d", &start, &end) == 2)


{


for (i = start; i <= end; i++)


{


a = i / 100;


b = i / 10 % 10;


c = i % 10;


//total = pow(c, 3) + pow(a, 3) + pow(b, 3);


if ((a*a*a + b*b*b + c*c*c) == i) //滿足水仙花條件


{


if (size == 0) //size=0輸出第一個水仙花數


{


printf("%d", i);


}


else //size++輸出第二。。第n個水仙花數


{


printf(" %d", i);


}


size++; //個數++;


}


}


if (size == 0) //范圍內個數為0,則說明沒有滿足條件的


{


printf("no");


}


printf(" ");


}

return 0;


}

網頁鏈接

『伍』 c語言水仙花數

#include <stdio.h>

int main()

{

int start, end, i = 0, a, b, c, size = 0;

while (scanf("%d %d", &start, &end) == 2)

{

for (i = start; i <= end; i++)

{

a = i / 100;

b = i / 10 % 10;

c = i % 10;

//total = pow(c, 3) + pow(a, 3) + pow(b, 3);

if ((a*a*a + b*b*b + c*c*c) == i) //滿足水仙花條件

{

if (size == 0) //size=0輸出第一個水仙花數

{

printf("%d", i);

}

else //size++輸出第二。。第n個水仙花數

{

printf(" %d", i);

}

size++; //個數++;

}

}

if (size == 0) //范圍內個數為0,則說明沒有滿足條件的

{

printf("no");

}

printf(" ");

}

return 0;

}

(5)水仙花c語言實現擴展閱讀:

需要注意的地方:

1.將n整除以100,得出n在百位上的數字hun。

2.將(n-i*100)整除以10(或將n先整除以10再對10求模n/10%10),得出n在十位上的數字ten。

3.將n對10取余,得出n在個位上的數字ind。

4.求得這三個數字的立方和是否與其本身相等,若相等,則該數為水仙花數。

網路-水仙花數

『陸』 C語言編寫水仙花數

&m);10,s;%ld"while(n,可把上述代碼移植到其他程序中;s=0;n=m/{p=n%10,如果求得的和等於m,n;10;/*PS:,則為水仙花數*/,可以使用;是水仙花數\if(s==m)printf("intp;*輸入長整形數字*/,s;/不是水仙花數\}/s+=p*p*p;*賦予s值為0*/):;/。*//*把m數字的第一位去掉,n存放中間數字*//n"*PS,可繼續*/voidmain(){longintm,從各位開始*/*求得m的第一位數字;請輸入一個整數;*繼續求和*/*定義整形數字;/*繼續依次去掉每一位數字*/:如還有不懂:m;,想求其他的;}/:"n=n/,判斷是否是水仙花數,s存放各位數字之和;elseprintf(",如果;):.h>/*定義長整形數字。經測試,m存放判斷的數字;n",是輸入一個數字;*當n不等於0時*/p=m%10;printf("/s+=p*p*p:上述代碼;stdio;*最後,直接除以10*/);/scanf("/,來存放每個位的數字*/,n!=0)/*求的每一位數字*/#include<

『柒』 c語言,水仙花

方法:先弄懂什麼是水仙花數::
水仙花數是指一個n(>=3)位數字的數,它等於每個數字的n次冪之和。
3位水仙花數————先定義3個數其中一個為1--9;2個為0--9;(用for循環)
再用如果a定義為1--9那麼用100*a來表示百位;如果b或者c定義是0--9那麼用10*b或者10*c來表示十位;那麼下面用c或者b來表示個位;
if(100*a+10*b+c==a*a*a+b*b+c) 如果滿足這個條件那麼:輸出的printf("%d%d%d",a,b,c)就是3位數的水仙花數:
4位水仙花數方法同上:
剛寫的:調試過了
#include <stdio.h>
int main(void)
{
int a,b,c,d;
system("cls");
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
for(c=0;c<=9;c++)
if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)
printf("%d%d%d\n",a,b,c);
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
for(c=0;c<=9;c++)
for(d=0;d<=9;d++)
if(1000*a+100*b+10*c+d==a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d)
printf("%d%d%d%d\n",a,b,c,d);
getch();
}
或者這樣:
#include <stdio.h>
int main(void)
{
int a,b,c,d;
system("cls");
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
for(c=0;c<=9;c++)
{
if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)
printf("%d%d%d\n",a,b,c);
for(d=0;d<=9;d++)
if(1000*a+100*b+10*c+d==a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d)
printf("%d%d%d%d\n",a,b,c,d);
}
getch();
}

『捌』 水仙花數的c語言編程。

C語言具體實現水仙花過程如下:

一、問題描述:

輸出所有的「水仙花數」,所謂的「水仙花數」是指一個三位數其各位數字的立方和等於該數本身,例如153是「水仙花數」,因為:153 = 13 + 53 + 33。

二、問題分析:

根據「水仙花數」的定義,判斷一個數是否為「水仙花數」,最重要的是要把給出的三位數的個位、十位、百位分別拆分,並求其立方和(設為s),若s與給出的三位數相等, 三位數為「水仙花數」,反之,則不是。

三、演算法設計:

「水仙花數」是指滿足某一條件的三位數,根據這一信息可以確定整數的取值范圍是 100〜999。對應的循環條件如下:

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

四、完整的代碼:

『玖』 c語言水仙花數編程

#include <stdio.h>

void main()

{

int a,b,c,i,j=0;

for(i=100;i<1000;i++)

{

a = i / 100;

b = i % 100 / 10;

c = i % 10;

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

{

printf("%d ",i);

j++;

if(j%2==0)

printf(" ");

}

}

}


『拾』 C語言編程輸出所有的「水仙花數」。

1、首先需要打開Dev-c++軟體,點擊「新建源代碼」。