欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語(yǔ)言例題之輸出1000以?xún)?nèi)的所有完數(shù)

 更新時(shí)間:2022年11月24日 09:23:51   作者:鑫宇_  
完數(shù)是一些特殊的自然數(shù),它所有的真因子(即除了自身以外的約數(shù))的和(即因子函數(shù)),恰好等于它本身,如果一個(gè)數(shù)恰好等于它的因子之和,則稱(chēng)該數(shù)為“完數(shù)”,這篇文章主要給大家介紹了關(guān)于C語(yǔ)言例題之輸出1000以?xún)?nèi)的所有完數(shù)的相關(guān)資料,需要的朋友可以參考下

一個(gè)數(shù)如果恰好等于它的各個(gè)因子之和,這個(gè)數(shù)就稱(chēng)為“完數(shù)”。例如,6的因子為1,2,3,而6=1+2+3,因此6是“完數(shù)”。編程找出1000之內(nèi)的所有完數(shù),并按下面的格式輸出其因子:

6 its factors are 1,2,3

#include "stdio.h"

void main() {
    int i, j, sum, k;
    for (i = 2; i <= 1000; i++) {
//        每判斷一個(gè)數(shù)時(shí),將sum置為0
        sum = 0;
//        這個(gè)地方不寫(xiě)“=”,排除這個(gè)數(shù)自身 真因子指的是除了自身以外的約數(shù),完數(shù)概念中的“因子”是“真因子”
        for (j = 1; j < i; j++) {
//            如果能被整除,則j即為i的因子
            if (i % j == 0) {
//             將這個(gè)數(shù)的各個(gè)因子加起來(lái)
                sum += j;
            }

        }
//        說(shuō)明這個(gè)數(shù)是完數(shù),找到其因子并按照規(guī)定格式輸出即可
        if (sum == i) {
//            輸出前半部分 “x its factors are”
            printf("%d its factors are ", i);
//            輸出這個(gè)數(shù)的每一個(gè)因子
            for (k = 1; k < i; k++) {
                if (i % k == 0) {
                    printf("%d,", k);
                }
            }
//          光標(biāo)退到最后一個(gè)逗號(hào)位置之上然后輸出空格使逗號(hào)消失
            printf("\b ");
//            換行
            printf("\n");

        }
    }
}

運(yùn)行結(jié)果:

初學(xué)C語(yǔ)言,如有錯(cuò)誤,還望指正,因考試需要,代碼運(yùn)行環(huán)境為:

不同編譯器和不同版本C語(yǔ)言代碼略有不同。

附:1000以?xún)?nèi)所有完數(shù),并打印出因子——C語(yǔ)言

完數(shù)(Perfect number),又稱(chēng)完美數(shù)或完備數(shù),是一些特殊的自然數(shù)。它所有的真因子(即除了自身以外的約數(shù))的和(即因子函數(shù)),恰好等于它本身。如果一個(gè)數(shù)恰好等于它的因子之和,則稱(chēng)該數(shù)為“完數(shù)”。

// 完數(shù)  真因子 
#include <stdio.h>

int main(){
	int i,j,k;
	printf("1000以?xún)?nèi)的所有完數(shù):\n");
	for(i=1;i<=1000;i++){
		int sum=0;
		for(j=1;j<=i/2;j++){
			if(i%j == 0){
				sum += j; // 把所有的因子全部加起來(lái) 
			}	
		}
		if(sum == i){  // 加起來(lái)的因子和如果等于i,就是完數(shù) 
			printf("%d its factors are: ", i);
			for(k=1;k<=i/2;k++){
				if(i%k == 0){
					printf("%d, ", k);
				}	
			}
			printf("\n");
		}	
	}
	return 0;
} 

總結(jié)

到此這篇關(guān)于C語(yǔ)言例題之輸出1000以?xún)?nèi)的所有完數(shù)的文章就介紹到這了,更多相關(guān)C語(yǔ)言輸出1000內(nèi)所有完數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論