c语言程序的控制台

照着书上编了,可以计算输入文件的行数、字符数的程序。执行上没有问题,但是,在控制台里,随意输入字母数字文件后,再按entert让它去计算,光标就直接跳到下一行的开头,没有... 照着书上编了,可以计算输入文件的行数、字符数的程序。执行上没有问题,但是,在控制台里,随意输入字母数字文件后,再按entert让它去计算,光标就直接跳到下一行的开头,没有任何数字或文字出现。这是什么原因呢。我是win7,64位旗舰版。用VS2013和vc6.0,都一样的情况。 展开
 我来答
黄沙百战的半糖
2014-02-28 · 超过23用户采纳过TA的回答
知道答主
回答量:162
采纳率:0%
帮助的人:65.5万
展开全部
文件指针有指向下一个位置或者计数方式有误!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
猎鹰野狼
2014-02-28
知道答主
回答量:46
采纳率:0%
帮助的人:16.1万
展开全部
你是不是还在编辑状态,如果是,那输入回车当然跳到下一行了.

你确定在控制台中回车是运行吗?
什么控制台,请将清楚.
更多追问追答
追问
同样的状态,编辑“hello world”就很正常,就是类似这种main()
{
int c, nl;
nl = 0;
while ((c = getchar()) != EOF)
if (c == '\n')
++nl;
printf("%d\n", nl);
}需计算的程序,就不能在出现的控制台里,按enter执行出结果。
追答
朋友,你先得知道enter后代表什么吗,代表回车换行,相当于\n。你一直按enter相当于一直输入\n,那么你的程序一直在while里循环着的.你要查一下在VS和VC中怎么能结束输入,相当于EOF.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
梦见钞
2014-02-28 · TA获得超过708个赞
知道大有可为答主
回答量:1584
采纳率:50%
帮助的人:1630万
展开全部
程序代码贴出来看看啊
更多追问追答
追问
main()
{
int c, nl;
nl = 0;
while ((c = getchar()) != EOF)
if (c == '\n')
++nl;
printf("%d\n", nl);
}书上的源代码
追答
哦,你控制台的输入有问题,用 != EOF判断结束的话,你要输入ctrl+Z当做输入才能结束
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ddfdt
2014-02-28 · TA获得超过326个赞
知道小有建树答主
回答量:187
采纳率:0%
帮助的人:86.3万
展开全部
你发一下代码 这个跟编译器没关系,
更多追问追答
追问
main()
{
int c, nl;
nl = 0;
while ((c = getchar()) != EOF)
if (c == '\n')
++nl;
printf("%d\n", nl);
}
书上的源代码。
追答
你这循环永远不会结束的,你应该从if的开头加个{  printf的结尾加个}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式