一个小程序,一直运行不出来,希望各位大神帮忙看一眼
c语言吧
全部回复
仅看楼主
level 4
# include<stdio.h>
void main()
{int i,j,sum1=0,sum2=0,k1=0,k2=0;
for(i=1;i<=1000;i++)
{for(j=1,sum1=0;j<i;j++)
if(i/j==0) sum1=sum1+j;
if(sum1==i) {if(k1<sum2) printf("完数%d+",k2);
k1=sum2; sum2=sum2+i; k2=i;}
}
printf("完数%d=和值%d\n",k2,sum2);}
谢谢了
2013年05月31日 03点05分 1
level 9
不明觉厉
2013年05月31日 03点05分 2
(✿✪‿✪。
2013年05月31日 03点05分
level 4
up起来,是C++的。。。。
2013年05月31日 03点05分 3
level 4
[乖]没人帮忙么。。。。。[泪]
2013年05月31日 03点05分 4
i % j == 0 还有就是这代码太乱了。
2013年05月31日 12点05分
level 11
老谭书本的习题还是例题的说?好像见过。
2013年05月31日 03点05分 5
啊。。。是我们老师给我们的实验上机的题目
2013年05月31日 05点05分
我们学的确实是谭浩强的书
2013年05月31日 05点05分
level 8
j不是<i吗,错了吧
2013年05月31日 05点05分 6
[乖]
2013年05月31日 16点05分
@亲爱的牛奶糖 j一直小于i吧。。
2013年05月31日 17点05分
回复 西尔瑞斯之王 :里面有j++,加到后面就会大于i了[乖]
2013年05月31日 17点05分
@亲爱的牛奶糖 当j=i的时候j会退出,而i也++了。结果应该是j先小于i一个单位,然后j++,j= =i,j退出,i++,然后继续循环下去。最多只会出现j= =i的情况吧。。。
2013年05月31日 17点05分
level 9
没有死循环,可以运行得出来的。
2013年05月31日 06点05分 7
[呵呵]
2013年05月31日 16点05分
level 7
意义不明,你先说说干什么的
写法很烂啊,然后别用sum1,sum2这种名字,看着就不舒服,for和if嵌套太多了吧,for(j=1,sum1=0;j<i;j++)这句有什么意义么?没有循环的过程,也可能是我没看懂,建议规范写法,该空空,该换行换行
重新写个流程吧
2013年05月31日 09点05分 8
回复 matclonex :我刚学。。。。其实一开始就有人指出我的程序风格糟糕,但是就是不知道该怎么改。。。求教[乖]
2013年05月31日 16点05分
这个题目是: 1.如果一个数恰好等于它的所有因子(包括1但不包括自身)之和,例如:6的因子为1,2,3,且1+2+3=6,因此6是一个“完数”。计算并输出1000以内的所有“完数”之和。具体要求如下:①所有循环均用for循环。 ②输出要有文字说明,并同时输出各“完数”。输出形式为:完数1+完数2+…=和值
2013年05月31日 16点05分
对了。。。。sum1 sum2为什么不好呢。。。。很多弄不清楚的望见谅求教[乖]
2013年05月31日 17点05分
回复 亲爱的牛奶糖 :确实你这么一描述把/换车%就出运行结果了。程序风格没有呢么玄,总得来说就3点,好好写格式,好好取名字,好好写注释
2013年06月01日 03点06分
level 5
楼主想得到的答案是什么啊?????
2013年05月31日 10点05分 9
这个题目是: 1.如果一个数恰好等于它的所有因子(包括1但不包括自身)之和,例如:6的因子为1,2,3,且1+2+3=6,因此6是一个“完数”。计算并输出1000以内的所有“完数”之和。具体要求如下:①所有循环均用for循环。 ②输出要有文字说明,并同时输出各“完数”。输出形式为:完数1+完数2+…=和值
2013年05月31日 16点05分
[乖]
2013年05月31日 17点05分
level 2
if(i/j==0)改为if(i%j==0)
2013年05月31日 11点05分 10
+1
2013年05月31日 12点05分
[乖]恩恩
2013年05月31日 16点05分
level 6
第七行少一个大括号,要看提示
2013年05月31日 11点05分 11
有良好的书写习惯就不会犯这种错误了
2013年05月31日 11点05分
好吧是我看错了
2013年05月31日 11点05分
回复 wjlywxl :[乖]恩恩,以后会注意的,从vc++6.0里复制过来乱了。。。。不过确实没写好
2013年05月31日 16点05分
回复 亲爱的牛奶糖 :- -顺便说,能不用vc6.0就不用,我自己用vs2012.但是不推荐,最好还是自己记事本打编译,依赖小,但是vs的集成在查错和编译上帮助挺大
2013年06月01日 03点06分
level 6
这代码太乱了,这是我见过最乱的代码,初学者估计都不会写出这种代码来。。。楼主这都是从哪学来的[汗]。。。编译运行是没有问题的,帮你测试了一下。用的是VC 6.0的编译器。。。
2013年05月31日 11点05分 12
谢谢。。。。这个代码怎么写才可以好看,我想了好久才想出来的,我水平太差了。。。。
2013年05月31日 16点05分
这个题目是: 1.如果一个数恰好等于它的所有因子(包括1但不包括自身)之和,例如:6的因子为1,2,3,且1+2+3=6,因此6是一个“完数”。计算并输出1000以内的所有“完数”之和。具体要求如下:①所有循环均用for循环。 ②输出要有文字说明,并同时输出各“完数”。输出形式为:完数1+完数2+…=和值
2013年05月31日 16点05分
level 9
这个求1000以内的完数,到现在都不知道完数是什么概念
2013年05月31日 12点05分 13
[乖]嗯哪
2013年05月31日 16点05分
level 6
2013年06月01日 03点06分 15
帮楼主修改了下排版,这样是不是看起来舒服多了呢?[吐舌]
2013年06月01日 03点06分
回复 福州小溢 :是很舒服呢,谢谢[太开心]
2013年06月04日 09点06分
1