5条回答 默认 最新
TseNing 2015-09-04 16:53关注执行scanf()函数时,在键盘输入回车会把之前的输入连同回车符一起送入缓存区,然后通过格式控制符匹配对应的变量,%d %f %e等,如果格式控制字符串中连写 会以空白字符(包括回车换行)区分不同变量,但%c会把任意单个字符认为有效输入,所以c1的值是个回车符。由于输入是按顺序匹配的,第一个回车被认为是区分不同变量的空白字符。
本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用
执行scanf()函数时,在键盘输入回车会把之前的输入连同回车符一起送入缓存区,然后通过格式控制符匹配对应的变量,%d %f %e等,如果格式控制字符串中连写 会以空白字符(包括回车换行)区分不同变量,但%c会把任意单个字符认为有效输入,所以c1的值是个回车符。由于输入是按顺序匹配的,第一个回车被认为是区分不同变量的空白字符。