第三章测试1.
以下正确的说法是( )。
A:系统根本不允许用户重新定义标准库函数 B:用户若需要调用标准库函数,调用前必须重新定义 C:用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调 D:用户可以重新定义标准库函数,若如此,该函数将失去原有含义
答案:D
2.
以下正确的描述是( )。
在C++语言中
A:函数的定义不可以嵌套,但函数的调用可以嵌套 B:函数的定义和函数的调用均可以嵌套 C:函数的定义可以嵌套,但函数的调用不可以嵌套 D:函数的定义和函数的调用均不可以嵌套 3.
以下程序的正确运行结果是( )。
void main()
{
int a=2,i;
for(i=0;i<3;i++)
cout<<f(a);
}
f(int a)
{
int b=0; static int c=3;
b++; c++;
return(a+b+c);
}
A:
7 9 11
B:7 8 9
C:7 7 7
D:7 10 13
4.以下程序的正确运行结果是( )。
#include<stdio.h>
func(int a,int b)
{
static int m=0,i=2;
i+=m+1;
m=i+a+b;
return(m);
}
void main()
{
int k=4,m=1,p;
p=func(k,m); cout<<p<<”,”;
p=func(k,m); cout<<p<<endl;
}
A:8,17 B:8,16 C:8,20 D:8,8 5.
C++语言规定,函数返回值的类型是由( )。
A:调用该函数时系统临时决定 B:在定义该函数时所指定的函数类型所决定 C:return语句中的表达式类型所决定 D:调用该函数时的主调函数类型所决定 6.
下面函数调用语句含有实参的个数为( )。
func((exp1,exp2),(exp3,exp4,exp5));
A:1 B:5 C:2 D:4 7.
C++语言中,以下不正确的说法是( ) 。
A:
实参可以是常量、变量和表达式
B:形参可以是常量、变量和表达式
C:实参可以为任意类型
D:形参应与其对应的实参类型一致
8.在计算机高级语言 C++中,下面对函数不正确的描述是( )。
A:允许函数递归调用 B:当用数组名作形参时,形参数组元素值的改变可以使实参数组元素的值相 应改变 C:被调用函数必须位于主函数之前 D:函数形参的作用范围只是局限于所定义的函数内 9.
对下面程序段的描述正确的是( )。
#include<iostream>
using namespace std;
int Fun(int x, int y)
{ return x+y; }
int main()
{ int i=10; cout<<Fun(i++, i)<<endl; return 0; }
A:程序输出结果不能确定 B:程序输出结果是 20 C:程序输出结果是 21 D:程序输出结果是 22 10.
下列有关形式参数和实际参数的说法正确的是( )。
A:定义函数指定的形参,会一直占用内存中的存储单元。 B:在定义函数时,必须在函数首部指定形参的类型。 C:一般情况下,在调用函数结束后,形参所占的内存单元不会被释放 D:即便是在发生函数调用时,函数中的形参也不会分配内存单元。 11.
若使用一维数组名作为函数实参,则以下正确的说法是( )。
A:实参数组类型与形参数组类型可以不匹配 B:必须在主调函数中说明此数组的大小 C:在被调函数中,不需要考虑形参数组的大小 D:实参数组与形参数组名必须一致 12.
以下正确的说法是( )。
A:实参和与其对应的形参共占用一个存储单元; B:形参是虚拟的,不占用存储单元。 C:实参和与其对应的形参各占用独立的存储单元; D:只有当实参和与其对应的形参同名时才共同占用存储单元; 13.
以下正确的说法是( )。
如果在一个函数的复合语句中定义了一个变量,则该变量( )。
A:为非法变量 B:在该函数中有效 C:只在该复合语句中有效 D:在本程序范围内均有效