求下面函数的返回值(微软)
int func(x)
{
int countx = 0;
while(x)
{
countx ++;
x = x&(x-1);
}
return countx;
}
假定x = 9999。答案:8
思路:将x转化为2进制,看含有的1的个数。
第1题:
以下程序执行后的输出结果是 #include<iostream>. using namespace std; void try(int,int,int,int); int main() { int x,y,z,r; x=1; y=2; try(x,y,z,r); cout<<r<<end1; return 0; } void try(int x,int y, int z,int r) { z = x+y; x = x*x; y = y*y; r = z+x+y; }
A.18
B.9
C.10
D.不确定
第2题:
求y=cos(x)从0到π的积分,正确的命令为_________。
A.int(y,x,0,pi)
B.int(x,0,pi)
C.int(x,y,0,pi)
D.int(0,pi,x,y)
第3题:
5、对于多个输入参数的函数也可以使用递归。下面哪个递归定义是正确的自然数加法?也就是说,对于自然数x,y,plus x y给出x+y。
A.plus :: Int -> Int -> Int plus 0 y = y plus x y = 1 + plus (x-1) y
B.plus :: Int -> Int -> Int plus x 0 = x plus x y = 1 + plus x (y-1)
C.plus :: Int -> Int -> Int plus x y = 1 + plus (x-1) y plus 0 y = y
D.plus :: Int -> Int -> Int plus 0 y = y plus x y = 1 + plus (x-1) (y-1)
第4题:
若x为int型变量,则以下函数fun的类型为 fun(x) { printf("%d",x);}
A.返回值为void类型
B.无法确定返回值
C.返回值为int类型
D.无返回值
第5题:
10、求y=cos(x)从0到π的积分,正确的命令为_________。
A.int(y,x,0,pi)
B.int(x,0,pi)
C.int(x,y,0,pi)
D.int(0,pi,x,y)