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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 距离 中级黑马   /  2015-4-10 22:06  /  782 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int a,b;char ch = ' ';
a = b = 0;
scanf("%d%c%d",&a,&ch,&b);
我输入->12,空格键,c,空格键,20.
然后输出时候  b 为什么是0?
请大神解答

3 个回复

倒序浏览
因为你一开始就把就给a,b赋了初值0,再输什么就没用了
回复 使用道具 举报
来看看  坐等大神的到来
回复 使用道具 举报
因为你输入的12 空格 c 空格 20     其中空格也是字符  所以你的a就是12  ch就是空格 第三个c不能赋值给b,因为一个是int类型,一个是char类型,所以b还是初始值0         最后的c 空格 20 被留在了输入缓存区
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马