3个回答
展开全部
do {
fputc(ch,fp); //第一次,ch还没有值,所以会有乱码出现
ch=getchar();
} while(ch!='@' );
修改如下:
ch=getchar(); //先读一个
while(ch!='@' ) //当不是@时循环
{
fputc(ch,fp);
ch=getchar();
}
fputc(ch,fp); //第一次,ch还没有值,所以会有乱码出现
ch=getchar();
} while(ch!='@' );
修改如下:
ch=getchar(); //先读一个
while(ch!='@' ) //当不是@时循环
{
fputc(ch,fp);
ch=getchar();
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-12-16
展开全部
fputc(ch,fp)
最开始调用时ch未赋值,需要在do之前给ch赋值
最开始调用时ch未赋值,需要在do之前给ch赋值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
将fputc(ch,fp);放到ch=getchar();下面,因为第一次循环时ch是未知的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询