如何解决c语言算术溢出

img


C语言算术溢出,后面两个式子无法显示正确答案,求大家帮忙看看

a<50,不是a<<50

<<表示位运算的意思,

如 x = 10
那么
① x << 1000 (左移)表示 x 乘以 2的1000次方,目前计算机无法存入如此之大的数,所以会出现溢出现象
② x >> 1000 (右移)表示 x 乘以 2的 负的1000次

在这题中 你需要比较的是大小,当然 是单个 >或< 号

即if(a>= 50&& a <1000)