以下问题均假定输入的 n 为不超过 2^31−1 的非负整数。 将第 7 行的 while (n > 0) 改为 while (n >= 0) 后,程序可能出现的问题是( )。
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int x = 1, y = 1;
while (n > 0) {
if (n % 2 == 0) {
++x;
} else {
++x;
++y;
}
n = n / 2;
}
cout << x << ' ' << y << endl;
return 0;
}
陷入死循环
输出结果比原来大
输出结果比原来小
输出结果不受影响