⑴ 「水仙花數」c語言程序
代碼如下:
#include <stdio.h>
int main()
{
printf("輸出水仙花數: ");
int i=100;
for( ; i<1000; i++){
int num_0 = i%10;
int num_1 = i/10%10;
int num_2 = i/10/10%10;
if(i==(num_0*num_0*num_0+num_1*num_1*num_1+num_2*num_2*num_2))
printf("%d ", i);
}
return 0;
}
(1)c語言水仙花數流程圖擴展閱讀:
自冪數是指一個 n 位數,它的每個位上的數字的 n 次冪之和等於它本身。
n為1時,自冪數稱為獨身數。顯然,0,1,2,3,4,5,6,7,8,9都是自冪數。
n為2時,沒有自冪數。
n為3時,自冪數稱為水仙花數,有4個:153,370,371,407;
n為4時,自冪數稱為四葉玫瑰數,共有3個:1634,8208,9474;
n為5時,自冪數稱為五角星數,共有3個:54748,92727,93084;
n為6時,自冪數稱為六合數, 只有1個:548834;
n為7時,自冪數稱為北斗七星數, 共有4個:1741725,4210818,9800817,9926315;
n為8時,自冪數稱為八仙數, 共有3個:24678050,24678051,88593477;
n為9時,自冪數稱為九九重陽數,共有4個:146511208,472335975,534494836,912985153;
n為10時,自冪數稱為十全十美數,只有1個:4679307774。
⑵ 水仙花數的流程圖
所謂「水仙花數」是指一個三位數,其各位數字立方和等於該數
本身。例如:153是一個「水仙花數」,因為153=1的三次方+5的三次方+3的三次方。
給你舉例說明
求出100至999之間的所有「水仙花數」
找出100--999之間的所有「水仙花數」。所謂「水仙花數」是指一個三個數,其各位數字的立方和等於身。
解此題的關鍵是怎能樣從一個三位數中分離百位數、十位數、個位數。可以這樣做,設該三位數以i代表,由a,b,c三個數字組成。
(1)百位數字a:a=INT(i/100).
(2)十位數字b:b=INT((i-100*a)/10)
(3)百位數字c:c=i-int(i/10)*10.
具體程序如下:
for i=100 to 999
a=INT(i/100)
b=INT((i-100*a)/10)
c=i-int(i/10)*10
if i=a*a*a+b*b*b+c*c*c then print i
next 1
end
其結果為:153\370/371/407
引用------回答者:吳田田 - 大學士 十六級
⑶ c語言中,如何輸出所有的水仙花數
水仙花數即三位的自冪數。所謂自冪數,就是指一個 n 位數 ( n≥3 ),其每位上的數字的 n 次冪之和等於本身。
所以水仙花數,首先是三位數,形式為abc,同時a,b,c的立方和值與原本數相同。
類似的還有
四位自冪數:四葉玫瑰數
五位自冪數:五角星數
六位自冪數:六合數
等等。
對於水仙花數的判斷,需要按照以下步驟:
1 提取該數的個位,十位,百位值。
2 計算三個數的立方和。
3 與原值比較,如相等則是。
要輸出所有水仙花數,需要:
1 對所有三位數,即100到999遍歷;
2 對每個數判斷是否為水仙花數,如是則退出。
當循環結束,所有的水仙花數就輸出成功了。
代碼如下:
int isNarcissistic(int n)
{
int a = n/100;
int b = n/10%10;
int c = n%10;
return a*a*a + b*b*b + c*c*c == n;
}
int main()
{
int i;
for(i = 100; i< 1000; i ++)
if(isNarcissistic(i)) printf("%d ",i);
}
輸出結果如下:
153 370 371 407
⑷ 水仙花數的c語言編程。
C語言具體實現水仙花過程如下:
一、問題描述:
輸出所有的「水仙花數」,所謂的「水仙花數」是指一個三位數其各位數字的立方和等於該數本身,例如153是「水仙花數」,因為:153 = 13 + 53 + 33。
二、問題分析:
根據「水仙花數」的定義,判斷一個數是否為「水仙花數」,最重要的是要把給出的三位數的個位、十位、百位分別拆分,並求其立方和(設為s),若s與給出的三位數相等, 三位數為「水仙花數」,反之,則不是。
三、演算法設計:
「水仙花數」是指滿足某一條件的三位數,根據這一信息可以確定整數的取值范圍是 100〜999。對應的循環條件如下:
for(n=10; n<1000; n++) { //...... }
四、完整的代碼:
⑸ 用C語言編寫判斷是否是水仙花數的程序
水仙花數指的是一個數的各位數字的立方和等於數字本身,那麼我們怎麼樣用C語言去判斷一個數字是不是水仙花數呢?下面我給大家分享一下。
工具/材料
Visual Studio 2015
- 01
首先打開鋒知Visual Studio 2015軟體,新建銀山消一個C語唯余言程序,如下圖所示
- 02
然後我們需要在C語言文件中引入庫文件stdio.h,它裡麵包含了很多後面要使用的函數,如下圖所示
- 03
接著我們就需要實現水仙花數的判斷邏輯,主要是把輸入的數字各個位都取出來,然後進行立方求和,最後和輸入的數字進行比較,如下圖所示
- 04
最後我們按ctrl+F5運行程序,在彈出的界面中,我們輸入一個數字,程序就會自動告訴我們這個數字是不是水仙花數
⑹ 大一c語言求水仙花數
大一c語言求水仙花數方法如下:
1、首先打開編輯器,寫上注釋內容。
2、新建4個變數,分別是num,b,s,g分別代表三位數,百位數,十位數,個位數。
3、然後寫for循環,從100開始,最後到1000,自增。
4、然後分別求出遊緩這個三位數的百位,十位,個位。
5、接著判斷百位的3次方+十位的3次方+個位的3次方,看是否等於這個三位數,如果是,就是水仙花數,列印出來。
6、最後點擊編譯運行。
C語言的學習經驗和心得:
一、建立學習框架
在任何的學習過程中,焦點都需要從大到小。也就是從最大的學習知識體系,到填充內容,到聚焦於小的知識點。很多大學生,看到教材翻開第一章的內容就直接開始學了。其豎空實針對C語言這樣的學習方法不可取,非常容易遇到一點知識點不會導致根本學不下去。
建議大家在開學拿到教材之後,先快速的瀏覽一下全書的目錄。知道C語言我們應該學習的是基本概念、類型和表達式、控制流、函數與程序結構、指針與數組、結構體等等。
一般書籍的目錄、課程的大綱,或者網課的目錄都是我們學習的知識體系。
二、C語言學習書籍
經典書籍和教材不一定是最適合入門的內容,其實有很多針對小白的書籍,比如《C語言小白變怪獸》、《啊哈C語言》等。但是後面這本書就是經常被吐槽代碼不標准,容易誤導小白。
三、學習建議
太多大三的同學給我說C語言壓根沒學好,也不準備補了就好好在Java上下功夫了。為了避免這樣,希望大一的學生們可以認真學習C語言。因為很多操作系統都是C語言寫神纖模的,如果C語言學不好更別提未來可以很好的理解操作系統了。
學C語言需要多記筆記,自己吸收知識,並且要做題!
如果還是覺得書上的內容實在看不下去,那麼初學的同學們就少看書可以找一些網課。C語言經常會遇到各種編譯和鏈接的錯誤,小白遇到之後經常不知道如何解決。大家可以多多問老師,或者是學會自己看論壇。