| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 747 人关注过本帖
标题:关于 getchar()函数的问题,请求帮忙。
只看楼主 加入收藏
宽的偶
Rank: 2
等 级:论坛游民
帖 子:32
专家分:16
注 册:2009-8-25
结帖率:57.14%
收藏
已结贴  问题点数:2 回复次数:3 
关于 getchar()函数的问题,请求帮忙。
为了能让大家,清晰的明白问题。
我把问题准确的,写一遍。

#include<stdio.h>
#define N 6
main()
{
char c[N];
int i=0;
for(;i<N;c[i]=getchar(),i++);
for(i=0;i<N;i++)putchar(c[i]);
printf("\n");
}
如果从键盘上输入:
ab<回车>
c<回车>
def<回车>
则输出结果为:
ab

b

c

d

我想知道为什么,会是这样的方式输出,还有为什么getchar函数可以一次,输入ab〈回车〉这样的3个字符。

关键是为什么输出的结果是,这样。为什么输出完了ab回车,还要输出一个b。
搜索更多相关主题的帖子: 请求 函数 getchar 
2010-01-04 11:32
jiangwu10057
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:341
专家分:667
注 册:2009-3-25
收藏
得分:1 
定义了字符串长度为6
ab回车
c回车
def回车
共9个字符
输出
ab回车
c回车
d
共6个字符
你的结果在我编译器当中不会出现·

[ 本帖最后由 jiangwu10057 于 2010-1-4 12:00 编辑 ]
2010-01-04 11:53
转身
Rank: 2
等 级:论坛游民
帖 子:58
专家分:25
注 册:2010-1-4
收藏
得分:0 
呵呵 因为 回车 也需要空间 你可以试着不用回车和空格键 直接输入abcdef 一试就明白了

没有谁对谁错,只有谁不懂得珍惜
2010-01-04 12:01
xu362726904
Rank: 6Rank: 6
等 级:侠之大者
帖 子:160
专家分:471
注 册:2009-6-18
收藏
得分:1 
我的c-free没输出你的结果的。从数组来看这个也不可能的。你在那个输入循环里面加个打印提示,就会明白怎么回事了
2010-01-04 12:19
快速回复:关于 getchar()函数的问题,请求帮忙。
数据加载中...
 
   



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

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