点赞(0)
 

0.0分

311 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 135 条评论

0205李少明19 2年前 回复TA
@暗中讨饭 对啊
暗中讨饭 2年前 回复TA
@暗中讨饭 @luokeli 对啊对啊,你写的代码也是k的初始值为0吗?如果为0,假设有三个因子,因为k++是先原来的值再自增,那么第一个因子不就是k0吗,三个因子分别是k0,k1,k2?
0205李少明19 2年前 回复TA
@暗中讨饭 我一开始写的代码和他不一样所以一开始说的可能不对,那个是我一开始出现的错误
0205李少明19 2年前 回复TA
@绝恋红尘lx 第二个循环
0205李少明19 2年前 回复TA
@绝恋红尘lx 兄弟,你确定是i自增吗
0205李少明19 2年前 回复TA
@暗中讨饭 最后如果你一定要等于的话,他多出来的那个值没有,所以只能出来一个随机数
0205李少明19 2年前 回复TA
@暗中讨饭 最后的K是比你说的那个大1的
0205李少明19 2年前 回复TA
@暗中讨饭 k++是先表达原来的值之后在实现自增,也就是说最后是K3
温良律度 2年前 回复TA
//求“完数”,即a%b=0.
#include<stdio.h>
int main(){
//第一步:先求出这个数的因子。 
int i,S,n,j,N,k=0,arr[k];//S是每个数的因子之和. 
scanf("%d",&N);
   //内层循环求因子,外层循环求完数. 
  for(i=1,k=0;i<=N,k<=n;i++,k++){
  	for(j=1;j<=i;j++,k++){
  		if(i%j==0 && i != j)
  		arr[k]=i;//求出每一个数的因子放在数组中 
	  }
	  n=sizeof(arr)/sizeof(int);
	  S+=arr[k];//将数组中的所有因子求和 
	if(i==S){//判断是否为完数 
	for(k=0;k<=n;k++)
  	printf("%d its factors are %d ",j,arr[k]);}
  	  }
    return 0;}
大佬看看为啥不行啊???
暗中讨饭 2年前 回复TA
@暗中讨饭 @luokeli 但是上面不是说了j小于i了吗,不是原本就取不到i吗?k是从0开始的吧,如果因子是三个那么就是k0,k1,k2;下面l小于k的话,不是只有了l[0],l[1]两个因子了吗?