我在想,我怎样才能把运行代码后显示的除数相加呢?
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n, i;
scanf("%d", &n);
for(i = 1; i < n; i++)
{
if(n % i == 0)
{
printf("%d\n", i);
}
}
return 0;
}
如果我进入,比如说,25,它会打印出1,5。我在想怎么把1号和5号相加?
最佳答案
能这么简单吗?您需要使用一个简单的递增运算符(+=)来递增变量sum
。
int main(void)
{
int n, i, sum = 0;
if( scanf("%d", &n)!= 1){
fprintf(stderr,"Error in input\n");
exit(EXIT_FAILURE);
}
for(i = 1; i < n; i++)
{
if(n % i == 0)
{
printf("%d\n", i);
sum += i;
}
}
printf("Sum of divisors: %d\n", sum);
return 0;
}
关于c - C编程:如何将整数n的除数相加,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48837684/