第07章 函数.docx
- 文档编号:9886248
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:51
- 大小:55.46KB
第07章 函数.docx
《第07章 函数.docx》由会员分享,可在线阅读,更多相关《第07章 函数.docx(51页珍藏版)》请在冰豆网上搜索。
第07章函数
第七章函数
7.1选择题
7.1 以下正确的说法是______。
建立函数的目的之一是A)提高程序的执行效率
B)提高程序的可读性
C)减少程序篇幅
D)减少程序文件所占内存
7.2 以下正确的说法是______。
A)用户若需调用标准库函数,调用前必须重新定义
B)用户可以重新定义标准库函数,若如此,该函数将失去原有含义
C)系统根本不允许用户重新定义标准为库函数
D)用户若需调用标准库函数,调用前不必使用预编译命令将函数所在文件包括到用户源文件中,系统自动去调
7.3 以下正确的函数定义形式是______。
A)doublefun(intx,inty)
B)doublefun(intx;inty)
C)doublefun(intx,inty);
D)doublefun(intc,y);
7.4以下正确的函数定义形式是______。
A)doublefun(intx,inty)
{z=x+y;returnz;}
B)fun(intx,y)
{
intz;
returnz;
}
C)fun(x,y)
{intx,y;doublez;
z=x+y;returnz;
}
D)doublefun(intx,inty)
{doublez;
z=x+y;returnz;
}
7.5以下正确的说法是______。
在C语言中A)实参和与其对应的形参各占用独立的存储单元
B)实参和与其对应的形参共占用一个存储单元
C)只有当实参和与其对应的形参同名时才共占用存储单元
D)形参是虚拟的,不占用存储单元
7.6若调用一个函数,且此函数中没有return语句,则正确的说法是______。
该函数A)没有返回值
B)返回若干个系统默认值
C)能返回一个用户所希望的函数值
D)返回一个不确定的值
7.7以下不正确的说法是______。
C语言规定A)实参可以是常量、变量或表达式
B)形参可以是常量、变量或表达式
C)实参可以为任意类型
D)形参应与其对应的实参类型一致
7.8以下正确的说法是______。
A)定义函数时,形参的类型说明可以放在函数体内
B)return后边的值不能为表达式
C)如果函数值的类型与返回值类型不一致,以函数值类型为准
D)如果形参与实参的类型不一致,以实参类型为主
7.9C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是______。
A)地址传递
B)单向值传递
C)由实参传给形参,再由形参传回实参
D)由用户指定传递方式
7.10以下程序有语法性错误,有关错误原因的正确说法是______。
main()
{intG=5,k;
voidprt_char();
……
k=prt_char(G);
……
}
A)语句voidptr_char();有错,它是函数调用语句,不能用void说明
B)变量名不能使用大写字母
C)函数说明和函数调用语句之间有矛盾
D)函数名不能用下划线
7.11C语言允许函数值类型缺省定义,此时该函数值隐含的类型是______。
A)float型
B)int型
C)long型
D)double型
7.12C语言规定,函数返回值的类型是由______。
A)return语句中的表达式类型所决定
B)调用该函数时的主调函数类型所决定
C)调用该函数时系统临时决定
D)在定义该函数时所指定的函数类型所决定
7.13下面函数调用语句含有实参的个数为______。
fun((exp1,exp2),(exp3,exp4,exp5));
A)1B)2C)4D)5
7.14以下错误的描述是______。
函数调用可以A)出现在执行语句中
B)出现在一个表达式中
C)做为一个函数的实参
D)做为一个函数的形参
7.15以下程序的功能是计算函数F(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值,请选择填空。
#include
#include
floatf(float,float);
main()
{
flaotx,y,z,sum;
scanf(“%f%f%f”,&x,&y,&z);
sum=f(__1__)+f(__2__);
printf(“sum=%f\n”,sum);
}
floatf(flaota,floatb)
{floatvalue;
value=a/b;
return(value);
}
1、A)x-y,x+yB)x+y,x-yC)z+y,z-yD)z-y,z+y
2、A)x-y,x+yB)x+y,x-yC)z+y,z-yD)z-y,z+y
7.16以下正确的描述是______。
在C语言程序中,A)函数的定义可以嵌套,但函数的调用不可以嵌套
B)函数的定义不可以嵌套,但函数的调用可以嵌套
C)函数的定义和函数的调用均不可以嵌套
D)函数的定义和函数的调用均可以嵌套
7.17以下程序是选出能被3整除且至少有一位是5的两位数,打印出所有这样的数,及其个数。
请填空。
sub(intk,intn)
{
inta1,a2;
a2=__1__;
a1=k-__2__;
if((k%3==0&&a2==5)||(k%3==0&&a1==5))
{
printf(“%d”,k);
n++;
returnn;
}
elsereturn–1;
}
main()
{
intn=0,k,m;
for(k=10;k<=99;k++)
{
m=sub(k,n);
if(m!
=-1)n=m;
}
printf(“\nn=%d”,n);
}
1、A)k*10B)k%10C)k/10D)k*10%10
2、A)a2*10B)a2C)a2/10D)a2%10
7.18以下是有关汉诺塔问题的程序段,若在main函数中有调用语句hanoi(3,‘A’,‘B’,‘C’);则符合程序段运行结果的选项是______。
voidmove(chargetone,charputonr)
{
printf(“%c――>%c\n”,getone,getone);
}
voidhanoi(intn,charone,chartwo,chatthree)
{
if(n==1)move(one,three);
else{
hanoi(n-1,one,three,two);
move(one,three);
hanoi(n-1,two,one,three);
}
}
A)
A――>C
B)
A――>C
C)
A――>C
D)
A――>C
A――>B
A――>B
A――>B
A――>B
C――>B
C――>A
C――>B
C――>B
B――>A
A――>B
A――>C
A――>C
C――>B
B――>C
B――>A
A――>B
A――>C
A――>C
B――>C
B――>C
A――>B
A――>B
A――>C
A――>C
7.19若有数组名作为函数调用的实参,传递给形参的是______。
A)数组的首地址
B)数组第一个元素的值
C)数组中全部元素的值
D)数组元素的个数
7.20已有以下数组定义和f函数调用语句,则在f函数的说明中,对形参数组array的错误定义方式为______。
inta[3][4];
f(a);
A)f(intarray[][6])
B)f(intarray[3][])
C)f(intarray[][4])
D)f(intarray[2][5])
7.21若使用一维数组名作函数实参,则以下正确的说法是______。
A)必须在主调函数中说明此数组的大小
B)实参数组类型与形参数组类型可以不匹配
C)在被调用函数中,不需要考虑形参数组大小
D)实参数组名与形参数组名必须一致
7.22折半查找法的思路是:
先确定待查元素的范围,将其分成两半,然后测试位于中间点元素的值。
如果该待查元素的值大于中间点元素,就缩小待查范围,只测中点之后的元素;反之,测试中间点之前的元素,测试方法同前。
函数binary的作用是应用折半查找法从存有10个整数的a数组中对关键字m进行查找,若找到,返回其下标值;反之,返回-1。
请选择填空。
binary(inta,intm)
{
intlow=0,high=9,mid;
while(low<=high)
{
mid=(low+high)/2;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第07章 函数 07
![提示](https://static.bdocx.com/images/bang_tan.gif)