| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 248 人关注过本帖
标题:下面这个代码,我是在不明白为什么又是死循环?有谁能够给我分析一下问题出 ...
只看楼主 加入收藏
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
下面这个代码,我是在不明白为什么又是死循环?有谁能够给我分析一下问题出在哪里?分析一下每一行的代码代表的作用吗?
#include<stdio.h>
int main()
{
    int n=1,j,sum=0;
        for(j=1;j<=10;j+=2,n++)//
        {
        if(n%2==0)              //   
            {
                j=-1*j;        //
            }
            sum=sum+j;         //
            printf("%d",sum);  //
            printf("\n");     //
        }
        return 0;
}
        
请帮我在//后面注释解释!
2012-11-27 13:52
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:5 
for(j=1;j<=10;j+=2,n++)//
由于j<=10 是一个永真值
所以循环无法退出

DO IT YOURSELF !
2012-11-27 13:58
sisox
Rank: 2
等 级:论坛游民
帖 子:19
专家分:28
注 册:2012-1-25
收藏
得分:5 
if语句有问题

[ 本帖最后由 sisox 于 2012-11-27 14:06 编辑 ]
2012-11-27 13:59
sisox
Rank: 2
等 级:论坛游民
帖 子:19
专家分:28
注 册:2012-1-25
收藏
得分:0 
你第一次循环 j=1 循环完以后j=3 第二次循环 if中 j=-3 循环完后 j=j+2=1
死循环
收到的鲜花
  • love云彩2012-11-27 14:34 送鲜花  3朵  
2012-11-27 14:04
lxsjzbd
Rank: 4
来 自:河北省
等 级:业余侠客
帖 子:97
专家分:258
注 册:2012-3-31
收藏
得分:5 
把printf("\n")改成这个自己看一下吧:
printf("------%d\n",j);
if(n==50)
{
    break;
}
2012-11-27 14:14
快速回复:下面这个代码,我是在不明白为什么又是死循环?有谁能够给我分析一下问 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024350 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved