C语言习题集合函数.docx
- 文档编号:2176528
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:35
- 大小:28.75KB
C语言习题集合函数.docx
《C语言习题集合函数.docx》由会员分享,可在线阅读,更多相关《C语言习题集合函数.docx(35页珍藏版)》请在冰豆网上搜索。
C语言习题集合函数
第五部分函数
5.1选择题
1.C语言就是由()构成。
A、主程序与子程序
B、主函数与若干子函数
C、一个主函数与一个其她函数
D、主函数与子程序
2.以下说法中正确得就是()。
A、C语言程序总就是从第一个得函数开始执行
B、在C语言程序中,要调用得函数必须在main()函数中定义
C、C语言程序总就是从main()函数开始执行
D、C语言程序中得main()函数必须放在程序得开始部分
3.以下对C语言函数得有关描述中,正确得就是()。
A、调用函数时,只能把实参得值传送给形参,形参得值不能传送给实参
B、C函数既可以嵌套定义又可以递归调用
C、函数必须有返回值,否则不能使用函数
D、C程序中有调用关系得所有函数必须放在同一个源程序文件中
4.C语言程序中,当函数调用时()。
A、实参与形参各占一个独立得存储单元
B、实参与形参共用一个存储单元
C、可以由用户指定就是否共用存储单元
D、计算机系统自动确定就是否共用存储单元
5.关于return语句,下列正确得说法就是()。
A、在主函数与其她函数中均要出现
B、必须在每个函数中出现
C、可以在同一个函数中出现多次
D、只能在除主函数之外得函数中出现一次
6.一个函数返回值得类型就是由()决定得。
A、return语句中表达式得类型
B、在调用函数时临时指定
C、定义函数时指定得函数类型
D、调用该函数得主调函数得类型
7.在C语言得函数中,下列正确得说法就是()。
A、必须有形参
B、形参必须就是变量名
C、可以有也可以没有形参
D、数组名不能作形参
8.以下描述正确得就是()。
A、函数调用可以出现在执行语句或表达式中
B、函数调用不能作为一个函数得实参
C、函数调用可以作为一个函数得形参
D、以上都不正确
9.在调用函数时,如果实参就是简单变量,它与对应形参之间得数据传递方式就是()。
A、地址传递B、单向值传递
C、由实参传给形参,再由形参传回实参D、传递方式由用户指定
10.当调用函数时,实参就是一个数组名,则向函数传送得就是()。
A、数组得长度B、数组得首地址
C、数组每一个元素得地址D、数组每个元素中得值
11.如果在一个函数得复合语句中定义了一个变量,则该变量()。
A、只在该复合语句中有效,在该复合语句外无效
B、在该函数中任何位置都有效
C、在本程序得源文件范围内均有效
D、此定义方法错误,其变量为非法变量
12.下列说法不正确得就是()。
A、主函数main中定义得变量在整个文件或程序中有效
B、不同函数中,可以使用相同名字得变量
C、形式参数就是局部变量
D、在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效
13.在一个源程序文件中定义得全局变量得有效范围就是()。
A、本源程序文件得全部范围
B、一个C程序得所有源程序文件
C、函数内全部范围
D、从定义变量得位置开始到源程序文件结束
14.以下叙述中不正确得就是()。
A、在不同得函数中可以使用相同名字得变量
B、函数中得形式参数就是局部变量
C、在一个函数内定义得变量只在本函数范围内有效
D、在一个函数内得复合语句中定义得变量在本函数范围内有效
15.如果要限制一个变量只能为本文件所使用,必须通过()来实现。
A、外部变量说明B、静态局部变量
C、静态外部变量D、局部变量说明
16.下列哪种数据不存放在动态存储区中()。
A、函数形参变量B、局部自动变量
C、函数调用时得现场保护与返回地址D、局部静态变量
17.以下叙述中不正确得就是()。
A、函数中得自动变量可以赋初值,每调用一次,赋一次初值。
B、在调用函数时,实在参数与对应形参在类型上只需赋值兼容。
C、外部变量得隐含类别就是自动存储类别。
D、函数形参可以说明为register变量。
18.以下只有在使用时才为该类型变量分配内存得存储类说明就是()。
A、auto与staticB、auto与register
C、register与staticD、extern与register
19.C语言中,函数值类型得定义可以缺省,此时函数值得隐含类型就是()。
A、voidB、intC、floatD、double
20.在C语言中,函数得隐含存储类别就是()。
A、autoB、staticC、externD、无存储类别
21.在C语言中,形参得缺省存储类就是()。
A、autoB、registerC、staticD、extern
22.若有以下程序
#include
voidf(intn);
main()
{
voidf(intn);
f(5);
}
voidf(intn)
{
printf("%d\n",n);
}
则以下叙述中不正确得就是()。
A、若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数f
B、若在主函数前对函数f进行说明,则在主函数与其后得其它函数中都可以正确调用函数f
C、对于以上程序,编译时系统会提示出错信息:
提示对f函数重复说明
D、函数f无返回值,所以可用void将其类型定义为无值型
23.以下所列得各函数首部中,正确得就是()。
A、voidplay(var:
Integer,varb:
Integer)
B、voidplay(inta,b)
C、voidplay(inta,intb)
D、Subplay(aasinteger,basinteger)
24.有如下函数调用语句
func(rec1,rec2+rec3,(rec4,rec5));
该函数调用语句中,含有得实参个数就是()。
A、3B、4C、5D、有语法错
25.若有以下函数调用语句:
fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实参得个数就是()。
A、3B、4C、5D、6
26.以下函数值得类型就是()。
fun(floatx)
{
floaty;
y=3*x-4;
returny;
}
A、intB、不确定C、voidD、float
27.下列函数定义不正确得就是()。
A、intmax()B、intmax(x,y)
{intx,y,z;intx,y;
z=x>y?
x:
y;{intz;
}z=x>y?
x:
y;
return(z);}
C、intmax(x,y)D、intmax()
{intx,y,z;{}
z=x>y?
x:
y;
return(z);
}
28.下列程序得运行结果就是()。
main()
{
inti=3;
printf("%d,%d,%d\n",i,i++,i++);
}
A、5,5,4B、3,4,5C、3,3,4D、5,4,3
29.以下程序得输出结果就是()。
fun(intx,inty,intz)
{z=x*x+y*y;}
main()
{
inta=31;
fun(5,2,a);
printf("%d",a);
}
A、0B、29C、31D、无定值
30.下列程序执行后得输出结果就是()。
voidfunc1(inti);
voidfunc2(inti);
charst[]="hello,friend!
";
voidfunc1(inti)
{
printf("%c",st[i]);
if(i<3){i+=2;func2(i);}
}
voidfunc2(inti)
{
printf("%c",st[i]);
if(i<3){i+=2;func1(i);}
}
main()
{
inti=0;
func1(i);
printf("\n");
}
A、helloB、helC、hloD、hlm
31.有如下程序
intfunc(inta,intb)
{return(a+b);}
main()
{
intx=2,y=5,z=8,r;
r=func(func(x,y),z);
printf("%d\n",r);
}
该程序得输出得结果就是()。
A、12B、13C、14D、15
32.有以下程序
floatfun(intx,inty)
{return(x+y);}
main()
{
inta=2,b=5,c=8;
printf("%3、0f\n",fun((int)fun(a+c,b),a-c));
}
程序运行后得输出结果就是()。
A、编译出错B、9C、21D、9、0
33.有以下程序
#include"stdio、h"
intabc(intu,intv);
main()
{
inta=24,b=16,c;
c=abc(a,b);
printf("%d\n",c);
}
intabc(intu,intv)
{
intw;
while(v)
{
w=u%v;u=v;v=w
}
returnu;
}
输出结果就是()。
A、6B、7C、8D、9
34.阅读以下函数:
fun(chars[],chart[])
{
inti=-1;
while(++i,s[i]==t[i]&&s[i]!
=’\0’);
return(s[i]==’\0’&&t[i]==’\0’);
}
以上函数得功能就是()。
A、比较串s与t得长度B、比较串s与t得大小
C、比较串s与t就是否相等D、将串t赋给串s
35.以下程序得输出结果就是()。
f(intb[],intm,intn)
{
inti,s=0;
for(i=m;i returns; } main() { intx,a[]={1,2,3,4,5,6,7,8,9}; x=f(a,3,7); printf("%d\n",x); } A、10B、18C、8D、15 36.以下程序中函数reverse得功能就是将a所指数组中得内容进行逆置。 voidreverse(inta[],intn) { inti,t; for(i=0;i { t=a[i];a[i]=a[n-1-i];a[n-1-i]=t; } } main() { intb[10]={1,2,3,4,5,6,7,8,9,10};inti,s=0; reverse(b,8); for(i=6;i<10;i++)s+=b[i]; printf("%d\n",s); } 程序运行后得输出结果就是()。 A、22B、10C、34D、30 37.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 习题 集合 函数