将源代码中 g 函数的定义(14-17 行)移到 main 函数的后面,程序可以正常编译运行。()
#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;
}
正确
错误