第七章C语言单选练习.docx
《第七章C语言单选练习.docx》由会员分享,可在线阅读,更多相关《第七章C语言单选练习.docx(18页珍藏版)》请在冰豆网上搜索。
![第七章C语言单选练习.docx](https://file1.bdocx.com/fileroot1/2022-10/29/3d84a45d-fd99-4d27-8e06-e573e3373105/3d84a45d-fd99-4d27-8e06-e573e33731051.gif)
第七章C语言单选练习
《C程序设计题库》
吕橙1
一、单选题
1、下列叙述中正确的是______。
A:
C语言编译时不检查语法
B:
C语言的子程序有过程和函数两种
C:
C语言的函数可以嵌套定义
D:
C语言中,根据函数能否被其它源文件调用,被区分为内部函数和外部函数
答案:
D
难度:
2
知识点:
单选题/第七章
2、设有以下函数
f(inta)
{intb=0;
staticintc=3;
b++;c++;
return(a+b+c);
}
如果在下面的程序中调用该函数,则输出结果是______。
main()
{inta=2,i;
for(i=0;i<3;i++)printf("%d\n",f(a));
}
A:
A)B:
B)C:
C)D:
D)
答案:
A
难度:
2
知识点:
读程序选结果/第七章
3、以下程序的输出结果是______。
intf()
{staticinti=0;
ints=1;
s+=i;i++;
第7章单选题
2吕橙
returns;
}
main()
{inti,a=0;
for(i=0;i<5;i++)a+=f();
printf("%d\n",a);
}
A:
20B:
24C:
25D:
15
答案:
D
难度:
2
知识点:
读程序选结果/第七章
4、若有以下程序
#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将其类型定义为无值型
答案:
C
难度:
2
知识点:
读程序选结果/第七章
5、以下程序的输出结果是______。
intx=3;
main()
{inti;
for(i=1;i}
incre()
{staticintx=1;
x*=x+1;
printf("%d",x);
《C程序设计题库》
吕橙3
}
A:
33B:
22C:
26D:
25
答案:
C
难度:
2
知识点:
读程序选结果/第七章
6、C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是______。
A:
voidB:
intC:
floatD:
double
答案:
B
难度:
2
知识点:
单选题/第七章
7、以下程序中函数sort的功能是对a所指数组中的数据进行由大到小的排序。
程序运行后的输出结果是______。
A:
1,2,3,4,5,6,7,8,9,10,B:
10,9,8,7,6,5,4,3,2,1,C:
1,2,3,8,7,6,5,4,9,10,D:
1,2,10,9,8,7,6,5,4,3,
答案:
C
难度:
2
知识点:
读程序选结果/第七章
8、有以下程序
intf(intn)
{
if(n==1)return1;
elsereturnf(n1)+
1;
}
第7章单选题
4吕橙
main()
{
inti,j=0;
for(i=1;i<3;i++)j+=f(i);
printf("%d\n",j);
}
程序运行后的输出结果是______。
A:
4B:
3C:
2D:
1
答案:
B
难度:
2
知识点:
读程序选结果/第七章
9、以下程序中的函数reverse的功能是将a所指数组中的内容进行逆置。
voidreverse(inta[],intn)
{inti,t;
for(i=0;i;a[n1i]=
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
答案:
A
难度:
2
知识点:
读程序选结果/第七章
10、以下程序中函数f的功能是将n个字符串,按由大到小的顺序进行排序。
《C程序设计题库》
吕橙5
程序运行后的输出结果是______。
A:
6B:
4C:
5D:
3
答案:
C
难度:
2
知识点:
读程序选结果/第七章
11、有以下程序
intf1(intx,inty)
{returnx>y?
x:
y;}
intf2(intx,inty)
{returnx>y?
y:
x;}
main()
{inta=4,b=3,c=5,d,e,f;
d=f1(a,b);
d=f1(d,c);
e=f2(a,b);
e=f2(e,c);
f=a+b+cde;
printf("%d,%d,%d\n",d,f,e);
}
执行后输出的结果是______。
A:
3,4,5B:
5,3,4C:
5,4,3D:
3,5,4
答案:
C
难度:
2
知识点:
读程序选结果/第七章
第7章单选题
6吕橙
12、若程序中定义了以下函数:
doublemyadd(doublea,doubleb){return(a+b);},并将其放在调用语
句之后,则在调用之前应该对函数进行说明,以下选项中错误的说明是______。
A:
doublemyadd(doublea,b);B:
doublemyadd(double,double);
C:
doublemyadd(doubleb,doublea);D:
doublemyadd(doublex,doubley);
答案:
A
难度:
2
知识点:
单选题/第七章
13、建立函数的目的之一是__________。
A:
提高程序的执行效率B:
提高程序的可读性
C:
减少程序的篇幅D:
减少程序文件所占内存
答案:
B
难度:
1
知识点:
单选题/第七章
14、以下正确的说法是________。
A:
用户若需调用标准库函数,调用前必须重新定义
B:
用户可以重新定义标准库函数,若如此,该函数将失去原有含义
C:
系统根本不允许用户重新定义标准库函数
D:
用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文
件中,系统自动去调
答案:
B
难度:
1
知识点:
单选题/第七章
15、以下正确的函数定义形式是________。
A:
doublefun(intx,inty)B:
doublefun(intx;inty)
C:
doublefun(intx,inty);D:
doublefun(intx,y);
答案:
A
难度:
1
知识点:
单选题/第七章
《C程序设计题库》
吕橙7
16、以下正确的函数形式是________。
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;}
答案:
D
难度:
1
知识点:
单选题/第七章
17、以下正确的说法是________。
在C语言中,
A:
实参和与其对应的形参各占用独立的存储单元
B:
实参和与其对应的形参共占用一个存储单元
C:
只有当实参和与其对应的形参同名时才共占用存储单元
D:
形参是虚拟的,不占用存储单元
答案:
A
难度:
1
知识点:
单选题/第七章
18、若调用一个函数,且此函数中没有return语句,则正确的说法是________。
该函数,
A:
没有返回值B:
返回若干个系统默认值
C:
能返回一个用户所希望的函数值D:
返回一个不确定的值
答案:
D
难度:
1
知识点:
单选题/第七章
19、以下不正确的说法是________。
C语言规定,
A:
实参可以是常量、变量或表达式B:
形参可以是常量、变量或表达式
C:
实参可以为任意类型D:
形参应与其对应的实参类型一致
答案:
B
难度:
1
知识点:
单选题/第七章
第7章单选题
8吕橙
20、以下正确的说法是________。
A:
定义函数时,形参的类型说明可以放在函数体内
B:
return后边的值不能为表达式
C:
如果函数值的类型与返回值类型不一致,以函数值类型为准
D:
如果形参与实参的类型不一致,以实参类型为准
答案:
C
难度:
1
知识点:
单选题/第七章
21、C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是________。
A:
地址传递B:
单向值传递
C:
由实参传给形参,再由形参传回给实参D:
由用户指定传递方式
答案:
B
难度:
1
知识点:
单选题/第七章
22、以下程序有语法性错误,有关错误原因的正确说法是________。
main()
{
intG=5,k;
voidprt_char();
……;
k=prt_char(G);
……;
}
A:
语句voidprt_char();有错,它是函数调用语句,不能用void说明
B:
变量名不能使用大写字母
C:
函数说明和函数调用语句之间有矛盾
D:
函数名不能使用下划线
答案:
C
难度:
1
知识点:
读程序选结果/第七章
23、C语言规定,函数返回值的类型是由________。
A:
return语句中的表达式类型所决定B:
调用该函数时的主调函数类型所决定
C:
调用该函数时系统临时决定D:
在定义该函数时所指定的函数类型所决定
《C程序设计题库》
吕橙9
答案:
D
难度:
1
知识点:
单选题/第七章
24、下面函数调用语句含有实参的个数为________。
func((exp1,exp2),(exp3,exp4,exp5));
A:
1B:
2C:
4D:
5
答案:
B
难度:
1
知识点:
单选题/第七章
25、以下错误的描述是________。
数调用可以,
A:
出现在执行语句中B:
出现在一表达式中
C:
做为一个函数的实参D:
做为一个函数的形参
答案:
D
难度:
1
知识点:
单选题/第七章
26、以下程序的功能是计算函数F(x,y,z)=(x+y)/(xy)+(
z+y)/(zy)
的值,请选择填空。
#include
#include
main()
{
floatx,y,z,sum;
scanf(“%f%f%f”,&x,&y,&z);
sum=f(_______)+f(z+y,zy)
;
printf(“sum=%f\n”,sum);
}
floatf(floata,floatb)
{
floatvalue;
value=a/b;
return(value);
}
A:
xy,
x+yB:
x+y,xy
C:
z+y,zy
D:
zy,
z+y
答案:
B
难度:
1
知识点:
读程序选结果/第七章
第