计算机二级

下列函数参数默认值定义错误的是( )。A.Fun(int x,int y=0)B.Fun(int x=100)C.Fun(int x=0,int y)D.Fun(int x=f())(假定函数f()已经定义)

题目

下列函数参数默认值定义错误的是( )。

A.Fun(int x,int y=0)

B.Fun(int x=100)

C.Fun(int x=0,int y)

D.Fun(int x=f())(假定函数f()已经定义)

参考答案和解析
正确答案:D
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下程序执行后的输出结果是include using namespace std;void try(int,int,int,int)

以下程序执行后的输出结果是 #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<<endl; 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.不确定


正确答案:D
解析:本题考核函数调用(参数的传递)。本题常见的错误解答是:把x=1,y=2代入到函数try中,逐步计算出r=8。最后得到r的输出值是8。以下是正确解答,根据程序逐步分析:程序中定义了一个名为try的void型函数,即函数try没有任何返回值。而try函数在main函数中是以一条独立语句的方式被调用的,且main函数最后输出变量r的值。但在main函数中,并没有对变量r赋值。在c++语言中,数据只能从实参单向传递给形参,称为按值传递。也就是说,当简单变量作为实参时,用户不能在函数中改变对应实参的值。所以虽然在函数try中,r的值为8,但它并不能传递给实参,当然最终的输出肯定是不确定的随机数了。

第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)


df

第3题:

主调函数中的两个变量a和b,要求调用函数交换a、b的值,返回交换结果,则以下正确的函数是______。

A.funa(int*x,int*y) {int*p; *p=*x;*x=*y;*y=*p; }

B.funb(int x,int y) {int t; t=x;x:y=y=t;}

C.func(int*x,int*y) {*x=*y;*y=*x;}

D.fund(int *x,int*y) {*x=*x+*y;*y=*x-*y;*x=*x-*y;}


正确答案:D
解析:选项A中指针变量p没有明确的指向,选项B是值传递方式,显然不能改变实参中的值,选项C不能完成交换,实参中的值都变成一样的,只有选项D是正确的。

第4题:

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)


int(f(x),x,a,b)

第5题:

当我们需要求函数y=f(x)从a到b的定积分时,用下列哪个表达式?

A.int(y, x)

B.int(y, x, a, b)

C.int(y)

D.int(y, x, a)

E.int(y,x,b)

F.int(x,a,b)


f3={,,
}

第6题:

5、当我们需要求函数y=f(x)从a到b的定积分时,用下列哪个表达式?

A.int(y, x)

B.int(y, x, a, b)

C.int(y)

D.int(y, x, a)

E.int(y,x,b)

F.int(x,a,b)


int(y, x, a, b)

第7题:

6、当我们需要求函数y=f(x)的不定积分时,用下列哪个表达式?

A.int(y, x, a)

B.int(y, x, a, b)

C.int(y, x)

D.int(y, x, b)

E.int(y,a,b)

F.int(x,a,b)


int(y, x)

第8题:

主调函数中的两个变量a和b,要求调用函数交换a、b值,返回交换结果,则以下正确的函数是______。

A.funa(int*x,int*y) { int*p; *p=*x;*x=*y;*y=*p; }

B.funb (int x,int y) {int t;t=x;x=y;y=t;}

C.func(int *x,int*y) {*X=*y;*y=*x;}

D.fund(int *x,int *y) {*x=*x+*y;*y=*x-*y;*x=*x-*y;}


正确答案:D

第9题:

当我们需要求函数y=f(x)的不定积分时,用下列哪个表达式?

A.int(y, x, a)

B.int(y, x, a, b)

C.int(y, x)

D.int(y, x, b)

E.int(y,a,b)

F.int(x,a,b)


③④

第10题:

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)


正确