多题目

CSPJ2021 阅读程序1  

#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++) scanf("%d",&a[i]);
	for (int i=0; i < n; i++)
		cout<<f(a[i])+g(a[i]))<<" ";
	cout<<endl;
	return 0;
}

第1题 判断

输入的n等于1001时,程序不会发生下标越界。()

A.
正确
B.
错误

第2题 判断

输入的a[i]必须全为正整数,否则程序将陷入死循环。()

A.
正确
B.
错误

第3题 判断

当输入为“5 2 11 916 10”时,输出为“3 43 17 5”。()

A.
正确
B.
错误

第4题 判断

当输入为“1 511998”时,输出为“18”。()

A.
正确
B.
错误

第5题 判断

将源代码中g函数的定义(13-16行)移到main函数的后面,程序可以正常编译运行。()

A.
正确
B.
错误

第6题 单选

当输入为“2 -65536 2147483647”时,输出为()。

A.

“65532 33”

B.

“65552 32”

C.

“65535 34”

D.

“65554 33”

发表评论

登录 后再回复