用C语言:计算并输出给定整数N的所有因子(不包括1与自身)之和

如题所述

思路:输入一个数n,接着for循环从2到n-1依次整除n,如果能被整除则累加,最后输出累加和。

参考代码:

#include<stdio.h>
int main()
{
    int n,i,sum=0;
    scanf("%d",&n);
    for(i=2;i<n;i++)
     if(n%i==0)
     sum+=i;
    printf("累加和为:%d\n",sum);
    return 0;
}
/*
6
累加和为:5
*/
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-02-23
#include <stdio.h>
main()
{
int n,i,sum=0;
printf("input:");
scanf("%d",&n); //输入整数
for(i=2;i<n;i++)
if(n%i==0)//判断是否为其因子
sum+=i;//累加起来
printf("%d的因子之和为%d\n",n,sum);//输出
}本回答被提问者和网友采纳
第2个回答  2009-04-14
void main()
{
int N = 325151;
int sum =0;
for (int i=2; i<=N/2; ++i)
{
if (N%i == 0) sum += i;
}
printf("因子和: %d", sum);
}

用C语言:计算并输出给定整数N的所有因子(不包括1与自身)之和
思路:输入一个数n,接着for循环从2到n-1依次整除n,如果能被整除则累加,最后输出累加和。参考代码:include<stdio.h>int main(){ int n,i,sum=0; scanf("%d",&n); for(i=2;i<n;i++) if(n%i==0) sum+=i; printf("累加和为:%d\\n",sum); return 0;...

\/* 计算正整数n所有因子(1和n除外)之和。(用C语言编程)
void main(){ int n;int s=0;printf("请输入一个正整数:");scanf("%d",&n);printf("该整数除1和其本身的因子为:\\n");for(int i=2;i<=n\/2;i++){ if(n%i==0){ printf("%d\\t",i);s=s+i;} } printf("\\n%s%d\\n","所有因子之和为:",s);} ...

用C语言:求一个数的因子和(因子不包括自身)
=EOF) { s=1; \/\/如果不需要包含1,可改为s=0 printf("因子列表:%d ",s); for (i=2;i<=n\/2+1;i++) { if(n%i==0) { printf("%d ",i); s+=i; } } printf("\\n

急求C语言程序编程:从键盘输入一个数,输出他的因子和(因子不包括自身...
int n,sum=0,i;printf("请输入一个整数:");scanf("%d",&n);for(i=1;i<=n\/2;i++)if(n%i==0) \/\/能整除,则是因子,加到sum上去 sum+=i;printf("%d不包含自身的因子和为%d\\n",n,sum);} 6的因子1,2,3加到一起是6,正确 ...

c语言如何求一个数n的各位数字之和?
输出该数的各位数字之和的源代码如下:include <stdio.h> int fun(int n){ int i;int sum=0;if(n>1000||n<0){ puts("输入的数字超出范围!"); \/\/ 错误信息提示 } else { for(i=2;i<n;i++) \/\/ 循环遍历n,取出因子,并进行累加 { if(0 == n%i){ sum+=i;} } } return...

c语言 输入一个正整数n,输出n的所有因子
直接输出结果:当您需要在C语言中编写程序来找出一个正整数n的所有因子时,首先需要定义一些整型变量,以便进行运算。程序的流程如下:步骤1:初始化两个整数变量n和m,确保它们都是大于2的正整数,作为输入。步骤2:设置一个临时变量t,其值为m,同时定义一个变量i,初值设为2,用于遍历可能的因子。...

c语言 输入一个正整数n,输出n的所有因子
把if(x=0)改成 if (x == 0)这种错误初学者经常会犯,老手也不能避免,一个偏方是写这种语句时把数值放在前面,比如写成 if (0 == x)这样如果你漏了个等号,写成了 if (0 = x),编译时编译器会报错

c语言:计算正整数n的所有质因子之和作为函数值返回,并输出该值
include "stdio.h"main(){ int add();int n,sum;scanf("%d",&n);sum=add(n);printf("%d",sum);} int add(int p){ int i,sum1=0;for(i=2;i

如何用 C语言 输出一个整数的因子
如果利用C语言求一个整数n的因子,可以从1开始到n,依次加1,如果它是n的的因子,则输出。具体的源码实现如下:#include <stdio.h>#include <stdlib.h>int main(int argc, char* argv[]){ int n; while(scanf("%d",&n) !=EOF) { if(n<1)break; int i; for(i=...

c语言 输入一个正整数n,输出n的所有因子
4、用do-while语句执行循环,判断条件为i<m。5、用i对整数m求余,保存在变量r中。6、判断i是否m的质因子,如果是则继续判断是否n的质因子,如果不是n的质因子,则退出循环。7、如果i不是质因子,则自加1,继续判断。8、运行程序,输入两个大于2的正整数后,计算机就会判断整数n是否包含m的所有...

相似回答