标题:为什么不是输入一个数输出一个数呢,而是输完才输出呢?
只看楼主
暴风雪282
Rank: 4
等 级:业余侠客
帖 子:61
专家分:295
注 册:2011-10-4
结帖率:100%
已结贴  问题点数:20 回复次数:2 
为什么不是输入一个数输出一个数呢,而是输完才输出呢?
#include<stdio.h>
#include<stdlib.h>
void main()
{
    FILE *fp;
    char ch,filename[10];
    scanf("%s",filename);
    if((fp=fopen(filename,"w"))==NULL)
    {
        printf("cannot open file\n");
        exit(0);
    }
    ch=getchar();
    ch=getchar();
    while(ch!='#')
    {
        fputc(ch,fp);
        putchar(ch);    //就是这里看不懂了
        ch=getchar();
    }
    putchar(10);
    fclose(fp);
}
搜索更多相关主题的帖子: include cannot while 
2011-10-16 22:28
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
得分:20 
getchar函数本来就是要从标准输入流中读取一个字符

只有当你敲下回车的时候你在屏幕的字符串才会被送入到标准输入流

然后执行的你的while循环

                                         
===========深入<----------------->浅出============
2011-10-16 22:42
暴风雪282
Rank: 4
等 级:业余侠客
帖 子:61
专家分:295
注 册:2011-10-4
得分:0 
恩,明白了,原来是回车才输入啊.谢谢.

Dance like there is nobody.
2011-10-16 22:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-352623-1-1.html




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

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