C语言函数练习题及答案
更新时间:2024-05-09 17:49:01 阅读量: 综合文库 文档下载
- c语言延时函数推荐度:
- 相关推荐
1
【单选题】
在下列关于C函数定义的叙述中,正确的是?
?
A、
函数可以嵌套定义,但不可以嵌套调用;
? ?
B、
函数不可以嵌套定义,但可以嵌套调用;
? ?
C、
函数不可以嵌套定义,也不可以嵌套调用;
? ?
D、
函数可以嵌套定义,也可以嵌套调用;
?
我的答案:B得分: 2.5分
2
【单选题】
下面函数调用语句含有实参的个数为? nc((exp1,exp2),(exp3,exp4,exp5));
?
1
A、
? ?
2
B、
? ?
4
C、
? ?
5
D、
?
我的答案:B得分: 2.5分
3
【单选题】
C语言中函数返回值的类型是由以下哪个选项决定的?
?
A、
函数定义时指定的类型;
? ?
B、
return语句中的表达式类型;
? ?
C、
调用该函数时的实参的数据类型;
? ?
D、
形参的数据类型;
?
我的答案:A得分: 2.5分
4
【单选题】
以下关于函数叙述中,错误的是?
?
A、
函数未被调用时,系统将不为形参分配内存单元;
? ?
B、
实参与形参的个数必须相等,且实参与形参的类型必须对应一致;
? ?
C、
当形参是变量时,实参可以是常量、变量或表达式;
? ?
D、
如函数调用时,实参与形参都为变量,则这两个变量不可能共享同一内存空间;
?
我的答案:B得分: 2.5分
5
【单选题】
若函数调用时参数为基本数据类型的变量,以下叙述正确的是?
?
A、
实参与其对应的形参共享内存存储单元;
? ?
B、
只有当实参与其对应的形参同名时才共享内存存储单元;
? ?
C、
实参与对应的形参分别占用不同的内存存储单元;
?
? D、
实参将数据传递给形参后,立即释放原先占用的内存存储单元;
?
我的答案:C得分: 2.5分
6
【单选题】
函数调用时,实参和形参都是简单变量,它们之间数据传递的过程描述正确的是?
?
A、
实参将地址传递给形参,并释放原先占用的存储单元;
? ?
B、
实参将地址传递给形参,调用结束时形参再将此地址回传给实参;
? ?
C、
实参将值传递给形参,调用结束时形参再将其值回传给实参;
? ?
D、
实参将值传递给形参,调用结束时形参并不将其值回传给实参;
?
我的答案:D得分: 2.5分
7
【单选题】
若用数组名作为函数调用的实参,则传递给形参的是?
?
A、
数组第一个元素的地址;
?
? B、
数组的第一个元素的值;
? ?
C、
数组中所有元素的值;
? ?
D、
数组元素的个数;
?
我的答案:A得分: 2.5分
8
【单选题】C语言规定了程序中各函数之间调用关系,以下说法正确的是?
? ? ? ?
A、既允许直接递归调用也允许间接递归调用; B、不允许直接递归调用也不允许间接递归调用; C、允许直接递归调用不允许间接递归调用;
D、不允许直接递归调用允许间接递归调用;
我的答案:A得分: 2.5分
9
【单选题】
递归函数f(n)=f(n-1)+n (n>1)的递归体是?
?
A、
f(1)=0
? ?
f(0)=1
B、
?
? C、
f(n)=f(n-1)+n
? ?
f(n)=n
D、
?
我的答案:C得分: 2.5分
10
【单选题】
若函数的形参为一维数组,则下列说法中正确的是()。
?
A、
使用函数时的对应实参必为数组名。
? ?
B、
形参数组可以不指定大小。
? ?
C、
形参数组的元素个数必须等于实参数组的元素个数。
? ?
D、
形参数组的元素个数必须多于实参数组的元素个数。
?
我的答案:B得分: 2.5分
11
【单选题】
在函数调用过程中,如果函数fun A调用了函数fun B,函数fun B又调用了函数fun A,则()。
?
A、
为函数的直接递归调用
? ?
B、
称为函数的间接递归调用
? ?
C、
为函数的循环调用
? ?
D、
C语言中不允许这样的递归调用
?
我的答案:B得分: 2.5分
12
【单选题】 有以下函数定义:
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);
?
我的答案:C得分: 2.5分
13
【单选题】
已有以下数组定义和f函数调用语句,则在f函数的说明中,对形参数组array的正确定义方式为______。 int a[3][4]; f(a);
?
A、
f(int array[][6])
? ?
B、
f(int array[3][])
? ?
C、
f(int array[][4])
? ?
D、
f(int array[2][5])
?
我的答案:C得分: 2.5分
14
【单选题】 若程序中定义函数 float fadd(float a, float b) {
return a+b; }
并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是?
?
A、
float fadd(float a,b);
? ?
B、
float fadd(float b, float a) ;
? ?
C、
float fadd(float, float) ;
? ?
D、
float fadd(float a, float b) ;
?
我的答案:A得分: 2.5分
15
【单选题】
下面程序段运行后的输出结果是? (假设程序运行时输入5,3回车)
int a, b; void swap( ) { int t; t=a; a=b; b=t; } void main() { int a,b;
scanf(\ swap( ); printf (\ }
?
A、
a=5,b=3
? ?
B、
a=3,b=5
? ?
C、
5,3
? ?
D、
3,5
?
我的答案:A得分: 2.5分
16
【单选题】
以下程序运行后的输出结果是? int fun (int x, int y) { if(x>y) return x; else return y; } void main() {
int x=3,y=8,z=6,r; r=fun(fun(x,y),2*z); printf(\
}
?
A、
3
?
?
6
B、
? ?
8
C、
? ?
12
D、
?
我的答案:D得分: 2.5分
17
【单选题】
下列程序的输出结果是()。 #include \ void fun(int a,int b,int c) {
c = a * b; }
int main( ) { int c; fun(2,3,c); printf(\ return 0; }
?
0
A、
? ?
1
B、
? ?
6
C、
? ?
D、
无法确定
?
我的答案:D得分: 2.5分
18
【单选题】
有以下程序,运行后的输出结果是( )。
#include
return(x+y); } void main() {
int a=2,b=5,c=8;
printf(“%3.0f\\n”, fun((int)fun(a+c, b), a-c)); }
?
A、
编译出错
? ?
9
B、
? ?
21
C、
? ?
9.0
D、
?
我的答案:A得分: 0.0分
19
【单选题】 以下描述正确的是?
?
A、
调用函数时的实参只能是有确定值的变量;
? ?
B、
return()语句的括号中,可以是变量、常量或有确定值的表达式;
? ?
C、
C语言中,函数调用时实参和形参间的参数传递方式不都是值传递;
?
? D、
实参和形参若类型不匹配,编译时将报错;
?
我的答案:B得分: 2.5分
20
【单选题】 已有以下代码 #include
printf(\ }
则程序的输出结果是()?
?
3
A、
? ?
6
B、
? ?
8
C、
? ?
36
D、
?
我的答案:C得分: 2.5分
21
【单选题】 已有以下代码 #include
static int x = 1; x -= 1;
printf(\} int main() { int i;
for (i = 0; i<4; i++) f(); return 0; }
则程序的输出是:()?
?
1, 2,3,4
A、
? ?
0,1,2,3,
B、
?
? C、
0,-1,-2,-3,
? ?
D、
-1,-2,-3,-4,
?
我的答案:C得分: 2.5分
22
【单选题】
C语言程序的基本单位是?
?
函数
A、
? ?
过程
B、
? ?
子程序
C、
? ?
D、
源程序文件
?
我的答案:A得分: 2.5分
23
【单选题】以下说法中正确的是?
?
A、C语言程序总是从第一个定义的函数开始执行 ;
? ? ?
B、C语言程序中,要调用的函数必须在main( )函数中定义; C、总是从main( )函数开始执行;
D、main( )函数必须放在程序的开始部分;
我的答案:C得分: 2.5分
24
【单选题】
在函数调用时,以下说法正确的是?
?
A、
函数调用后必须带回返回值;
? ?
B、
实际参数和形式参数可以同名;
? ?
C、
函数间的数据传递不可以使用全局变量;
? ?
D、
主调函数和被调函数总是在同一个文件里;
?
我的答案:B得分: 2.5分
25
【填空题】
下面程序段运行后的输出结果是:_______ (假设程序运行时输入5,3回车)
void swap( int a, int b) {
int t; t=a; a=b; b=t; } void main() { int a,b;
scanf(\ swap(a,b ); printf (\ }
我的答案:得分: 0.0分 第一空: a=3,b=5 批语
26
【填空题】
以下程序的功能是用递归方法计算工资,已知第一位员工工资最少,为3100元,其余员工工资一个比一个多500元,求第5位员工的工资。请填空。 salary(int n) {
int s; if(n==1)
s=3100; else
s=salary(n-1)+500; return s; }
void main() {
int n=5;
printf(“sarary:%d\\n”,______); }
我的答案:得分: 2.5分 第一空: salary(5) 批语
27
【填空题】
分析以下程序的运行结果是_______ #include “stdio.h” func(int a ,int b) { int c; c=a+b; return c; } int main() {
int x=6,y,r; y=x+2;
r=func(x++,y);
printf(\ return 0; }
我的答案:得分: 2.5分 第一空: 7 8 14 批语
28
【填空题】 有如下程序
long fib(int n) { if(n>2)
return(fib(n-1)+fib(n-2)); else
return 2;
} int main() {
printf(\,fib(3)); }
该程序的输出结果是_______。
我的答案:得分: 2.5分 第一空: 4 批语
29
【填空题】
以下程序的输出结果是________。 f(int b[],int m,int n) {
int i,s=0; for(i=m;i s=s+b[i]; returns; } int main() { int x,a[]={1,2,3,4,5,6,7,8,9}; x=f(a,3,7); printf(\,x); } 我的答案:得分: 2.5分 第一空: 10 批语 30 【填空题】 以下程序的输出结果是_____。 #include static int f=1,t=1,s=0; int i; if(n>t) for(i=t+1; i<=n; i++) f=f*i; else { f=1; for(i=1; i<=n; i++) f=f*i; } t=n; s=s+f; return(s); } void main() { int a[]={3,5,2},i,sum; for(i=0; i<3; i++) sum=fac_sum(a[i]); printf(“sum=%d\\n”,sum); } 我的答案:得分: 2.5分 第一空: sum=128 批语 31 【填空题】 以下程序的运行结果是________。 #include static int x=5; void func(); int y; y=n; printf(\ func(); printf(\ func(); } void func() { static int x=4; int y=10; x=x+2; n=n+10; y=y+n; printf(\} 我的答案:得分: 2.5分 第一空: MAIN: x= 5 y= 1 n= 1FUNC: x= 6 y=21 n=11MAIN: x= 5 y= 1 n=11FUNC: x= 8 y=31 n=21 批语 32 【填空题】 输入一个整数10,以下程序的运行结果是_______。 #include int sub(int); int a,e[10],c,i=0; printf(\输入一个整数\\n\ scanf(\ while(a!=0) { c=sub(a); a=a/2; e[i]=c; i++; } for(; i>0; i--) printf(\} int sub(int a) { int c; c=a%2; return c; } 我的答案:得分: 2.5分 第一空: 1010 批语 33 【填空题】 以下程序的运行结果是______。 #include static int x=0; x+=1; printf(\} 我的答案:得分: 2.5分 第一空: 1 2 3 批语 34 【填空题】 以下程序的运行结果是________。 #include printf(\ reset(i=i/2); printf(\ reset(i/2); printf(\ workover(i); printf(\ return 0; } int workover(int i) { i=(i%i)*((i*i)/(2*i)+4); printf(\ return i; } int reset(int i) { i=i<=2?5:0; return i; } 我的答案:得分: 2.5分 第一空: i=5i=2i=2i=0i=2 批语 35 【判断题】 函数调用时值传递方式特点:形参与实参占用相同的内存单元,单向传递。 我的答案:×得分: 2.5分 36 【判断题】 函数定义与函数说明不是同一个概念。 我的答案:√得分: 2.5分 37 【判断题】 c语言中,函数的定义不能嵌套,而调用是可以嵌套的。 我的答案:√得分: 2.5分 38 【判断题】 函数调用时值传递特点:无论是值传递还是地址传递,都是单向的。 我的答案:√得分: 2.5分 39 【判断题】 函数调用时,当数组名作函数参数时,实参数组值与形参数组值不同。 我的答案:×得分: 2.5分 40 【判断题】 一个C程序可以由一个或多个函数组成,其中必须有且只有一个main函数。 我的答案:√得分: 2.5分
正在阅读:
C语言函数练习题及答案05-09
注塑说明书12-18
人教版五年级下册语文综合性学习复习题06-21
茶叶生物化学12-20
音频技术与应用发展趋势08-14
艺术叙事考试要点10-15
二甲基甲酰胺项目可行性研究报告09-04
过中秋作文300字07-14
我和妈妈是闺蜜作文800字06-16
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 练习题
- 函数
- 答案
- 语言
- 数学、计算机信息化比赛 - 图文
- 管理百年
- 医学影像超声诊断三基试题第三部分选择(附答案)
- 2009年高考等值诊断预测卷(文科综合) - 图文
- 会计师事务所转制为特殊普通合伙制的问题与建议-最新资料
- 《统计学原理》习题集(附答案)
- 2016-2022年中国体育场地与设施建设行业竞争态势及十三五投资决
- 商务谈判策划书 - 红蓝小组
- 2016最新高中政治必修二政治生活知识点总结
- 电气专业实习总结
- DLT724-2000电力系统用蓄电池直流电源装置运行与维护技术规程
- 试管加热炉市场现状调研及发展前景分析报告(目录)
- 花溪大学城思杨路二标排水工程施工方案
- 多套带答案2013济宁继续教育互联网监管与网络道德建设试题
- 06-07-2仪器分析试卷07-A
- 宾馆客房服务英语口语对话2
- 特种钢坯项目可行性研究报告(发改立项备案+2013年最新案例范文
- 薪酬制度与员工激励问题研究
- 关于XXX首届掼蛋比赛活动方案
- 电子技术复习题(1)