| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 379 人关注过本帖, 1 人收藏
标题:求助 怎么跳不出循环??
取消只看楼主 加入收藏
wczl520
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-1-14
结帖率:100%
收藏(1)
已结贴  问题点数:5 回复次数:2 
求助 怎么跳不出循环??
#include <stdio.h>
#include <string.h>

int main()
{
    char a[100],c;
    int i = 0,sum = 0;

    gets(a);

    do {
         while ( (c = a[i]) == ' ') i++ ;
         if (c != '\0') sum++ ;
        while ( (c = a[i]) != ' ' && c != '\0 ') i++;
    }while (c != '\n') ;
        
        printf ("单词个数为%d",sum);
        return 0;
}
高手帮忙看看吧,为什么最后我的编译器跟踪显示的是c = ‘?’啊!!!!
搜索更多相关主题的帖子: return 编译器 
2011-04-05 16:48
wczl520
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-1-14
收藏
得分:0 
我刚开始的时候也是用的‘\0’但是也是一样的 ,结果c的值后面就变成是‘?’了,而不是结束符‘\0’
2011-04-05 19:36
wczl520
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-1-14
收藏
得分:0 
谢谢各位!!!
  楼上的我慢慢分析一下
 呵呵!!
  其实我是想知道为什么,我用gets输入数以后,在字符串结束时,不是以‘\0’结尾。
2011-04-05 22:25
快速回复:求助 怎么跳不出循环??
数据加载中...
 
   



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

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