include<stdio.h>void main(){ int i=1,j=1,k,m,sum=0; for(k=1;k<=43;k++) { i=j+i; m=i; i=j; j=m; k++; sum=sum+i; } printf("%d\n",sum);}这个程序为么不对啊?帮忙修改一下。谢谢
2 回答
已采纳
杰伦窗外的小麻雀
TA贡献16条经验 获得超7个赞
//写的很乱啊,你把裴波拉契数放到一个数组arr里,然后照着下边的程序运行
var add=0;
for(var i=0;i<44;i++){
add+=arr[i];
}
printf("%d\n",add);
杰伦窗外的小麻雀
TA贡献16条经验 获得超7个赞
第一个原因是你循环的时候i从1开始,结果到了43就停止了,等于你只循环了42次,那就只取到了前42个数;
第二个原因是你for循环体力写了一堆无用的东西,每次循环你里面的值都会被改为初始值,而且sum的运算也是错的;
这个for本身写的逻辑就是错的,所以达不到效果很正常,希望之前的那个答案对你有帮助
- 2 回答
- 0 关注
- 1088 浏览
添加回答
举报
0/150
提交
取消