C语言程序:求1000以内的完数并且并且按照以下格式输出因子: 6 its factors are 1,2,3 用c语言编码1000一杯的所有完数,并按下面格式输出其因子:...

C\u8bed\u8a00\u6c421000\u4ee5\u5185\u7684\u5b8c\u6570\uff0c\u6700\u540e\u8f93\u51fa\u683c\u5f0f\u4e3a6:its factors are 1\uff0c2\uff0c3.\u5728\u7ebf\u7b49

#include
#include
int main()
{
int i, j, k;
int sum = 1;
printf("\u5b8c\u6570\u5982\u4e0b");
for (j = 6; j<1000; j++)
{
sum = 1; //\u52a0\u4e0a\u8fd9\u53e5\u3002sum\u6bcf\u6b21\u7528\u5b8c\u6ca1\u6709\u4ece\u65b0\u521d\u59cb\u5316
for (i = 2; i <= sqrt((float)j); i++)
{
if (j%i == 0)
sum = sum + i + j / i;
}
if (sum == j)
{
printf("\n%d its factors are:1", sum);
for (k = 2; k <= sqrt((float)sum); k++)
{
if (sum%k == 0)
printf(",%d,%d", k, sum / k);
}
}

}
}

int m, i, s;
for (m = 1; m <= 1000; m++)
{
s = 0;
for (i = 1; i < m; i++)
if (m%i == 0)
s = s + i;
if (s == m)
{
printf("\n%d=", s);
for (i = 1; i < m; i++)
if (m%i == 0)
{
printf("%d", i); printf("+");
}
}
}
\u7ed9\u4f60\u4e2a\u5bf9\u7684 \u81ea\u5df1\u8c03\u8c03\uff0c\u770b\u770b\u81ea\u5df1\u54ea\u91cc\u9519\u4e86

