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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 菜鸟一枚 中级黑马   /  2015-7-15 09:57  /  976 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

scanf的运行原理:
1)当用户输入内容后,用户输入的内容会被存放在scanf的缓冲区内,然后,scanf会根据格式控制的字符要求,从输入缓冲区中依次取出它想要的内容,如果从缓冲区中取出的内容和我们要求的格式一致,则会把输入的内容存放到变量中,(%d,%c,%f),如果格式不一致,就不会修改变量的值;
2)如果scanf缓冲区中有内容,则就不会提示我们再次输入

6 个回复

倒序浏览
自己顶一个:victory:
回复 使用道具 举报
补充一句:scanf遇到空格就结束,空格之后的字符串都不会被接收;但是不能接收空格;且可能产生越界访问。
回复 使用道具 举报
你说的是scanf(%d,%c,%f)的情况
对于scanf(%d,&a);
      scanf(%c,&x);
      scanf(%f,&b);
的情况,也可以总结一下。
回复 使用道具 举报
不错 挺详细的。
回复 使用道具 举报
支持楼主一下!
回复 使用道具 举报
欢子 来自手机 中级黑马 2015-7-16 15:07:11
7#
如果分开接收一个整数a 一个字符x和一个整数b也可以这样scanf("%d",&a) ;scanf("%c",&x);scanf("%c",&x);scanf("%d",&b);
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马