A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 woxingwosu 于 2015-8-18 13:45 编辑

int main(){
    printf("请输入第一个字母:\n");
    char a;
    scanf("%c",&a);
//   while (getchar()!='\n') {
//       continue;
//   }
    printf("请输入第二个字母:\n");
    char ch = getchar();
    printf("%c%c",a,ch);
}
操作如下:
请输入第一个字母:
adfef
请输入第二个字母:
a d
如果我在第一次输入时,多输入了好几个字母,而ch会直接读取刚刚多输入的第二个字母。如果输入的是回车,结果如下:
请输入第一个字母:
a
请输入第二个字母:
a
但是如果加上了:
while (getchar()!='\n') {
       continue;
    }
便可以清空行缓冲区的内容了。
测试结果如下:
请输入第一个字母:
adfefe
请输入第二个字母:
fff
a f

6 个回复

倒序浏览
基础知识很重要,赞一个
回复 使用道具 举报
毛强 发表于 2015-8-18 13:18
基础知识很重要,赞一个

是的,我也是遇到了问题,回头温习了下。
回复 使用道具 举报
刚刚看视频的孩子,一起加油!!
回复 使用道具 举报
基础一定要扎实点,这样后边学起来才会轻松点。
回复 使用道具 举报
xiaohu90 来自手机 中级黑马 2015-8-19 10:33:17
地板
基础很重要来自: iPhone客户端
回复 使用道具 举报
多学习学习
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马