| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 593 人关注过本帖
标题:vc2010 exe 运行问题
只看楼主 加入收藏
SCDWUHAN
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-11-17
结帖率:0
收藏
已结贴  问题点数:20 回复次数:8 
vc2010 exe 运行问题
#include
void main()
{
    int nd[9]={0},nc=0,no=0,c,i;
    while((c=getchar())!=EOF)
    {  
        for(i=0;i<=8;i++)
        {
          if(c=='i')
              nd[i]++;
        }
        if(c='\n'||c=='\t'||c==' ')
            nc++;
        else no++;


    }
    for(i=0;i<=8;i++)
    {
     printf("%d",nd[i]);
    }
    printf("%d %d",nc,no);


}


这段程序用来计数 字符 数字 等

问题是在编译成功后 出现exe运行环境,我输入几个字符,数字,然后按回车 ,但是程序并不执行,输出nd nc no,而是继续输入

望大神赐教
 
搜索更多相关主题的帖子: 运行环境 
2013-07-10 14:32
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
收藏
得分:10 
在#include后面补上<stdio.h>

思考赐予新生,时间在于定义
2013-07-10 15:32
SCDWUHAN
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-11-17
收藏
得分:0 
回复 2楼 love云彩
不好意思 这是copy的时候漏了  程序里有的
2013-07-10 17:16
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
收藏
得分:0 
楼主把你的运行截图发上来,看看是什么问题

思考赐予新生,时间在于定义
2013-07-10 20:43
SCDWUHAN
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-11-17
收藏
得分:0 
回复 4楼 love云彩
运行情况就是:第一行输入完字符后。按回车,它仍然是让我输入字符,而不是执行程序。
2013-07-12 20:21
qq525273446
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:54
专家分:161
注 册:2009-11-18
收藏
得分:10 
while((c=getchar())!=EOF)
c=getchar()得到标准输入的字符,在计算机中是ASC码,范围是0---255
EOF  是宏名  #define EOF -1
这两个是恒不等的  所以出现读入死循环

找工作中……
2013-07-12 21:44
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
收藏
得分:0 
请问楼主想在什么条件下就停止循环?

思考赐予新生,时间在于定义
2013-07-12 22:07
qq525273446
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:54
专家分:161
注 册:2009-11-18
收藏
得分:0 
void main()
{
    int nd[9]={0},nc=0,no=0,c,i;//char c;
    while((c=getchar())!=EOF)//改成while(c=getchar())),并在加个退出判断
    {  
        for(i=0;i<=8;i++)
        {
          if(c=='i')//该句是字符C与‘i’的比较,而不是比较数字,改为if(c==(i+'0'))
              nd[i]++;
        }
        if(c='\n'||c=='\t'||c==' ')
            nc++;
        else no++;


    }
    for(i=0;i<=8;i++)
    {
     printf("%d",nd[i]);
    }
    printf("%d %d",nc,no);


}



找工作中……
2013-07-12 22:13
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
收藏
得分:0 
我强烈建议楼主先去把getchar()以及EOF的用法弄懂了再说

思考赐予新生,时间在于定义
2013-07-12 22:34
快速回复:vc2010 exe 运行问题
数据加载中...
 
   



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

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