c语言 一道简单的选择题

如下代码段中int a, b, c = 2;scanf("%d%d%d", &a, &b, &c);如果用户录入了3 4,5 则 c 的值是?麻烦给出答案和思路谢谢!

答案是D。
分析:
按%d%d%d格式输入时,要求用空白(空格、换行等)作为分隔符。当输入3 4,5时,因为3 4符合输入格式的要求,所以会将3赋值给a,4赋值给b。但接下来遇到了逗号,不符合输入格式的要求,scanf函数会提前退出,并返回2(表示成功赋值了2个值),而c不会被赋值(保持它原来的值2),所以答案是D。
温馨提示:答案为网友推荐,仅供参考
相似回答