以下关于函数的叙述中正确的是()。
A.
每个函数都可以被其它函数调用(包括main函数)
B.
每个函数都可以被单独编译
C.
每个函数都可以单独运行
D.
在一个函数内部可以定义另一个函数
分数 2
作者 崔孝凤
单位 山东理工大学
下列关于函数的描述错误的是( )。
A.
C程序是由函数组成的。
B.
C程序中的函数是各自独立的。
C.
main函数可以调用其他的函数。
D.
在main函数中可以嵌套定义别的函数。
分数 2
作者 张高燕
单位 浙大城市学院
对于以下递归函数f,调用f(4),其返回值为() 。
int f(int n)
{ if (n) return f(n - 1) + n;
else return n;
}
A.
10
B.
4
C.
0
D.
以上均不是
分数 1
作者 张高燕
单位 浙大城市学院
对于以下递归函数f,调用函数f(27)的输出结果是( )。
void f(int n)
{
if (n < 5){
printf("%d", n);
}else{
printf("%d", n%5);
f(n/5);
}
}
A.
102
B.
201
C.
21
D.
20
分数 1
作者 张高燕
单位 浙大城市学院
对于以下递归函数,调用f(2, '1', '2', '3')的输出结果是( )。
void f(int n, char a, char b, char c)
{
if (n == 1){
printf("%c->%c#", a, b) ;
}else{
f(n-1, a, c, b);
printf("%c->%c#", a, b);
f(n-1, c, b, a);
}
}
A.
1->2#1->3#3->2#
B.
3->2#1->2#1->3#
C.
'1'->'3'#'3'->'2'#'1'->'2'#
D.
1->3#1->2#3->2#
分数 2
作者 黄龙军
单位 绍兴文理学院
函数f定义如下,执行语句 m=f(5); 后,m的值应为( )。
int f(int k) {
if(k==0 || k==1) return 1;
else return f(k-1)+f(k-2);
}
A.
3
B.
8
C.
5
D.
13
分数 1
作者 cuit
单位 成都信息工程大学
设有如下函数定义
int fun(int k)
{ if(k<1) return 0;
else if(k==1) return 1;
else return fun(k-1)+1;
}
若执行调用语句“n =fun (3);”, 则函数fun总共被调用的次数是()。
A.
2
B.
3
C.
4
D.
5
分数 2
作者 王秀
单位 福州大学
将两个字符串连接起来组成一个字符串时,选用函数( )。
A.
strlen( )
B.
strcpy( )
C.
strcat( )
D.
strcmp( )
分数 2
作者 wangxiu
单位 福州大学
若有以下调用语句,则不正确的 fun( )函数的首部是( )。
main( )
{ …
int a[50], n;
…
fun(n, &a[9]);
…
}
A.
void fun(int m, int x[ ])
B.
void fun(int s, int h[41])
C.
void fun(int p, int *s)
D.
void fun(int n, int a)
分数 2
作者 周强
单位 青岛大学
以下说法正确的是:
A.
一个C语言源文件(.c文件)必须包含main函数
B.
一个C语言源文件(.c文件)可以包含两个以上main函数
C.
C语言头文件(.h文件)和源文件(.c文件)都可以进行编译
D.
在一个可以正确执行的C语言程序中,一个C语言函数的声明(原型)可以出现任意多次
分数 1
作者 张高燕
单位 浙大城市学院
执行下面程序,正确的输出是()。
int x = 5, y = 7;
void swap ( )
{
int z ;
z = x ; x = y ; y = z ;
}
int main(void)
{
int x = 3, y = 8;
swap ( ) ;
printf ("%d,%d \n", x , y ) ;
return 0 ;
}
A.
3,8
B.
8,3
C.
5,7
D.
7,5
分数 2
作者 maowei
单位 武汉理工大学
The output of the following program is ( ).
fun(int x, int y, int z)
{z=x*x+y*y; }
main( )
{
int a=31;
fun(5,2,a);
printf("%d",a);
}
A.
0
B.
29
C.
31
D.
uncertain
分数 1
作者 张高燕
单位 浙大城市学院
下列计算三角形面积函数的声明中,( )是正确的。
A.
double area(double a, double b, double c);
B.
double area(int a, b, c);
C.
int area(double a, double b, double c)
D.
double area(double a, b, c)
分数 2
作者 王俊玲-ktp
单位 集美大学
设函数 fun 的定义形式为: void fun(char ch, float x ) { ……} 则以下对函数 fun 的调用语句中,正确的是()。
A.
fun("abc",3.0);
B.
t=fun('D',16.5);
C.
fun('65',2.8);
D.
fun(32,32);
分数 2
作者 王俊玲-ktp
单位 集美大学
有以下程序,程序的执行结果是()。
char fun(char x , char y)
{
if(x<y)
return x;
return y;
}
int main( )
{
int a='9',b='8',c='7';
printf("%c \n",fun(fun(a,b) ,fun(b,c) ));
return 0;
}
A.
函数调用出错
B.
8
C.
9
D.
7
分数 2
作者 王俊玲-ktp
单位 集美大学
有如下程序,执行后输出结果是()。
void f(int x,int y)
{
int t;
if(x<y)
{ t=x; x=y; y=t; }
}
int main()
{
int a=4,b=3,c=5;
f(a,b);
f(a,c);
f(b,c);
printf("%d,%d,%d\n",a,b,c);
return 0;
}
A.
3,4,5
B.
5,3,4
C.
5,4,3
D.
4,3,5
分数 2
作者 王俊玲-ktp
单位 集美大学
有以下程序,输出结果是()。
#include"stdio.h"
int abc(int u,int v);
int main ()
{
int a=24,b=16,c;
c=abc(a,b);
printf("%d\n",c);
return 0;
}
int abc(int u,int v)
{
int w;
while(v)
{ w=u%v; u=v; v=w ;}
return u;
}
A.
6
B.
7
C.
8
D.
9
分数 2
作者 王俊玲-ktp
单位 集美大学
以下程序的输出的结果是____。
#include<stdio.h>
int x=3;
void incre();
int main()
{
int i;
for (i=1;i<x;i++) incre();
return 0;
}
void incre()
{
static int x=1;
x*=x+1;
printf(" %d",x);
}
A.
3 3
B.
2 2
C.
2 6
D.
2 5
分数 2
作者 王俊玲-ktp
单位 集美大学
给出程序运行的结果:
int fn(int x,int y)
{ int z;
z=(x>y) ? x:y;
return z;
}
int main()
{ int a,b;
int z;
scanf("%d%d",&a,&b);
z=fn(a,b);
printf("%d\n",z);
return 0;
}
样例输入:
20 200
样例输出:
A.
20
B.
200
C.
20 200
D.
200 20
分数 2
作者 周强
单位 青岛大学
执行如下程序段,打印输出的内容是:
#include <stdio.h>
void fun (int c, int *d) {
c++;
(*d)++;
}
int main ( ){
int a=5, b=9;
fun(a, &b);
printf("%d, %d", a, b);
return 0;
}
A.
5, 9
B.
6, 10
C.
5, 10
D.
6, 9
分数 1
作者 孙霞
单位 西北大学
一个C语言源程序中,main()函数的位置()
A.
必须在其他所有函数之后
B.
必须在其他所有函数之前
C.
必须在固定的位置上
D.
可以在任意位置
分数 2
作者 崔孝凤
单位 山东理工大学
凡是函数中未指定存储类别的局部变量,其隐含的存储类别为( )。
A.
静态(static)
B.
自动(auto)
C.
外部(extern)
D.
寄存器(register)
分数 2
作者 崔孝凤
单位 山东理工大学
已有如下数组定义和函数调用语句,
int a[3][4];
fun(a); 则fun函数的形参数组定义正确的是
( )。
A.
fun(int a[][6])
B.
fun(int a[3][])
C.
fun(int a[][])
D.
fun(int a[][4])
分数 2
作者 崔孝凤
单位 山东理工大学
在一个源文件中定义的全局变量的作用域是( )。
A.
本文件的全部范围。
B.
从定义该变量的位置开始到本文件结束。
C.
本程序的全部范围。
D.
本函数的全部范围。
分数 2
作者 崔孝凤
单位 山东理工大学
若函数定义如下,int fun(float a)
{float b=a+3;
return b;
} 假设将常数3.6传给a,则函数的返回值是()。
A.
3
B.
6.6
C.
5
D.
6
分数 1
作者 张高燕
单位 浙大城市学院
上机运行以下程序(例1-1),输入整数13,输出结果是错误的,其原因是( )。
#include <stdio.h> /* 编译预处理命令 */
int main(void) /* 主函数 */
{
int n; /* 变量定义 */
int factorial(int n); /* 函数声明 */
scanf("%d", &n); /* 输入一个整数 */
printf("%d\n", factorial(n)); /* 调用函数计算阶乘 */
return 0;
}
int factorial(int n) /* 定义计算 n! 的函数 */
{
int i, fact = 1;
for(i = 1; i <= n; i++){
fact = fact * i;
}
return fact;
}
A.
printf函数中使用了错误的格式控制符
B.
for循环语句多执行了一次,计算结果是14的阶乘
C.
for循环语句少执行了一次,计算结果是12的阶乘
D.
运算结果超出了整数的取值范围
分数 1
作者 颜晖
单位 浙大城市学院
以下程序的运行结果是( )。
int x = 5, y = 6;
void incxy( )
{
x++;
y++;
}
int main(void )
{
int x = 3;
incxy( );
printf("%d, %d\n", x, y);
return 0;
}
A.
3, 6
B.
4, 7
C.
3, 7
D.
6, 7
分数 2
作者 C课程组
单位 湖南工程学院计算机与通信学院
下列程序的执行结果是( )。
void fun ( int *p )
{ (*p)++;
}
main( )
{ int a=5;
fun(&a);
printf("%d",a);
}
A.
5
B.
a
C.
6
D.
程序有误
分数 2
作者 C课程组
单位 湖南工程学院计算机与通信学院
函数调用语句function((a,b),c)中含有的实参个数为( )。
A.
1
B.
3
C.
2
D.
语法有误
分数 2
作者 陈晓梅
单位 广东外语外贸大学
若有如下函数定义,则对应正确的函数原型声明是:
void fun(int a, int b)
{
return a+b;
}
A.
void fun(int a, int b);
B.
void fun(int a, int b)
C.
void fun(float a, int b);
D.
int fun(int a, int b);
分数 2
作者 王宇
单位 集美大学诚毅学院
若有函数定义:
int fun(int x,float y)
{
int z;
z=x+(int)y;
return z;
}
则下列选项中,不正确的函数调用是( )
A.
z=fun(10,2.3)
B.
printf(“%d”,fun(10.2,2))
C.
z=fun(‘A’,2);
D.
z=fun(‘A’)
分数 2
作者 周鹏
单位 新疆科技学院
C语言中函数返回值的类型是由( )决定的。
A.
return语句中的表达式类型
B.
调用该函数的主调函数的类型
C.
调用函数时临时决定
D.
定义函数时所指定的函数类型
分数 2
作者 周鹏
单位 新疆科技学院
一个C程序的执行是从( )。
A.
main函数开始,到main函数结束。
B.
第一个函数开始,到本程序main函数结束。
C.
main函数开始,到本程序文件的最后一个函数结束。
D.
第一个函数开始,到本程序文件的最后一个函数结束。
分数 1
作者 cuit
单位 成都信息工程大学
有以下函数定义:void fun(int n, double x){……}。若以下选项中的变量都已正确定义并赋值,则正确调用函数fun()的语句是()。
A.
fun(int y, double m);
B.
k = fun(10, 12.5);
C.
fun(x, n);
D.
void fun(n, x);
分数 1
作者 cuit
单位 成都信息工程大学
C语言中, 函数值类型的定义可以缺省, 此时函数值的隐含类型是()。
A.
void
B.
int
C.
float
D.
double
分数 1
作者 cuit
单位 成都信息工程大学
下列程序的运行结果是()。
int x1 = 30, x2 = 40;
sub(int x, int y)
{ x1=x; x=y; y =x1;}
int main(void)
{ int x3 =10, x4=20;
sub(x3, x4);
sub(x2, x1);
printf("%d,%d,%d,%d\n" , x3, x4, x1, x2);
return 0; }
A.
10, 20, 40, 40
B.
10, 20, 30, 40
C.
10, 20, 40, 30
D.
20, 10, 30, 40
分数 1
作者 cuit
单位 成都信息工程大学
下列程序的输出结果是()。
int fun(int x, int y)
{ static int m=0, i=2;
i+=m+1;
m =i+x+y;
return m; }
int main(void)
{ int j=1, m =1, k;
k =fun(j,m); printf("%d, " ,k);
k =fun(j,m); printf("%d\n " , k);
return 0; }
A.
5, 5
B.
5, 11
C.
11, 5
D.
11, 11
分数 1
作者 cuit
单位 成都信息工程大学
下列程序执行后输出的结果是()。
int d = 1;
void fun(int q)
{ int d=5;
d+=q++; printf("%d" ,d); }
int main(void)
{ int a= 3;
fun(a); d+=a++;
printf("%d\n", d);
return 0; }
A.
84
B.
96
C.
94
D.
85
分数 2
作者 李廷元
单位 中国民用航空飞行学院
5-10. 下列程序的输出结果是
#include <stdio.h>
int f(int a) {
int b = 0;
static int c = 3;
a = c++; b++;
return (a);
}
int main()
{
int a = 2, i, k;
for (i = 0; i < 2; i++)k = f(a++);
printf("%d\n", k);
return 0;
}
A.
3
B.
0
C.
5
D.
4
分数 2
作者 maowei
单位 武汉理工大学
How many '*' will be printed?
int i;
int main()
{ void prt();
for(i=0; i<5; i++)
prt();
}
void prt()
{ for(i=0;i<5;i++)
printf("%c",'*');
printf("\n");
}
A.
25
B.
5
C.
0
D.
uncertain
分数 1
作者 张高燕
单位 浙大城市学院
函数f定义如下,执行语句“sum=f(5)+f(3);”后,sum的值应为( )。
int f(int m)
{ static int i=0;
int s=0;
for(;i<=m;i++)
s+=i;
return s;
}
A.
21
B.
16
C.
15
D.
8
分数 2
作者 王俊玲-ktp
单位 集美大学
下面程序a,b值为()
#include <stdio.h>
int main (void)
{
int a;
a = 1;
{
int b = 2;
b = a + b;
a = a + b;
}
printf ("%d,%d",a,b);
return 0;
}
A.
1,2
B.
1,0
C.
1,不认识b
D.
4,不认识b
分数 2
作者 黄龙军
单位 绍兴文理学院
关于全局变量和局部变量的说法,正确的是( )。
A.
全局变量必须在函数之外进行定义
B.
若全局变量与局部变量同名,则默认为全局变量
C.
全局变量的作用域为其所在的整个文件范围
D.
全局变量也称外部变量,仅在函数外部有效,而在函数内部无效
分数 2
作者 黄龙军
单位 绍兴文理学院
以下程序的输出结果是( )。
//C++风格代码
int m;
void f(){
int m=4;
cout<<m<<" ";
}
int main(){
f();
cout<<m<<endl;
return 0;
}
//C风格代码
int m;
void f(){
int m=4;
printf("%d ",m);
}
int main(){
f();
printf("%d\n",m);
return 0;
}
A.
0 4
B.
4 0
C.
4 4
D.
4 随机数
分数 2
作者 孙炼
单位 成都锦城学院
以下程序的输出结果是_____。
int f()
{ static int i=0;
int s=1;
s+=i; i++;
return s; }
main()
{ int i,a=0;
for(i=0;i<5;i++) a+=f();
printf("%d\n",a); }
A.
25
B.
24
C.
20
D.
15
分数 2
作者 翁恺
单位 浙江大学
如果一个变量在整个程序运行期间都存在,但是仅在说明它的函数内是可见的,这个变量的存储类型应该被说明为:
A.
自动变量
B.
外部变量
C.
静态变量
D.
另三种都可以
分数 1
作者 张高燕
单位 浙大城市学院
以下正确的说法是()。
A.
实参与其对应的形参共同占用一个存储单元
B.
实参与其对应的形参各占用独立的存储单元
C.
只有当实参与其对应的形参同名时才占用一个共同的存储单元
D.
形参是虚拟的,不占用内存单元
分数 1
作者 张高燕
单位 浙大城市学院
以下不正确的说法是()。
A.
实参可以是常量、变量或表达式
B.
实参可以是任何类型
C.
形参可以是常量、变量或表达式
D.
形参应与对应的实参类型一致
分数 1
作者 颜晖
单位 浙大城市学院
在函数调用Func(exp1 , exp2+exp3 , exp4*exp5)中,实参的数量是 ()。
A.
3
B.
4
C.
5
D.
语法错误
分数 1
作者 zhangweina
单位 赤峰学院
对于以下递归函数,调用fun(7)的返回值是()
int fun(int n){
if(n==0||n==1)
return 3;
else
return n-fun(n-2);
}
A.
0
B.
2
C.
3
D.
7
最新发布