#include <iostream>using namespace std; int n;int a[1000]; int f(int x){ int ret = 0; for (; x; x &= x - 1) ret++; return ret;} int g(int x){ return x & -x;} int main(){ cin >> n; for (int i = 0; i < n; i++) cin >> a[i]; for (int i = 0; i < n; i++) cout << f(a[i]) + g(a[i]) << ' '; cout << endl; return 0;}输入的 等于 时,程序不会发生下标越界。( )
输入的 必须全为正整数,否则程序将陷入死循环。( )
当输入为 5 2 11 9 16 10 时,输出为 3 4 3 17 5。( )
当输入为 1 511998 时,输出为 18。( )
将源代码中 g 函数的定义( 行)移到 main 函数的后面,程序可以正常编译运行。( )
当输入为 2 -65536 2147483647 时,输出为( )。