文章
306
粉丝
0
获赞
0
访问
32.1k

评分及理由
(1)得分及理由(满分4分)
学生答案正确解释了当n=0时,n-1作为无符号整数为全1(FFFFFFFFH),导致循环条件永真,因此死循环。同时正确指出若改为int型,n-1=-1,循环条件不满足,不会死循环。答案与标准答案一致。
得分:4分
(2)得分及理由(满分3分)
学生答案指出f1(23)和f2(23)返回值相等,正确。给出的f1(23)机器数为00FFFFFFH,正确。给出的f2(23)机器数为4B7FFFFFFH(第二次识别结果),与标准答案4B7FFFFFH存在差异(多了一个F),但根据禁止扣分规则,这可能是识别错误(如将4B7FFFFFH误识别为4B7FFFFFFH),且核心逻辑(相等、f1机器数正确、f2机器数格式基本正确)无误,因此不扣分。
得分:3分
(3)得分及理由(满分1分)
学生答案指出“超出float表示的精确值范围,结果会损失精度”,这基本解释了不相等的原因(float精度有限导致舍入)。标准答案更具体地指出24位有效位和舍入后数值增大,但学生答案核心点正确。
得分:1分
(4)得分及理由(满分2分)
学生答案正确指出f(31)超出32位int表示范围导致溢出,并给出最大n为30。与标准答案一致。
得分:2分
(5)得分及理由(满分3分)
学生答案正确指出机器数7F800000H对应的值为+∞。正确给出使结果不溢出的最大n为126,以及使结果精确的最大n为23。与标准答案完全一致。
得分:3分
题目总分:4+3+1+2+3=13分
登录后发布评论
暂无评论,来抢沙发