PAGE
PAGE 6
C语言程序设计试题及答案
第8章 函 数
一、选择题
若调用一个函数,且此函数中没有RERUrn语句,则关于该函数正确的说法是:( )
没有返回值
返回若干个系统默认值
能返回一个用户所希望的函数值
返回一个不确定的值
答案:D
在c语言中以下不正确的说法是:( )
实参可以是常量、变量、或表达式
形参可以是常量、变量或表达式
实参可以为任意类型
形参应与其对应的实参类型一致
答案:B
以下程序有语法性错误,有关错误原因的正确说法是:( )
main()
{ int G=5,k;
void prt_char();
……
k=prt_char(G);
……
}
语句void prt_char();有错,它是函数调用语句,不能用void说明
变量名不能使用大写字母
函数说明和函数调用语句之间有矛盾
函数名不能使用下划线
答案:C
以下正确的说法是:( )
函数的定义可以嵌套,但函数的调用不可以嵌套
函数的定义不可以嵌套,但函数的调用可嵌套
函数的定义和调用均不可以嵌套
函数的定义和调用均可以嵌套
答案:B
若使用一个数组名作函数实参,则以下正确的说法是:( )
必须在主调函数中说明此数组的大小
实参数组类型与形参数组类型可以不匹配
在被调用函数中,不需要考虑形参数组的大小
实参数组名与形参数组名必须一致
答案:A
在一个函数内部定义的变量是:( )
A、 简单变量 B、 局部变量 C、 全局变量 D、 标准变量
答案:B
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是:( )
A)函数调用可以作为独立的语句存在
B)函数调用可以作为一个函数的实参
C)函数调用可以出现在表达式中
D)函数调用可以作为一个函数的形参
答案:D
已定义以下函数
fun(int*p)
{ return *p; }
该函数的返回值是:( )
A)不确定的值 B)形参p中存放的值
C)形参p所指存储单元中的值 D)形参p的地址值
答案:C
以下所列的各函数首部中,正确的是:( )
A、 void play(var :Integer,var b:Integer)
B、 void play(int a,b)
C、 void play(int a,int b)
D、 Sub play(a as integer,b as integer)
答案:C
当调用函数时,实参是一个数组名,则向函数传送的是:( )
A、 数组的长度 B、 数组的首地址
C、 数组每一个元素的地址 D、 数组每个元素中的值
答案:B
在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是:( )
A、 地址传递 B、 单向值传递
C、 由实参传给形参,再由形参传回实参 D、 传递方式由用户指定
答案:B
以下函数值的类型是:( )
fun ( float x )
{ float y;
y= 3*x-4;
return y;
}
A、 int B、 不确定 C、 void D、 float
答案:A
下列函数的功能是:( )
int fun1(chat* x)
{ char *y=x;
while(*y++);
return(y-x-1);
}
A)求字符串的长度 B、比较两个字符串的大小
C、将字符串X复制到字符串Y D、将字符串X连接到字符串Y后面
答案:A
下面程序的输出结果是:( )
void prty(int * x)
{ printf("%d\n",++*x);}
main()
{ int a=25; prtv(&a); }
A、23 B、24 C、25 D、26
答案:D
以下对C语言函数的有关描述中,正确的是:( )
A、只能把实参的值传送给形参,形参的值不能传送给实参
B、C函数既可以嵌套定义又可以递归调用
C、函数必须有返回值,否则不能使用函数
D、C程序中所有函数都可以嵌套调用
答案:A
以下叙述中不正确的是:( )
A)在C中,函数体中定义的动态变量可以赋初值,每调用一次,赋一次初值.
B、 在C中,函数体中定义的静态变量可以赋初值,每调用一次,赋一次初值.
C、 在C中,局部变量的隐含类别是自动存储类别.
D)在C中,在调用函数时,实在参数和对