//楼上的完全错了,不信你自己运行试试
#include<stdio.h>
void main()
{
int i,j,k;
int sum=1;
printf("完数如下:");
for(j=6;j<1000;j++)
{
sum = 1;   //每次循环都要将sum赋值1
for(i=2;i<=j/2;i++) //这个需要小于j/2,而不是sqrt(j)
{
if(j%i==0)
sum=sum+i;
}
if(sum==j)
{
printf("
%d its factors are:1",sum);
for(k=2;k<=j/2;k++)//这个需要小于j/2,而不是sqrt(sum)
{
if(sum%k==0)
printf(",%d",k);
}
}
}
printf("
");
}



#include<stdio.h>
#include<math.h>
int main()
{
int i, j, k;
int sum = 1;
printf("完数如下");
for (j = 6; j<1000; j++)
{
sum = 1; //加上这句。sum每次用完没有从新初始化
for (i = 2; i <= sqrt((float)j); i++)
{
if (j%i == 0)
sum = sum + i + j / i;
}
if (sum == j)
{
printf("\n%d its factors are:1", sum);
for (k = 2; k <= sqrt((float)sum); k++)
{
if (sum%k == 0)
printf(",%d,%d", k, sum / k);
}
}

}
}

/*

完数如下

6 its factors are:1,2,3

28 its factors are:1,2,4,7,14

496 its factors are:1,2,4,8,16,31,62,124,248


Press any key to continue

*/

#include <stdio.h>
#include <math.h>
int main () {
int i,j,n,k,sum;
int factors[10];
printf("完数如下
");
for(n = 6;n < 1000; ++n) {
sum = 1;
k = n;
j = 0;
for(i = 2;i <= k/2;i++) {
if(k%i == 0) {
sum += i;
factors[j++] = i;
}
}
if(sum == n) {
printf("%d its factors are:1",sum);
for(i = 0; i < j; ++i)
printf(",%d",factors[i]);
printf("
");
}
}
printf("
");
return 0;
}


  • 璁$畻1000浠ュ唴鐨瀹屾暟(C璇█)
    绛旓細宸茬粡鏀瑰ソ浜嗭細include<stdio.h> int main(){ int m,i,sum;for(m=1;m<=1000;m++){sum=0;for(i=1;i<m;i++)if(m%i==0)sum+=i;if(sum==m)printf("%d ",m);} printf("\n");system("pause");return 0;}
  • 缂栧啓涓娈C璇█绋嬪簭,鍔熻兘涓:鎵惧嚭1000涔嬪唴鐨鎵鏈夊畬鏁,骞舵寜涓嬮潰鏍煎紡杈撳嚭鍏...
    绛旓細include <stdio.h> int main(){ int i,j,sum;for(i=2;i<1000;++i){ for(j=1,sum=0;j<i;++j){ if(i%j==0){ sum+=j;} } if(sum==i){ printf("%d: its factors are 1",i);for(j=2;j
  • C璇█ 姹1000浠ュ唴鐨瀹屾暟 涓涓暟濡傛灉鎭板ソ绛変簬瀹冪殑鍥犲瓙涔嬪拰,杩欎釜鏁板氨绉...
    绛旓細include<stdio.h> int main(){ int i,j,sum=1;int b[100];for(i=3;i<=1000;i++){ sum=1;int k=0;for(j=2;j<i;j++)if( i%j==0) {sum+=j;b[k++]=j;} if(i==sum){ printf("%d its factors are %d",i,b[0]);for(int a=1;a<k; a++)printf(",%d",b[a...
  • 鐢C璇█缂栫▼鎵惧嚭1000浠ュ唴鐨鎵鏈夊畬鏁般(娑夊強鐭ヨ瘑鐐:for璇彞鍜宨f璇彞...
    绛旓細涓涓暟锛屾墍鏈夌殑鐪熷洜瀛愶紙鍗抽櫎浜嗚嚜韬互澶栫殑绾︽暟锛夌殑鍜岋紝鎭板ソ绛変簬鏈韩锛岀О涓哄畬鏁般傛墍浠ワ紝瑕佺‘璁ゆ槸鍚︿负瀹屾暟锛屽彧瑕佹妸鎵鏈夌湡鍥犲瓙鐩稿姞鍒ゆ柇鍗冲彲銆備簬鏄紝杩欎釜棰樼洰鐨勭紪绋嬫濊矾涓猴細1 閬嶅巻1~1000锛2 瀵规瘡涓暟锛屽垽鏂槸鍚︿负瀹屾暟锛屽鏄紝鍒欒緭鍑猴紱3 绋嬪簭缁撴潫銆備唬鐮佸涓嬶細include <stdio.h>int main(){ int n, i...
  • C璇█棰樼洰 缂栫▼ 鎵惧嚭1000浠ュ唴鐨鎵鏈夆濆畬鏁扳,鎵璋撯濆畬鏁扳滄槸鎸囦竴涓暟...
    绛旓細include<stdio.h> int main(){ int i,j,s;for(i=2;i<=1000;i++){ s=1;for(j=2;j<=i/2;j++)if(i%j==0)s+=j;if(s==i)printf("%d\n",i);} getch();return 0;}
  • C++缂栫▼: 姹1000涔嬪唴鐨瀹屽叏鏁般傝鏄:瀹屽叏鏁板氨鏄:闄や簡瀹冩湰韬互澶栨墍鏈夊洜瀛...
    绛旓細姹1000浠ュ唴鐨瀹屾暟鐨C璇█浠g爜濡備笅:include int main(){ int n=1000;int r,j,i;for(i=1;i<=n; i++){ r = 0;for(j=1;j
  • c璇█缂栫▼,杈撳叆1000浠ュ唴鐨瀹屽叏鏁
    绛旓細include <stdio.h>int main() {int n,i,sum;for(n = 2; n <= 1000;n++) {sum = 0;for(i = 1; i < n;i++)if(n % i == 0) sum = sum + i;if(sum == n) {printf( "%d its factors are:\n",n);for(i = 1; i < n; i++)if(n%i == 0) printf("%d "...
  • 璇烽棶 姹1000浠ュ唴瀹屽叏鏁扮殑c璇█绋嬪簭鎬庝箞鍐,骞朵笖缁撴灉瑕佹寜鏍煎紡杈撳嚭鍥犲瓙,濡...
    绛旓細鍥炵瓟濡備笅锛歩nclude "stdio.h"int main(void){ int i,j,m; for(i=4;i<1000;i+=2){ for(m=1,j=2;j*j<=i;j++) if(!(i%j)) m+=(j!=i/j ? j+i/j : j); if(m==i){ printf("%3d = 1",i); for((m>>=1)+=1,j=2;j<m;j++) ...
  • C璇█鐢ㄥ嚱鏁姹1000浠ュ唴鐨瀹屾暟鐨勫拰!鎬!
    绛旓細瀹屽叏鏁版槸闄よ嚜韬鐨勬墍鏈夊洜瀛愪箣鍜屼笌鑷韩鐩哥瓑鐨勬暟銆傜敤涓涓猣or寰幆妫鏌2鑷1000鐨鍋舵暟(杩勪粖涓烘鍙戠幇鐨勫畬鏁板叏鏄伓鏁)锛岃嫢绗﹀悎鏉′欢鍒欒緭鍑烘鏁般傛鏌ユ椂锛岀敤鍙︿竴for寰幆璁℃暟鍙橀噺浠2寮濮嬫闀夸负1鑷虫鏁扮殑涓鍗婂幓闄ゆ鏁帮紝鑳芥暣闄ょ殑绱姞姹傚拰(1鍥犲瓙涓嶇敤妫鏌ワ紝鐩存帴璁″叆鍜)锛屾渶鍚庝笌姝ゆ暟姣旇緝鏄惁鐩哥瓑锛岀浉绛夌殑鍒欐槸瀹屾暟銆
  • C璇█姹 1000浠ュ唴鐨瀹屽叏鏁
    绛旓細閲嶇疆sum鐨勪綅缃敊浜嗭紝鏀惧埌鍐呭惊鐜殑寮澶达細include <stdio.h>int wanquanshu(){int n, i, k, sum;while (scanf("%d", &n)!=EOF){for (i=1; i<=n; i++){sum=0; //鏀惧湪杩欓噷for (k=1; k
  • 扩展阅读:初学编程必背50个 ... 编程题库100题 ... 编程求1000以内的完数 ... c语言必背100代码 ... c十十编程要学多久 ... 用c语言求1到100的和 ... 编程必背100个代码 ... c语言求1-100以内奇数和 ... c语言编程题经典100例 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网