文章
164
粉丝
0
获赞
1
访问
95.2k
(1)无符号整数的0-1发生溢出,最终存储机器数为FFFFFFFFH,导致死循环,改为int不会出现死循环,此时跳出条件为i<=-1,程序会即刻跳出
(2)二者的返回值相等,f1的机器数为00FFFFFFH
f2的机器数为4A000000H
(3)因为f2(24)发生了一位舍入
(4)因为31时发生了溢出,最大的n应该为23
(5)阶码全一,尾数全0,表示正无穷,不溢出的最大n为31,无舍入的最大n为23
评分及理由
(1)得分及理由(满分4分)
学生正确解释了n=0时死循环的原因:无符号整数0-1溢出得到全1的机器数,导致条件永真。同时正确指出改为int型后不会死循环,因为i<=-1在i=0时不成立。答案完整且正确,得4分。
(2)得分及理由(满分3分)
学生正确判断f1(23)和f2(23)返回值相等,得1分。f1(23)的机器数00FFFFFFH正确,得1分。但f2(23)的机器数4A000000H错误(应为4B7FFFFFH),扣1分。本小题得2分。
(3)得分及理由(满分1分)
学生回答"因为f2(24)发生了一位舍入",虽然表述不够详细,但指出了舍入这一关键原因,符合评分说明要求,得1分。
(4)得分及理由(满分2分)
学生正确解释f1(31)返回-1是因为溢出,得1分。但认为最大n为23是错误的(应为30),扣1分。本小题得1分。
(5)得分及理由(满分3分)
学生正确识别7F800000H表示正无穷,得1分。但不溢出的最大n为31错误(应为126),扣1分;无舍入的最大n为23正确,得1分。本小题得2分。
题目总分:4+2+1+1+2=10分
登录后发布评论
暂无评论,来抢沙发