1樓:飛喵某
1、首先開啟vs 2017軟體,開啟一個準備好的工程,新建一個c語言檔案,先寫入標頭檔案和main函式,裡面定義需要的用到的4個變數。
2、然後先定義一個for迴圈遍歷100以內的所有數,利用條件語句進行判斷j是不是i的因子,是的話就相加,判斷完成後在判斷因子是不是和原來的數相等即可,盤點完輸出完成判斷的數字,如此往復直到判斷完100個數為止。
3、最後按crtl+f10執行程式,可以看到100以內的完數都輸出了。
2樓:莫道無情
#include
int main()
int x, i, sum;
for (x = 3; x <=1000; x++)sum = 1; /初始化sum
for (i = 2; i <=x/2 ; i++)從2開始,1不是完數。
if (x%i ==0)sum +=i;
if (sum ==x)printf("%d its factors are 1 ",x);/找到完數,感覺是為了「,」處理方便,所以在這裡的末尾加了1
if (sum ==x)
for (i = 2; i <=x / 2; i++)if (x% i ==0)printf(",d ",i);/找到完數的因子。
printf(""
return 0;
3樓:吉祥二進位制
簡單的寫了一個,原始碼如下:
#include
int main()
{int i,j;
int sum;
for(i=1;i<=100;i++)
{sum=0;
for(j=1;j
執行結果如下:
4樓:月光疾風
#include
int perfectnum(int);
int main()
;for(int i=1;i<=100;i++)printf("100以內的完全數有%d個,分別如下:",count);
for(i=0;i
5樓:阿蒙同學
#include
int main()
if (sum==n)
printf("%d\t",n);}
100以內的完全數只有1+2+3=6 ,1+2+4+7+14=28兩個數,你試試行不行。
用c語言編寫一個輸出100以內的完數的程式
6樓:聽不清啊
請對比修改的地方:
#include""
main()
printf("100以內有%d個完數",sum);
7樓:匿名使用者
你的sum從一開始賦值了1之後就沒有任何改變,我沒看懂輸出sum的值有什麼意義。
8樓:倒黴熊
你sum始終是1,你程式中又沒有改變。
#include""
main()
if(c==0) printf("%d",i);}
9樓:網友
#include
main()
if(sum==i)
printf("%d",i);}
s試試 我的吧 我已經 確認過了 應該還蠻容易懂的。
用c語言輸出1000以內所有的完數
10樓:我叫王土土豆
用c語言輸出1000以內所有的完數步驟如下:
1、首先開啟,新建一個專案。
2、新增標頭檔案。
3、新增main函式。
4、定義i,j,k,n,sum。
5、定義一個陣列。
6、使用第一層for迴圈。
7、使用第二層for迴圈,用來求出每位的數字。
8、使用if條件判斷語句。
9、執行程式看看結果。
11樓:free憂鬱小生
#include
//構造一個方法用來自動向陣列中新增新元素;
void add(int a,int j)}}void main()
}if(sum==n)
printf("%d",m[i]);
}}else}}}
12樓:12阿
你的if函式一直在迴圈。
用c語言程式設計:輸出2~100之間所有完數,完數是指該數各因子之和等於該數本身
13樓:做而論道
//一個數如果恰好等於它的因子之和,這個數就稱為「完數」。
//例如6的因子為1、2、3,而6=1+2+3,因此6是「完數」,/程式設計找出1000以內的所有完數:
#include
void main()
}程式執行結果:628496
c語言,求一個程式,輸出所有1000以內的完數
編寫程式:找出100以內的所有完數
14樓:做一個快樂的茶農
1、首先開啟,新建一個專案。
2、然後新增標頭檔案。
3、接著新增main函式。
4、然後定義i,j,k,n,sum。
5、接著定義一個陣列。
6、然後使用第一層for迴圈。
7、接著使用第二層for迴圈,用來求出每位的數字。
8、使用if條件判斷語句。
9、最後執行程式看看結果。
15樓:丿佔戈灬龍哥
完全數(perfect number),又稱完美數或完備數。它所有的真因子(即除了自身以外的約數)的和(即因子函式),恰好等於它本身。如果一個數恰好等於它的因子之和,則稱該數為「完全數」。
#include ""
int main()
return 0;}
用c語言 輸出1~1000的所有完數
c語言求100以內的完數,我寫了是這種情況,不明白**錯了,求原因
16樓:網友
**沒有語法錯誤,唯一的就是如果呼叫庫中的標頭檔案應該用<>;而不是"";但是也沒有什麼影響;我不知道什麼叫完數;但是你試下數就知道了;i=1的時候,j=1;裡層迴圈條件不成立;i=2的時候,i=1條件成立,sum=1;sum==i的條件不成立,所以不會輸出;i=3的時候sum =2;i=4的時候sum=5; i=5的時候sum=6;剛好每次sum都巧妙地跳過了i的值;所以一直不會輸出。
17樓:萌萌水月喵
第二個if語句放到第一個for迴圈li而不是第二個。
第二個for迴圈裡還要加上sum=0; 你這樣會一直累積。
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語言 輸出100以內所有能被3或5或7整除的數
for i 1 1 100 1 5和7同理,最近學別的語言,因為沒有軟體,格式啥的可能不太規範。思路是這樣的。int i 1 for i 1 i 100 i if i 3 0 i 5 0 i 7 0 printf d i c語言 程式設計求100至300間能被3,5,7同時整除的數,求這些數的和並將...
c語言 輸出100以內的素數 break的用法為什麼會有這
安然而止 if i n 的意思是判斷被除數是否小於除數,如果小於當然是不用再進行下去了。這個式子寫成if i n 2 更好,可以少算幾步。 每次從if n i 0 break 迴圈裡逃出來迴圈都能有2中結果,一 被i整除了,直接被break跳出i迴圈,這時程式還會往下跑,就有必要遮擋下對n的列印 我...