不知道哪里错百思不得其解

img

img

n*=1/2;改为 n/=2;

n *= 1/2这里有问题,这样写 n /= 2;

n*=1/2 相当于 n*=0 整数 int(1/2)为0 改为 n=n/2
还有第二个if else 不用写 直接else 就行了,还有两个分支都有 step++ 不用这样弄,直接提取到 分支语句外面,

输入10是对的呀,哪个输入会导致不对