第1题
在源程序的开始处加上“#include <stdio.h>“进行文件引用的原因,以下叙述正确的是( )。
stdio.h文件中包含标准输入输出函数的函数说明,通过引用此文件以便能正确使用printf、scanf等函数
将stdio.h中标准输入输出函数链接到编译生成的可执行文件中,以便能正确运行
将stdio.h中标准输入输出函数的源程序插入到引用处,以便进行编译链接
将stdio.h中标准输入输出函数的二进制代码插入到引用处,以便进行编译链接
第2题
有以下程序
#include <stdio.h>
main()
{
printf
(
"%d\n"
, NULL);
}
程序运行后的输出结果是( )。
0
变量无定义,输出不确定
-1
1
第3题
若有代数式 如下图(其中e仅代表自然对数的底数,不是变量),则 以下能够正确表示该代数式的C语言表达式是( )。
sqrt(fabs(pow(n,x)+exp(x)))
sqrt(fabs(pow(n,x)+pow(x,e)))
sqrt(abs(n^x+e^x))
sqrt(fabs(pow(x,n)+exp(x)))
第4题
以下叙述正确的是( )。
C语言函数可以嵌套调用,例如:fun(fun(x))
C语言程序是由过程和函数组成的
C语言函数不可以单独编译
C语言中除了main函数,其他函数不可作为单独文件形式存在
第5题
若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中 正确的是( )。
函数的形参和实参分别占用不同的存储单元
形参只是形式上的存在,不占用具体存储单元
同名的实参和形参占同一存储单元
函数的实参和其对应的形参共占同一存储单元
第6题
以下叙述中错误的是( )。
当在程序的开头包含头文件stdio.h时,可以给指针变量赋NULL
函数可以返回地址值
改变函数形参的值,不会改变对应实参的值
可以给指针变量赋一个整数作为地址值
第7题
C程序必须由一个或一个以上的函数组成
函数调用可以作为一个独立的语句存在
若函数有返回值,必须通过return语句返回
函数可以通过实际参数和形式参数之间进行数据传递
第8题
以下叙述中正确的是( )。
不同函数的形式参数不能使用相同名称的标识符
用户自己定义的函数只能调用库函数
实用的C语言源程序总是由一个或多个函数组成
在C语言的函数内部,可以定义局部嵌套函数
第9题
C语言程序中,若函数无返回值,则应该对函数说明的类型是 ( )。
int
double
char
void
第10题
以下叙述中错误的是( )。
函数的返回值类型不能是结构体类型只能是简单类型
函数可以返回指向结构体变量的指针
可以通过指向结构体变量的指针访问所指结构体变量的任何成员
只要类型相同结构体变量之间可以整体赋值
第11题
以下关于return语句的叙述中正确的是( )。
一个自定义函数中必须有一条return语句
一个自定义函数中可以根据不同情况设置多条return语句
定义成void类型的函数中可以有带返回值的return语句
没有return语句的自定义函数在执行结束时不能返回到调用处
第12题
用户定义的函数中可以没有return语句
用户定义的函数中可以有多个return语句,以便可以调用一次返回 多个函数值
用户定义的函数中若没有return语句,则应当定义函数为void类型
函数的return语句中可以没有表达式
第13题
以下关于函数的叙述中正确的是( )。
函数调用必须传递实参
函数必须要有形参
函数必须要有返回值
函数形参的类型与返回值的类型无关
第14题
下面的函数调用语句中func函数的实参个数是( )。
func(f2(v1,v2),(v3,v4,v5),(v6,max(v7,V8)));
3
4
5
8
第15题
函数调用语句:
fun((exp1,exp2),(exp1,exp2,exp3));
含有的实参个数 是( )。
2
第16题
avg函数的功能是求整型数组中的前若干个元素的平均值,设数组 元素个数最多不超过10,则下列函数说明语句错误的是( )。
int avg(int *a,int n);
int avg(int a[10],int n);
int avg(int a,int n);
int avg(int a[],int n);
第17题
以下程序的主函数中调用了在其前面定义的函数
fun:#include <stdio.h>
…
a[15],k;
k=fun(a);
则以下选项中错误的fun函数首部是( )。
double fun(double a[15])
double fun(double*a)
double fun(double a[])
double fun(double a)
第18题
在C语言程序中,下列说法中正确的是( )。
函数的定义可以嵌套,但函数的调用不可以嵌套
函数的定义不可以嵌套,但函数的调用可以嵌套
函数的定义和调用均不可以嵌套
函数的定义和调用均可以嵌套
第19题
设有函数定义:
sub(
k,
ch){…}
则以下对函数sub的调用语句中,正确的是( )。
sub(1,97);
sub(2,'97');
h=sub(3,'a');
sub(4,"a");
第20题
有以下程序:
f(
x);
a,b=0;
for
(a=0;a<3;a++)
b=b+f(a);
putchar
'A'
+b);
x)
return
x*x+1;
ABE
BDI
BCF
BCD
第21题
有以下函数:
func(
n)
i;
(i=0;i<=n;i++)
"*"
);
"#"
}main()
func(3);
"????"
func(4);
"\n"
****#????***#
***#????*****#
**#????*****#
****#????*****#
第22题
exch(
t[])
t[0] = t[5];
x[10] = {1,2,3,4,5,6,7,8,9,10},i=0;
while
(i <= 4)
exch(&x[i]); i++;
(i = 0;i < 5;i++)
,x[i]);
2 4 6 8 10
1 3 5 7 9
1 2 3 4 5
6 7 8 9 10
第23题
有如下程序:
sum(
a,
b)
a+b-2;
"%d"
,sum(i,3));
54321
01234
45678
12345
第24题
t=0,a=5;
if
(n/2)
a=6;
t+=a++;
else
a=7;
t+a++;
s=0,i=0;
(;i<2;i++) s+=f(i);
,s);
24
28
32
36
第25题
a=0;
(i=0;i<30;i+=10) a+=f((
)i);
"%5.0f\n"
,a);
503
401
500
1404
第26题
fun(
x,
y)
(x==y)
(x);
((x+y)/2);
a=4,b=5,c=6;
,fun(2*a,fun(b,c)));
6
12
第27题
fun (
(x!=y)
第28题
main(){
n=1,m;
m=f(f(f(n)));
,m);
x*2;
第29题
((y-x)*x);
a=3,b=4,c=5,d;
d=f(f(a,b),f(a,c));
,d);}
10
9
7
第30题
a+b;
x = 6,y=7,z = 8,r;
r = fun(fun(x,y),z--);
,r);
15
21
20
31
第31题
第32题
fun1(
a)
)(a*= a);
fun2(
a = 0,b = 0;
a = fun1(x);
b = fun1(y);
)(a+b);
w;
w = fun2(1.1,2.0);
"%4.2f"
,w);
程序执行后输出结果是( )。
5.00
5.21
0.0
第33题
若有以下函数首部
x[10],
*n)
则下面针对此函数的函数声明语句中正确的是( )。
int fun(double*,int*);
int fun(double,int);
int fun(double *x,int n);
int fun(double x,int*n);
第34题
若各选项中所用变量已正确定义,函数fun中通过return语句返回一 个函数值,以下选项中错误的程序是( )。
float fun(int a,int b){……} main() {……x=fun(i,j);……}
main() {……x=fun(2,10);……} float fun(int a,int b){……}
float fun(int,int); main(){……x=fun(2,10);……} float fun(int a,int b){……}
main() { float fun(int i,int j); ……x=fun(i,j);…… } float fun(int a,int b){……}
第35题
:#include <stdio.h>
findmax(
,
),m;
m=findmax(a,b,c);
y,
z)
则以下叙述正确的是( )。
在main函数中声明了findmax函数
在main函数中定义了findmax函数
在main函数中两次调用了findmax函数
在main函数内、外重复定义了findmax函数
第36题
以下关于C语言函数参数传递方式的叙述正确的是( )。
数据只能从实参单向传递给形参
数据可以在实参和形参之间双向传递
数据只能从形参单向传递给实参
C语言的函数,参数既可以从实参单向传递给形参,也可以在实参 和形参之间双向传递,可视情况选择使用
第37题
p){
d=2;
p=d++;
,p);
a=1;
fun(a);
22
第38题
t;
t=a;
a=b;
b=t;}
c[10]={1,2,3,4,5,6,7,8,9,0},i;
(i=0;i<10;i+=2)fun(c[i],c[i+1]);
(i=0;i<10;i++)
"%d,"
,c[i]);
程序运行的结果是( )。
1,2,3,4,5,6,7,8,9,0,
2,1,4,3,6,5,8,7,0,9,
0,9,8,7,6,5,4,3,2,1,
0,1,2,3,4,5,6,7,8,9,
选择题(1 - 38题,共计100分)