一道计算机VB题设变量A为长整型,则下列不能正常执行的语句是A A=32768*2 B A=2*1.5*16384C A=16384*2 D A=190^2

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/06 09:47:39
一道计算机VB题设变量A为长整型,则下列不能正常执行的语句是A A=32768*2 B A=2*1.5*16384C A=16384*2 D A=190^2
xTNA~ZbP&5mQS 6JE[TiGKw1sfg|7윿glƩY%Vu^e.$>+v$K@P+ zZ9sg`Y̸5;Jt8s4<yM?]OyТ8?_,{ /dqTcFqj:V/D*}/5PȀަ21] (|O{YB^oT@oEλ!T!y]]aaclD$LF]1 2T/U#juJIHTNHJ1˿e^%@JH9!Fm]њoQ>g2Z6r"q0O=o^wvR(܁ν?E МHfk+xi!u8R@E4=HWJfh8M3h9U 1hku}e5֪dR'HpGpRllrb|.8UW*DyWʠG.R=wԻF$6." :?xŠc[/M!,

一道计算机VB题设变量A为长整型,则下列不能正常执行的语句是A A=32768*2 B A=2*1.5*16384C A=16384*2 D A=190^2
一道计算机VB题
设变量A为长整型,则下列不能正常执行的语句是
A A=32768*2 B A=2*1.5*16384
C A=16384*2 D A=190^2

一道计算机VB题设变量A为长整型,则下列不能正常执行的语句是A A=32768*2 B A=2*1.5*16384C A=16384*2 D A=190^2
答案是C.
这个问题涉及到两个问题.一是常数计算过程,二是结果是何种类型的问题.
先说第一个问题.计算A=16384*2时,先计算16384*2,把计算结果保存在一个临时变量中,再把这个临时变量的值赋给A.
再说第二个问题.16384*2的结果是什么类型?是整型.因为16384与2都是整型,计算结果仍是整型.而=16384*2=32768,已经超出了整型数的范围(-32,768 到 32,767),溢出了,运算时会报“溢出”错误.
要说明的是,并不是变量A溢出了,而是那个临时变量溢出了.
选项A怎么就可以呢?因为32768超出了整型范围,按long型(长整型)数处理了,结果仍在long型范围内,所以正常.
B项是因为有1.5,按single型处理,正常.
至于D,190与2都是整型,190^2=36100,貌似应该溢出.实际上,进行乘方^计算时,其前后的数按double型处理,那么也就不溢出了.