| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 703 人关注过本帖
标题:scanf函数错在那里?怎么一按回车就关闭,不是scanf会获取输入的数据的么?
只看楼主 加入收藏
lujunjie1993
Rank: 2
等 级:论坛游民
帖 子:9
专家分:10
注 册:2011-7-12
结帖率:0
收藏
已结贴  问题点数:20 回复次数:4 
scanf函数错在那里?怎么一按回车就关闭,不是scanf会获取输入的数据的么?
买了一本C语言书,有点不明白,怎么书本跟实际不一样?怎么一按回车就关闭,不是scanf会获取输入的数据的么?
下面是按书本来做的。
图片附件: 游客没有浏览图片的权限,请 登录注册

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

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

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

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

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

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

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

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

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


[ 本帖最后由 lujunjie1993 于 2011-12-21 16:59 编辑 ]
搜索更多相关主题的帖子: C语言 
2011-12-21 16:55
lujunjie1993
Rank: 2
等 级:论坛游民
帖 子:9
专家分:10
注 册:2011-7-12
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册




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

生成程序后,一按回车就会关闭程序,但是书本上是说会获取输入的数据,但是我输入了数据,回车就会关闭程序?请教高手,谢谢。
完整代码如下。
程序代码:
#include <stdio.h>
void main(void)
{
    int i=0;
    printf("\n Please input a number:");
    scanf("%d",&i);
    printf("\nI got the number you inputed,it is %d",i);
    getchar();
}


[ 本帖最后由 lujunjie1993 于 2011-12-21 16:59 编辑 ]
2011-12-21 16:56
yeliming
Rank: 2
等 级:论坛游民
帖 子:23
专家分:23
注 册:2011-12-9
收藏
得分:20 
在getchar();前面再加一句
while(getchar()!='\n')
  continue;

因为你那个getchar会把输入完毕后的回车符读进去。
2011-12-21 17:12
yeliming
Rank: 2
等 级:论坛游民
帖 子:23
专家分:23
注 册:2011-12-9
收藏
得分:0 
或者简单点,再加一个getchar();语句即可.
不过如果是两个getchar语句,如果在1314后面多输入几个字母,还是会一跳而过。

用上了while语句,能忽略掉后面多输入的任何字符,知道你按任意键退出。
2011-12-21 17:16
lujunjie1993
Rank: 2
等 级:论坛游民
帖 子:9
专家分:10
注 册:2011-7-12
收藏
得分:0 
回复 4楼 yeliming
谢谢您,问题解决了,您以前应该经常遇到这个问题吧,所以你知道怎么解决,呵呵。
我觉得while和两个getchar();效果都一样,你看看下面的图。
图片附件: 游客没有浏览图片的权限,请 登录注册
2011-12-21 20:10
快速回复:scanf函数错在那里?怎么一按回车就关闭,不是scanf会获取输入的数据的 ...
数据加载中...
 
   



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

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