C语言函数练习题及答案.pdf
《C语言函数练习题及答案.pdf》由会员分享,可在线阅读,更多相关《C语言函数练习题及答案.pdf(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C C 语言函数练习题及答案语言函数练习题及答案1 1【单选题】【单选题】在下列关于在下列关于 C C 函数定义的叙述中,正确的是?函数定义的叙述中,正确的是?A A、B B、C C、D D、函数可以嵌套定义,但不可以嵌套调用;函数可以嵌套定义,但不可以嵌套调用;函数不可以嵌套定义,但可以嵌套调用;函数不可以嵌套定义,但可以嵌套调用;函数不可以嵌套定义,也不可以嵌套调用;函数不可以嵌套定义,也不可以嵌套调用;函数可以嵌套定义,也可以嵌套调用;函数可以嵌套定义,也可以嵌套调用;我的答案:我的答案:B B 得分:得分:2.52.5 分分2 2【单选题】【单选题】下面函数调用语句含有实参的个数为?下
2、面函数调用语句含有实参的个数为?nc(exp1,exp2),(exp3,exp4,exp5);nc(exp1,exp2),(exp3,exp4,exp5);1 1A A、B B、C C、D D、2 24 45 5我的答案:我的答案:B B 得分:得分:2.52.5 分分3 3【单选题】【单选题】C C 语言中函数返回值的类型是由以下哪个选项语言中函数返回值的类型是由以下哪个选项决定的?决定的?A A、B B、函数定义时指定的类型;函数定义时指定的类型;returnreturn 语句中的表达式类型;语句中的表达式类型;C C、D D、调用该函数时的实参的数据类型;调用该函数时的实参的数据类型;形
3、参的数据类型;形参的数据类型;我的答案:我的答案:A A 得分:得分:2.52.5 分分4 4【单选题】【单选题】以下关于函数叙述中,错误的是?以下关于函数叙述中,错误的是?A A、B B、C C、函数未被调用时,系统将不为形参分配内存单元;函数未被调用时,系统将不为形参分配内存单元;实参与形参的个数必须相等,且实参与形参的类型必须对应一致;实参与形参的个数必须相等,且实参与形参的类型必须对应一致;当形参是变量时,实参可以是常量、变量或表达式;当形参是变量时,实参可以是常量、变量或表达式;D D、如函数调用时,实参与形参都为变量,则这两个变量不可能共享同一内存空间;如函数调用时,实参与形参都为
4、变量,则这两个变量不可能共享同一内存空间;我的答案:我的答案:B B 得分:得分:2.52.5 分分5 5【单选题】【单选题】若函数调用时参数为基本数据类型的变量,若函数调用时参数为基本数据类型的变量,以下以下叙述正确的是?叙述正确的是?A A、B B、C C、D D、实参与其对应的形参共享内存存储单元;实参与其对应的形参共享内存存储单元;只有当实参与其对应的形参同名时才共享内存存储单元;只有当实参与其对应的形参同名时才共享内存存储单元;实参与对应的形参分别占用不同的内存存储单元;实参与对应的形参分别占用不同的内存存储单元;实参将数据传递给形参后,立即释放原先占用的内存存储单元;实参将数据传递
5、给形参后,立即释放原先占用的内存存储单元;我的答案:我的答案:C C 得分:得分:2.52.5 分分6 6【单选题】【单选题】函数调用时函数调用时,实参和形参都是简单变量,它们之实参和形参都是简单变量,它们之间数据传递的过程描述正确的是?间数据传递的过程描述正确的是?A A、B B、C C、D D、实参将地址传递给形参,并释放原先占用的存储单元;实参将地址传递给形参,并释放原先占用的存储单元;实参将地址传递给形参,调用结束时形参再将此地址回传给实参;实参将地址传递给形参,调用结束时形参再将此地址回传给实参;实参将值传递给形参,调用结束时形参再将其值回传给实参;实参将值传递给形参,调用结束时形参
6、再将其值回传给实参;实参将值传递给形参,调用结束时形参并不将其值回传给实参;实参将值传递给形参,调用结束时形参并不将其值回传给实参;我的答案:我的答案:D D 得分:得分:2.52.5 分分7 7【单选题】【单选题】若用数组名作为函数调用的实参,若用数组名作为函数调用的实参,则传递给形参则传递给形参的是?的是?A A、B B、C C、D D、数组第一个元素的地址;数组第一个元素的地址;数组的第一个元素的值;数组的第一个元素的值;数组中所有元素的值;数组中所有元素的值;数组元素的个数;数组元素的个数;我的答案:我的答案:A A 得分:得分:2.52.5 分分8 8【单选题】【单选题】C C 语言
7、规定了程序中各函数之间调用语言规定了程序中各函数之间调用关系,以下说法正确的是?关系,以下说法正确的是?A A、既允许直接递归调用也允许间接递归调用;既允许直接递归调用也允许间接递归调用;B B、不允许直接递归调用也不允许间接递归调用;不允许直接递归调用也不允许间接递归调用;C C、允许直接递归调用不允许间接递归调用;允许直接递归调用不允许间接递归调用;D D、不允许直接递归调用允许间接递归调用;不允许直接递归调用允许间接递归调用;我的答案:我的答案:A A 得分:得分:2.52.5 分分9 9【单选题】【单选题】递归函数递归函数 f(n)=f(n-1)+n (n1)f(n)=f(n-1)+n
8、 (n1)的递归体的递归体是?是?A A、f(1)=0f(1)=0B B、C C、D D、f(0)=1f(0)=1f(n)=f(n-1)+nf(n)=f(n-1)+nf(n)=nf(n)=n我的答案:我的答案:C C 得分:得分:2.52.5 分分1010【单选题】【单选题】若函数的形参为一维数组,若函数的形参为一维数组,则下列说法中正确的则下列说法中正确的是()。是()。A A、B B、C C、D D、使用函数时的对应实参必为数组名。使用函数时的对应实参必为数组名。形参数组可以不指定大小。形参数组可以不指定大小。形参数组的元素个数必须等于实参数组的元素个数。形参数组的元素个数必须等于实参数组
9、的元素个数。形参数组的元素个数必须多于实参数组的元素个数。形参数组的元素个数必须多于实参数组的元素个数。我的答案:我的答案:B B 得分:得分:2.52.5 分分1111【单选题】【单选题】在函数调用过程中,在函数调用过程中,如果函数如果函数 fun Afun A 调用了函数调用了函数fun B,fun B,函数函数 fun Bfun B 又调用了函数又调用了函数 fun Afun A,则则()()。A A、为函数的直接递归调用为函数的直接递归调用B B、C C、称为函数的间接递归调用称为函数的间接递归调用为函数的循环调用为函数的循环调用D D、C C 语言中不允许这样的递归调用语言中不允许这
10、样的递归调用我的答案:我的答案:B B 得分:得分:2.52.5 分分1212【单选题】【单选题】有以下函数定义:有以下函数定义:void fun(int n,double x)void fun(int n,double x)下选项中的变量都已正确定义并赋值,下选项中的变量都已正确定义并赋值,则对函数则对函数funfun 的正确调用语句是()。的正确调用语句是()。A A、fun(intfun(int y,doubley,double m);m);B B、C C、k=fun(10,12.5);k=fun(10,12.5);fun(x,n);fun(x,n);D D、voidvoid fun(n
11、,x);fun(n,x);我的答案:我的答案:C C 得分:得分:2.52.5 分分1313【单选题】【单选题】已有以下数组定义和已有以下数组定义和 f f 函数调用语句,则在函数调用语句,则在f f 函函数的说明中,数的说明中,对形参数组对形参数组 arrayarray 的正确定义方式的正确定义方式为为_。int a34;int a34;f(a);f(a);A A、f(intf(int array6)array6)B B、C C、f(intf(int array3)array3)f(intf(int array4)array4)D D、f(intf(int array25)array25)我
12、的答案:我的答案:C C 得分:得分:2.52.5 分分1414【单选题】【单选题】若程序中定义函数若程序中定义函数float fadd(float a,float b)float fadd(float a,float b)return a+b;return a+b;并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是误的是?A A、floatfloatfadd(floatfadd(floata,b)a,b);B B、C C、D D、floatfloatfadd(floatfadd(floatb,b,fl
13、oatfloata)a);floatfloatfadd(float,fadd(float,float)float);floatfloatfadd(floatfadd(floata,a,floatfloatb)b);我的答案:我的答案:A A 得分:得分:2.52.5 分分1515【单选题】【单选题】下面程序段运行后的输出结果是?下面程序段运行后的输出结果是?(假设程序运行时输入(假设程序运行时输入 5 5,3 3 回车)回车)int a,b;int a,b;void swap()void swap()int t;int t;t=a;t=a;a=b;a=b;b=t;b=t;void main()
14、void main()int a,b;int a,b;scanf(%d,%d,&a,&b);scanf(%d,%d,&a,&b);swap();swap();printf(a=%d,b=%dn,a,b);printf(a=%d,b=%dn,a,b);A A、a=5,b=3a=5,b=3B B、a=3,b=5a=3,b=5C C、5,35,3D D、3,53,5我的答案:我的答案:A A 得分:得分:2.52.5 分分1616【单选题】【单选题】以下程序运行后的输出结果是以下程序运行后的输出结果是?int fun(int x,int y)int fun(int x,int y)if(xy)if(
15、xy)return x;return x;else else return y;return y;void main()void main()int x=3,y=8,z=6,r;int x=3,y=8,z=6,r;r=fun(fun(x,y),2*z);r=fun(fun(x,y),2*z);printf(%dn,r);printf(%dn,r);A A、3 3B B、6 6C C、D D、8 81212我的答案:我的答案:D D 得分:得分:2.52.5 分分1717【单选题】【单选题】下列程序的输出结果是()。下列程序的输出结果是()。#include stdio.h#include st
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 函数 练习题 答案
限制150内