1樓:匿名使用者
水仙花數:是指一個 n 位數 ( n≥3 ),它的每個位上的數字的 n 次冪之和等於它本身。
#include
int fun(int n)
int main()
/*執行結果:
153370
371407*/
2樓:匿名使用者
方法:先弄懂什麼是水仙花數::
水仙花數是指一個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
int main(void)
或者這樣:
#include
int main(void)
getch();}
3樓:1024程式設計師
c語言經典案例之水仙花數
4樓:寒冬
#include"stdio.h"
main()
i++;}}
5樓:真實的幻術師
#include
void main()
}printf("\n");
printf("所有四位水仙花數為:\n");
for(m=1000;m<=9999;m++)}printf("\n");}
6樓:匿名使用者
#include
#include
int main()
}for(i=0;i<2*m;i=i+2)for(l=k;l>0;l=l-1)
if(l<3) continue;
for(e=0;e<=l;e++)
if(c==j) d=d+1;
}printf("%d\n",d);}}
7樓:作業槍手
#include
#include
#include
int main()
system("pause");
return 0;}
8樓:柴飇舒如凡
#include
void
main()
printf("\n");}
9樓:遊曜武覓雲
#include
void
main()
/*繼續依次去掉每一位數字*/
if(s==m)
printf("是水仙花數\n");
/*最後,如果求得的和等於m,則為水仙花數*/else
printf("不是水仙花數\n");}/*ps:上述**,是輸入一個數字,判斷是否是水仙花數,如果,想求其他的,可把上述**移植到其他程式中。經測試,可以使用。*/
/*ps::::如還有不懂,可繼續*/
c語言程式設計輸出所有的「水仙花數」。
10樓:匿名使用者
運用vc++6.0編譯執行:
#include
int main()
return 0;}
11樓:匿名使用者
#include
void main()}}
}我自己想的!呵呵,這是本人做出來的第一個c語言程式
12樓:
最基本的方法是列舉法,但時間複雜度較高,不過剪枝後還可以,不慢。
當然也可以用貪心法解決
*****==回答樓下朋友的問題**********=本人是學pascal的,對c語言不太熟悉,能讀懂,但寫還有點困難。見諒!
13樓:匿名使用者
main()
getch();
}樓上能把另外2種演算法 仔細描述下麼?謝謝
14樓:渾含蓮
建議你和程式設計老師當面**一下這道題目,注意學習一下程式設計的思路
c語言程式設計題找出所有的水仙花數,水仙花數是指3位數
問明 import org.junit.test public class narcissusnumberfrom module name importfrom module name importfrom module name importfrom module name path to spe...
c語言輸出所有水仙花數,C語言程式設計輸出所有的「水仙花數」。
我是比丘猴 樓主你好 按照你的程式,你可能對於水仙話數有誤解.首先,水仙花數是指一個 n 位數 n 3 它的每個位上的數字的 n 次冪之和等於它本身。例如 1 3 5 3 3 3 153或3 3 7 3 0 3 370 注意 是每個 位上 的數字。而你的原 寫的效果是,例如第一次迴圈1 3 10 3...
c 的水仙花數
1.單獨測測你的兩個函式nt power int,int power a,b 是求a的b次是多少的一個函式 注意返回值的型別 int digit int 這個result是求一個數位數的函式 下面是我修改後的 include iostream.h include math.h int digit i...