1. 水仙花的c語言編寫
#include "stdio.h"
int main()//一個程序一定要有一個main函數 你下面定義了n這就不要了定義了
{
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);
}
}//程序還是對的 沒什麼問題
2. 「水仙花」的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);
}
}
3. 水仙花數的c語言編程。
C語言具體實現水仙花過程如下:
一、問題描述:
輸出所有的「水仙花數」,所謂的「水仙花數」是指一個三位數其各位數字的立方和等於該數本身,例如153是「水仙花數」,因為:153 = 13 + 53 + 33。
二、問題分析:
根據「水仙花數」的定義,判斷一個數是否為「水仙花數」,最重要的是要把給出的三位數的個位、十位、百位分別拆分,並求其立方和(設為s),若s與給出的三位數相等, 三位數為「水仙花數」,反之,則不是。
三、演算法設計:
「水仙花數」是指滿足某一條件的三位數,根據這一信息可以確定整數的取值范圍是 100〜999。對應的循環條件如下:
for(n=10; n<1000; n++) { //...... }
四、完整的代碼:
4. C語言編程輸出所有的「水仙花數」。
1、首先需要打開Dev-c++軟體,點擊「新建源代碼」。
5. 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.求得這三個數字的立方和是否與其本身相等,若相等,則該數為水仙花數。
網路-水仙花數
6. c語言編程:水仙花數
#include<stdio.h>
#include<stdilib.h>
main()
{
int i, a, b, c;
for( i=100; i<=999; i++ ){
c=i%100; //個位
a=i/100; //百位
b=i-100*a-c; //十位
if( a*a*a+b*b*b+c*c*c == i )
printf("%d\t",i);
}
system("pause");
return 0;
}
7. 求水仙花數c語言
所謂的「水仙花數」是指一個三位數其各位數字的立方和等於該數本身,例如153是「水仙花數」,因為:153 = 1^3 + 5^3+ 3^3。
下面是完整的C語言編程代碼:
運行結果:
result is:153 370 371 407
(7)水仙的c語言編程擴展閱讀
常見水仙花數
水仙花數又稱阿姆斯特朗數。
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
8. 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(" ");
}
}
}
9. 水仙花——C語言編程
水仙花數是指一個 n 位數 ( n≥3 ),它的每個位上的數字的 n 次冪之和等於它本身。(例如:1^3 + 5^3 + 3^3 = 153)下面給出一個判斷一個數是否是水仙花數的程序。
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num,i=0,a[10],sum=0,m;
scanf("%d",&num);
m=num;
while(num>0){
a[i]=num%10;
a[i]*=a[i];
sum+=a[i];
i++;
num/=10;
}
if(sum==m)printf("是水仙花數");
system("PAUSE");
return 0;
}
希望能幫到你,,求採納。。。
10. 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();
}