| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3513 人关注过本帖
标题:使用visual studio2013 编译《C程序设计语言》习题1-13的时候出错
只看楼主 加入收藏
wuchujie
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2015-7-26
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:18 
使用visual studio2013 编译《C程序设计语言》习题1-13的时候出错
新人 第一次发文。
具体代码如下

程序代码:
/*练习1-13 编写一个程序,打印输入中单词长度的直方图。水平方向的直方图比较容易绘制,垂直方向的直方图则要困难些。*/
#include <stdio.h>
#define MAXHIST 15
#define MAXWORD 11
#define IN 1
#define OUT 0

main()
{
    int c, i, nc, state;
    int len;
    int maxvalue;
    int ovflow;
    int wl[MAXWORD];

    state = OUT;
    nc = 0;
    ovflow = 0;
    for (i = 0; i < MAXWORD; i++)
        wl[i] = 0;
    while ((c = getchar()) != EOF){
        if (c == ' ' || c == '\n' || c == '\t'){
            state = OUT;
            if (nc > 0)
                if (nc < MAXWORD)
                    ++wl[nc];
                else
                    ++ovflow;
            nc = 0;
        }
        else if (state == OUT){
            state = IN;
            nc = 1;
        }
        else
            ++nc;
    }
    maxvalue = 0;
    for (i = 1; i < MAXWORD; ++i)
        if (wl[i] > maxvalue)
            maxvalue = wl[i];
    for (i = 1; i < MAXWORD; ++i){
        printf("%5d - %5d :", i, wl[i]);
        if (wl[i]>0){
            if ((len = wl[i] * MAXHIST / maxvalue) <= 0)
                len = 1;
        }
        else
            len = 0;
        while (len > 0){
            putchar('*');
            --len;
        }
        putchar('\n');
    }
    if (ovflow > 0)
        printf("There are %d words >= %d\n", ovflow, MAXWORD);
    
}


编译遇到的问题 不知道怎么上传图片
主要遇到问题如下
1.我用 visual studio2013生成 程序之后。没办法提交字符串,我输入字符串 空格等等 ,然后按回车,程序变成换行。没办法提交给程序。好像图2的那样,回车只是换行,没办法提交我的字符串给程序验证。
2.用vs 2013 调试的时候,我没办法提交字符串 我就尝试 ctrl+c 看看,然后弹出如下提示:

0x755122CB (KernelBase.dll) (Project1.exe 中)处的第一机会异常:  0x40010005: Control-C。

如有适用于此异常的处理程序,该程序便可安全地继续运行。

但是看程序的时候 是已经打印了部分结果。但是没打印完全部结果。


图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册


[ 本帖最后由 wuchujie 于 2015-7-26 12:36 编辑 ]
搜索更多相关主题的帖子: visual C程序设计 
2015-07-26 12:34
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
你输入部分终结的代码和运行画面中实际的输入动作就不符。先把接收数据的部分写对,再写后面的统计,不要一下子把程序写完。连读到了怎样的数据都不清楚,谈何统计呢,后面的代码都不用看。你这种画面的典型的运行时错误,九成以上的原因是边界溢出,以后见多了这种画面,就知道问题的方向在哪。

授人以渔,不授人以鱼。
2015-07-26 12:51
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
另外,这样的代码,vs2013居然没一个警告,编译通过,听过网上的一些“高人”教导吧。

授人以渔,不授人以鱼。
2015-07-26 12:54
wuchujie
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2015-7-26
收藏
得分:0 
回复 3楼 TonyDeng
谢谢回答。我之前是学习python的.现在打算打基础所以学习一下C语言,都是自学的
C语言学习。我是使用Dennis M.Ritchie的那本 C程序设计语言 http://book.
我也不知道 代码哪里出问题。请问能指点一下吗?
2015-07-26 13:09
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:15 
你那个接收输入的while()循环,终结條件是读到的c为EOF,书上应该有教你怎么得到EOF,你贴图的输入动作,是没读到EOF结果的,循环没有终止,死循环,直到数组溢出。至于你的代码编译通过,我从来不强制vc编译C代码,也不大确定printf()之类没用安全类型函数为什么不给你警告。哎,书上说用.c,你就真的用.c

授人以渔,不授人以鱼。
2015-07-26 13:16
wuchujie
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2015-7-26
收藏
得分:0 
回复 5楼 TonyDeng
哎。。我也不知道win8.1 装什么学习C语言比较好,就装了vs2013了。我也是半路出家,自学的。
习题的代码 我也是按照 这本书的答案 敲一遍敲出来了。对照了3次 代码应该是跟书上的一样,就是运行不到。
书上也没说 EOF 怎么获得,郁闷死了。
图片附件: 游客没有浏览图片的权限,请 登录注册

请问您能推荐一下。如果我在win8.1上学习C语言 安装什么好.
2015-07-26 13:24
外部三电铃
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:那一年
等 级:贵宾
威 望:57
帖 子:2012
专家分:7306
注 册:2007-12-17
收藏
得分:0 
键盘很古色古香,几百个大洋买的吧。
如果对英文不过敏的话,可以试试clion

那一年,苍井空还是处女
2015-07-26 13:28
hjx1120
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:李掌柜
等 级:贵宾
威 望:41
帖 子:1314
专家分:6927
注 册:2008-1-3
收藏
得分:5 
新手还是别用VS开发级的IDE了
用DEVC++,试试
http://
2015-07-26 13:29
wuchujie
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2015-7-26
收藏
得分:0 
回复 8楼 hjx1120
现在 在尝试notepad++和MinGW构建C/C++编程环境
您觉得 这样好不好 跟DEV-C++相比。
2015-07-26 13:36
wuchujie
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2015-7-26
收藏
得分:0 
回复 7楼 外部三电铃
没有啦。键盘不是很贵的 I-ROCKS的游戏键盘来的。好几年啦
2015-07-26 13:37
快速回复:使用visual studio2013 编译《C程序设计语言》习题1-13的时候出错
数据加载中...
 
   



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

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