C 使用循环查找除数
我为下面的程序编写了代码,但我不明白如何使用函数。这个问题要求我使用一个返回除数和的函数。请看一看问题和我的代码,并尝试帮助我 问题是: 编写一个C程序,查找并打印所有除数的和 数字介于101和110之间。x的除数是那些数字 x除不带余数(例如,数字10的除数为1, 2,5和10的和=1+2+5+10=18,11的除数 是1和11,它们的和=1+11=12,依此类推)。 您的程序还应该打印除数和最大的数字(101到110) 您的程序应该至少使用一个名为div_sum的函数 获取一个数字并返回其除数之和 我的代码:C 使用循环查找除数,c,C,我为下面的程序编写了代码,但我不明白如何使用函数。这个问题要求我使用一个返回除数和的函数。请看一看问题和我的代码,并尝试帮助我 问题是: 编写一个C程序,查找并打印所有除数的和 数字介于101和110之间。x的除数是那些数字 x除不带余数(例如,数字10的除数为1, 2,5和10的和=1+2+5+10=18,11的除数 是1和11,它们的和=1+11=12,依此类推)。 您的程序还应该打印除数和最大的数字(101到110) 您的程序应该至少使用一个名为div_sum的函数 获取一个数字并返回其除
#include <iostream>
#include <stdio.h>
int main()
{
int i=1, x=101, sum, smax=0, xmax=0;
for (x=101; x<=110; x++)
{ sum=0;
for(i=1; i<=x; i++)
{
if(x%i==0)
sum+=i;
}
if(sum>smax)
{
smax=sum;
xmax=x;
}
printf("The sum of factors of %d = %d\n",x,sum);
}
printf("The number that has the maximum sum of divisors is %d with the sum of %d",xmax,smax);
return 0;
}
#包括
#包括
int main()
{
int i=1,x=101,和,smax=0,xmax=0;
对于(x=101;x,可以将计算每个x的除数之和的循环移动到单独的函数:
int div_sum(int x) {
int sum = 0;
for(int i=1; i<=x; i++)
{
if(x%i==0)
sum+=i;
}
return sum;
}
int div\u sum(int x){
整数和=0;
对于(int i=1;i,可以将计算每个x的除数之和的循环移动到单独的函数:
int div_sum(int x) {
int sum = 0;
for(int i=1; i<=x; i++)
{
if(x%i==0)
sum+=i;
}
return sum;
}
int div\u sum(int x){
整数和=0;
对于(int i=1;i对于循环中的每个数字,调用该函数。该函数应包含当前循环中的所有代码。对于循环中的每个数字,调用该函数。该函数应包含当前循环中的所有代码。您的代码实际上非常接近
以下是我所做的:
void div_sum()
{
int sum;
int max_sum = 0;
int max_num;
for (int x = 101; x <= 110; x++)
{
sum = 0;
for (int i = 1; i <= x; i++)
if (x%i == 0)
sum = sum + i;
printf("\nFor the number %d, the sum of the divisors is %d\n", x, sum);
if (sum > max_sum)
{
max_sum = sum;
max_num = x;
}
}
printf("max = %d\n", max_num);
}
void div_sum()
{
整数和;
int max_sum=0;
int max_num;
对于(intx=101;x,您的代码实际上非常接近
以下是我所做的:
void div_sum()
{
int sum;
int max_sum = 0;
int max_num;
for (int x = 101; x <= 110; x++)
{
sum = 0;
for (int i = 1; i <= x; i++)
if (x%i == 0)
sum = sum + i;
printf("\nFor the number %d, the sum of the divisors is %d\n", x, sum);
if (sum > max_sum)
{
max_sum = sum;
max_num = x;
}
}
printf("max = %d\n", max_num);
}
void div_sum()
{
整数和;
int max_sum=0;
int max_num;
对于(int x=101;x),除了不使用函数div\u sum
之外,代码看起来很好。除了不使用函数div\u sum
之外,代码看起来很好。