C语言函数练习题及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1
【单选题】
在下列关于C函数定义的叙述中,正确的是A、
函数可以嵌套定义,但不可以嵌套调用;
B、
函数不可以嵌套定义,但可以嵌套调用;
C、
函数不可以嵌套定义,也不可以嵌套调用;
D、
函数可以嵌套定义,也可以嵌套调用;
我的答案:B得分:分
2
【单选题】
下面函数调用语句含有实参的个数为nc((exp1,exp2),(exp3,exp4,exp5));
A、
1
B、
2
C、
4
D、
5
我的答案:B得分:分
3
【单选题】
C语言中函数返回值的类型是由以下哪个选项决定的A、
函数定义时指定的类型;
B、
return语句中的表达式类型;
C、
调用该函数时的实参的数据类型;
D、
形参的数据类型;
我的答案:A得分:分
4
【单选题】
以下关于函数叙述中,错误的是
A、
函数未被调用时,系统将不为形参分配内存单元;
B、
实参与形参的个数必须相等,且实参与形参的类型必须对应一致;
C、
当形参是变量时,实参可以是常量、变量或表达式;
D、
如函数调用时,实参与形参都为变量,则这两个变量不可能共享同一内存空间;
我的答案:B得分:分
5
【单选题】
若函数调用时参数为基本数据类型的变量,以下叙述正确的是A、
实参与其对应的形参共享内存存储单元;
B、
只有当实参与其对应的形参同名时才共享内存存储单元;
C、
实参与对应的形参分别占用不同的内存存储单元;
D、
实参将数据传递给形参后,立即释放原先占用的内存存储单元;
我的答案:C得分:分
6
【单选题】
函数调用时,实参和形参都是简单变量,它们之间数据传递的过程描述正确的是
A、
实参将地址传递给形参,并释放原先占用的存储单元;
B、
实参将地址传递给形参,调用结束时形参再将此地址回传给实参;
C、
实参将值传递给形参,调用结束时形参再将其值回传给实参;
D、
实参将值传递给形参,调用结束时形参并不将其值回传给实参;我的答案:D得分:分
7
【单选题】
若用数组名作为函数调用的实参,则传递给形参的是
A、
数组第一个元素的地址;
B、
数组的第一个元素的值;
C、
数组中所有元素的值;
D、
数组元素的个数;
我的答案:A得分:分
8
【单选题】C语言规定了程序中各函数之间调用关系,以下说法正确的是
A、既允许直接递归调用也允许间接递归调用;
B、不允许直接递归调用也不允许间接递归调用;
C、允许直接递归调用不允许间接递归调用;
D、不允许直接递归调用允许间接递归调用;
我的答案:A得分:分
9
【单选题】
递归函数f(n)=f(n-1)+n (n>1)的递归体是
f(1)=0
B、
f(0)=1
C、
f(n)=f(n-1)+n
D、
f(n)=n
我的答案:C得分:分
10
【单选题】
若函数的形参为一维数组,则下列说法中正确的是()。
使用函数时的对应实参必为数组名。
B、
形参数组可以不指定大小。
C、
形参数组的元素个数必须等于实参数组的元素个数。
D、
形参数组的元素个数必须多于实参数组的元素个数。我的答案:B得分:分
11
【单选题】
在函数调用过程中,如果函数fun A调用了函数fun B,函数fun B 又调用了函数fun A,则()。
A、
为函数的直接递归调用
B、
称为函数的间接递归调用
C、
为函数的循环调用
D、
C语言中不允许这样的递归调用
我的答案:B得分:分
12
【单选题】
有以下函数定义:
void fun(int n,double x) {……}
下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是()。
A、
fun(int y,double m);
B、
k=fun(10,;
C、
fun(x,n);
D、
void fun(n,x);
我的答案:C得分:分
13
【单选题】
已有以下数组定义和f函数调用语句,则在f函数的说明中,对形参数组array的正确定义方式为______。
int a[3][4];
f(a);
A、
f(int array[][6])
B、
f(int array[3][])
C、
f(int array[][4])
D、
f(int array[2][5])
我的答案:C得分:分
14
【单选题】
若程序中定义函数
float fadd(float a, float b)
{
return a+b;
}
并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是