C程序设计函数的声明与调用习题与答案Word文档下载推荐.docx
- 文档编号:16580225
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:11
- 大小:17.68KB
C程序设计函数的声明与调用习题与答案Word文档下载推荐.docx
《C程序设计函数的声明与调用习题与答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C程序设计函数的声明与调用习题与答案Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。
A.doublef(intx,inty)
{z=x+y;
returnz;
}
B.doublef(intx,inty)
{doublez;
z=x+y;
C.doublef(intx,y)
{doublez=x+y;
D.doublef(x,y)
{intx,y;
doublez;
z=x+y;
6、若调用一个函数intf(),且此函数中没有return语句,则正确的说法是()。
A.该函数没有返回值
B.该函数返回一个确定的值
C.该函数返回一个不确定的值
D.该函数返回一个系统默认值
C
7、若定义函数:
fun(inta,floatb){
returna+b;
则该函数的返回类型是()。
A.不确定
B.void
C.int
D.float
8、C语言规定,函数返回值的类型是由()决定的。
A.return语句中的表达式类型
B.调用该函数时由系统临时
C.调用该函数时的主调函数
D.在定义函数时所指定的函数类型
9、对于函数返回类型,不正确的说法是()。
A.可以是int类型
B.可以是void类型
C.可以是char类型
D.可以是数组类型
10、若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是()。
A.函数调用可以作为一个函数的形参
B.函数调用可以作为独立的语句存在
C.函数调用可以出现在表达式中
D.函数调用可以作为一个函数的实参
11、基本类型变量做实参时,它和对应的形参之间的数据传递方式是()。
A.值传递
B.地址传递
C.由实参传给形参,再由形参传给实参
D.由函数定义指定传递方式
12、以下叙述中错误的是()。
A.形参可以是常量、变量或表达式
B.实参可以是常量、变量或表达式
C.实参可以为任意类型
D.如果形参与实参的类型不一致,以形参类型为准
13、以下函数调用语句中,含有的实参个数是()。
Fcalc(exp1,(exp3,exp4,exp5));
A.3
B.1
C.2
D.4
14、在函数调用时,以下叙述中正确的是()。
A.实际参数和形式参数可以同名
B.函数间的数据传递不可以使用全局变量
C.函数调用后必须带回返回值
D.主调函数和被调函数总是在同一个文件里
15、下面程序执行后的输出结果是()。
#include<
stdio.h>
voidF(intx){return(3*x*x);
}
intmain(){
printf("
%d"
F(3+5));
return0;
A.编译出错
B.192
C.25
D.29
16、设函数f的定义形式为:
voidf(charch,floatx){......}
则以下对函数f的调用语句中,正确的是()。
A.t=f('
D'
16.5);
B.f("
abc"
3.0);
C.f(32,32);
D.f('
65'
2.8);
17、若各选项中所用变量已正确定义,函数fun中通过return语句返回一个函数值,以下选项中错误的程序是()。
A.intmain()
{floatfun(inti,intj);
……x=fun(i,j);
……}
floatfun(inta,intb){……}
B.floatfun(int,int);
intmain()
{……x=fun(2,10);
C.floatfun(inta,intb){……}
{……x=fun(i,j);
D.intmain()
18、若程序中定义了以下函数:
doublef(doublea,doubleb)
{return(a+b);
并将其放在调用语句之后,则在调用之前应该对该函数进行函数原型说明,以下选项
中错误的说明是()。
A.doublef(double,double);
B.doublef(doublex,doubley);
C.doublef(doubleb,doubleA);
D.doublef(doublea,b);
19、关于函数原型声明,以下叙述中错误的是()。
A.函数在调用之前,一定要给出函数原型或函数定义,保证编译系统进行调用检查
B.如果函数定义出现在函数调用之前,可以不必加函数原型声明
C.标准库函数不需要函数原型声明
D.如果在所有函数定义之前,在函数外部已做了声明,则各个主调函数不必再做函数原型声明
20、在C语言中,计算正确的是()。
A.x**y
B.pow(x,y)
C.power(x,y)
D.x^y
21、有以下程序:
voidf(intn);
{voidf(intn);
f(5);
voidf(intn)
{printf("
%d\n"
n);
以下叙述中错误的是()。
A.函数f无返回值,所以可用void将其类型定义为无值型
B.对于以上程序,编译时系统会提示出错信息:
“提示对f函数重复说明”。
C.若在主函数前对函数f进行说明,则在主函数和其后的其它函数中都可以正确调用函数f
D.若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数f
22、下列哪个类型函数不适合声明为内联函数()。
A.函数调用比较频繁
B.函数体语句较多
C.函数体语句较少
D.函数执行时间较短
23、在()情况下适宜采用inline定义内联函数。
A.函数体含有递归语句
B.需要加快程序的执行速度
C.函数代码多、不常调用
D.函数体含有循环语句
24、在函数调用过程中,如果函数A调用了函数B,函数B又调用了函数A,则()。
A.称为函数的直接递归调用
B.C语言中不允许这样的调用
C.称为函数的循环调用
D.称为函数的间接递归调用
25、下面程序执行后的输出结果是()。
charf(charx,chary)
{
if(x>
y)returny;
elsereturnx;
{chara='
9'
b='
8'
c='
7'
d='
6'
;
%c"
f(f(a,b),f(c,d)));
A.9
B.6
C.8
D.7
26、有以下程序段:
intfun1(doublea){returna*=a;
intfun2(doublex,doubley)
{doublea=0,b=0;
a=fun1(x);
b=fun1(y);
return(int)(a+b);
且doublew;
执行语句w=fun2(1.1,2.0);
后变量w的值是()。
A.0.0
B.5.0
C.5
D.5.21
27、下面程序执行后的输出结果是()。
voidfun(intx,inty,intz)
{z=x*x+y*y;
{inta=31;
fun(5,2,a);
a);
A.31
B.29
C.无定值
D.0
28、下面程序执行后的输出结果是()。
longfib(intn)
{if(n>
2)return(fib(n-1)+fib(n-2));
elsereturn
(2);
fib(3));
A.6
B.2
29、下面程序执行后的输出结果是()。
intf(intn)
{if(n==1)return1;
returnf(n-1)+1;
{inti,j=0;
for(i=1;
i<
3;
i++)j+=f(i);
j);
A.2
B.3
C.4
D.1
30、设存在函数intmax(int,int)返回两参数中较大值,若求22,59,70三者中最大值,
下列表达式不正确的是()。
A.intm=max(22,59,70);
B.intm=max(max(22,59),70);
C.intm=max(59,max(22,70));
D.intm=max(22,max(59,70));
31、对于以下递归函数f,调用f(4)的返回值是__________。
intf(intn){
if(n)returnf(n-1)+n;
elsereturnn;
A.4
B.无穷递归
C.10
D.14
三、填空题
1、C语言函数返回类型的默认定义类型是__________(使用类型标识符描述)。
int
2、可以将被调函数中获得的值返回给主调函数的语句是__________。
return
3、函数fun的功能是计算
doublefun(doublex,intn)
{inti;
doubley=1;
=n;
i++)y=y*x;
returny;
主函数中已经正确定义m,a,b变量并赋值,调用fun函数计算m=a4+b4-(a+b)3:
的调用语句为______________________________。
m=fun(a,4)+fun(b,4)-fun(a+b,3);
5、若函数定义为:
intdata(){
floatx=9.9;
return(x);
则函数返回的值是__________。
9
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 函数 声明 调用 习题 答案