为了账号安全,请及时绑定邮箱和手机立即绑定

为什么提交显示提交中没有反应,是哪里出错了吗?

#include <stdio.h>

int main()

{

    

    int sum = 0;  

    int i = 1;    

    int flag= 1; 

    for(i=1;i<=100;i++)

    {

     i=i*flag;

     sum=sum+i;

     flag=-flag;

    }  

    printf("sum=%d\n",sum); 

    

    return 0;    

}


正在回答

2 回答

不该在循环里对i赋值 造成了死循环

第一次:i=1,i=1,flag= -1

第二次:i=2,i=2*(-1)=-2 , flag= 1

第三次:i=-2+1=1,i=1*1=1,flag=-1(与第一步相同,开始死循环,i值永远不满足跳出循环的条件)

0 回复 有任何疑惑可以回复我~
#1

慕村2300946 提问者

谢谢。
2019-04-13 回复 有任何疑惑可以回复我~

i=i*flag使循环变成了死循环

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926019    人
  • 解答问题       20793    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

为什么提交显示提交中没有反应,是哪里出错了吗?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信