网站首页 > 文章中心 > 其它

c语言用函数求因子和

作者:小编 更新时间:2023-08-16 11:25:15 浏览量:264人看过

c语言求一个数的因子之和

#include stdio.h

# include stdlib.h

#define N 100

long factor(int m,int fac[],int *cp){

long s;

fac[0]=1;

k=m/i;

if(m%i==0){

if(i!=k){

fac[c1◆◆]=i;

s◆=i◆k;

printf("i=%d k=%d\n",i,k);

}else{

s◆=i;

}

i◆◆;

if(i=k) break;//这个时候k已经开始等于自身的根号,或者将要出现和之前k对称的i,引起自身重复故退出

*cp=c1;

return s;

int main(int argc, char const *argv[])

{

/* code */

int factors[N],i,count;

long sum;

sum = factor(atoi(argv[1]),factors,count);

for(i=0;icount;i◆◆){

printf("\n\n");

return 0;

扩展资料:

有一种说法是"因子不限正负",不过通常情况下只取正因子.

①., -1, n 和 -n 这些数叫做 n 的明显因子

C语言初学者的问题,如何求一整数的所有因子之和?

对于整数n,采用循环从1到n-1进行检查,如果检测到是n的因数,则将该数累加起来,最后输出结果即可.参考代码如下:

#include?stdio.h

int?main()

int?sum=0;

int?n=0;?

int?i,m=0;

scanf("%d",?n?);?//输入一个整数

if?(?n=?0?)?//只统计正整数

return?-1;

printf("1");?//最小的因数是1,必然存在

sum?=?1;

if?(?n%i==0?)?//能整除,是因子

sum?◆=?i?;?//累加

printf("◆%d",?i?);?//输出该因子

printf("=%d\n",?sum?);?//输出因子和

return?0;

C语言:编写函数,计算出形参n的所有因子之和(包括1与自身)?

程序的执行效率非常高(瞬间就完成):

#include "stdio.h"

int fun(int n)

{int i,s=n◆1;

if(n%i==0)s◆=i◆n/i;

if(i*i==n)s◆=i;

main()

{ int k;

scanf("%d",k);

printf("%d\n",fun(k));

用C语言:求一个数的因子和(因子不包括自身)

#includestdio.h

{?

int?n,i,s;?

while(scanf("%d",n)!=EOF)?

s=1;?//如果不需要包含1,可改为s=0

printf("因子列表:%d?",s);?

{??

if(n%i==0)

printf("%d?",i);?

s◆=i;??

}?

printf("\n因子和:s=%d\n",s);?

以上就是土嘎嘎小编为大家整理的c语言用函数求因子和相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章