今天复习c语言,发现几个问题,高手进来解决下,谢谢
/*格式化输入函数scanf()的使用方法测试程序
*/
#include <stdio.h>
int main()
{
int a;
int b;
do{
scanf("%d %d",&a,&b);
printf("a=%d",a);
putchar('\n');
printf("b=%d",b);
putchar('\n');
}while (1);
return 0;
}
①当输入a,b时,为什么是死循环,当第二次执行scanf()函数时为什么不能停下来等待输入?
②当输入为 1.23 1 时,又出现了死循环,难道遇到小数不是截取整数部分正常读取吗?
③我把scanf()改成scanf("%d -%d",&a,&b);即在两个整数之间加一个匹配字符,当我输入
123 321时(注意,我并没有在数据中间加上)匹配字符,输出的结果是
a=123
b=-858993460
a=123
b=-858993460
为什么??
高手帮下忙