国家二级C语言考试两道选择题求详细解答~!

2025-02-03 19:47:47
推荐回答(3个)
回答1:

对于scanf("%2d%f%s",&j,&y,name);,"%2d"只接收2位整数,也就是55,接下来的"%f"接收一个浮点数(可以有符号和有小数点),空格会结束"%f"的读入过程,所以f的值是566.000000,接下来的7777abc会赋给name。所以答案是B。

第一次调用函数fun()时,函数返回2,静态变量x保持2的值,不会因为函数结束而改变。第二次调用函数fun()时,x的值是2,返回4,第三次调用函数fun()时,x的值是4,函数返回8。

1 * 2 * 4 * 8 = 64。所以答案是B。

回答2:

%2d%f%s 输入 55566时,%2d限定2个字符宽度的整数,则x=55,后面的数归y,则y=566.由于y是浮点,则B最接近

下面这题,s的结果确实是64.选B

回答3:

上机一试试就知道, 第一题%2d
第二static int x是关键