浮点加减乘除运算各在什么情况下会发生溢出?
答案:2 悬赏:60 手机版
解决时间 2021-02-25 19:23
- 提问者网友:川水往事
- 2021-02-25 15:45
浮点加减乘除运算各在什么情况下会发生溢出?
最佳答案
- 五星知识达人网友:廢物販賣機
- 2021-02-25 16:57
溢出的原因只有一个
那就是这句
c=a/b
其中b的值为0
也就是
b=cint(request.Form("b"))
没有获取到值
你的代码是没有错的
你要检查的地方有:
1、request.Form("select")是否有获取到值
因为如果request.Form("select")没有获取到值就会直接执行
else
c=a/b
这一项
2、request.Form("a")和request.Form("b")
是否有获取到值,因为导致直接错误的原因是b未获得值造成的,因为被除数不能为0
你可以尝试改成这样
<%
a=cint(request.Form("a"))
b=cint(request.Form("b"))
if b=0 then
response.write "请注意:做除法时被除数不能为0"
response.end()
end if
if a<>"" and b<>"" and request.Form("select")<>"" then
if request.Form("select")="加" then
c=a+b
elseif request.Form("select")="减" then
c=a-b
elseif request.Form("select")="乘" then
c=a*b
else
c=a/b
end if
response.Write(a&request.Form("select")&b&"等于"&c)
else
response.write("错误:至少有一个参数没有被指定")
end if
%>
此乃标准答案
回答完毕
那就是这句
c=a/b
其中b的值为0
也就是
b=cint(request.Form("b"))
没有获取到值
你的代码是没有错的
你要检查的地方有:
1、request.Form("select")是否有获取到值
因为如果request.Form("select")没有获取到值就会直接执行
else
c=a/b
这一项
2、request.Form("a")和request.Form("b")
是否有获取到值,因为导致直接错误的原因是b未获得值造成的,因为被除数不能为0
你可以尝试改成这样
<%
a=cint(request.Form("a"))
b=cint(request.Form("b"))
if b=0 then
response.write "请注意:做除法时被除数不能为0"
response.end()
end if
if a<>"" and b<>"" and request.Form("select")<>"" then
if request.Form("select")="加" then
c=a+b
elseif request.Form("select")="减" then
c=a-b
elseif request.Form("select")="乘" then
c=a*b
else
c=a/b
end if
response.Write(a&request.Form("select")&b&"等于"&c)
else
response.write("错误:至少有一个参数没有被指定")
end if
%>
此乃标准答案
回答完毕
全部回答
- 1楼网友:酒醒三更
- 2021-02-25 18:02
除数为零会发生溢出。
加减乘数值的绝对值过大。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