ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:19.43KB ,
资源ID:7513551      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7513551.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言函数练习题及答案.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言函数练习题及答案.docx

1、C语言函数练习题及答案1【单选题】在下列关于C函数定义的叙述中,正确的是? A、函数可以嵌套定义,但不可以嵌套调用; B、函数不可以嵌套定义,但可以嵌套调用; C、函数不可以嵌套定义,也不可以嵌套调用; D、函数可以嵌套定义,也可以嵌套调用; 我的答案:B得分:2.5分2【单选题】下面函数调用语句含有实参的个数为?nc(exp1,exp2),(exp3,exp4,exp5); A、1 B、2 C、4 D、5 我的答案:B得分:2.5分3【单选题】C语言中函数返回值的类型是由以下哪个选项决定的? A、函数定义时指定的类型; B、return语句中的表达式类型; C、调用该函数时的实参的数据类型;

2、 D、形参的数据类型; 我的答案:A得分:2.5分4【单选题】以下关于函数叙述中,错误的是? A、函数未被调用时,系统将不为形参分配内存单元; B、实参与形参的个数必须相等,且实参与形参的类型必须对应一致; C、当形参是变量时,实参可以是常量、变量或表达式; D、如函数调用时,实参与形参都为变量,则这两个变量不可能共享同一内存空间; 我的答案:B得分:2.5分5【单选题】若函数调用时参数为基本数据类型的变量,以下叙述正确的是? A、实参与其对应的形参共享内存存储单元; B、只有当实参与其对应的形参同名时才共享内存存储单元; C、实参与对应的形参分别占用不同的内存存储单元; D、实参将数据传递给

3、形参后,立即释放原先占用的内存存储单元; 我的答案:C得分:2.5分6【单选题】函数调用时,实参和形参都是简单变量,它们之间数据传递的过程描述正确的是? A、实参将地址传递给形参,并释放原先占用的存储单元; B、实参将地址传递给形参,调用结束时形参再将此地址回传给实参; C、实参将值传递给形参,调用结束时形参再将其值回传给实参; D、实参将值传递给形参,调用结束时形参并不将其值回传给实参; 我的答案:D得分:2.5分7【单选题】若用数组名作为函数调用的实参,则传递给形参的是? A、数组第一个元素的地址; B、数组的第一个元素的值; C、数组中所有元素的值; D、数组元素的个数; 我的答案:A得

4、分:2.5分8【单选题】C语言规定了程序中各函数之间调用关系,以下说法正确的是? A、既允许直接递归调用也允许间接递归调用; B、不允许直接递归调用也不允许间接递归调用; C、允许直接递归调用不允许间接递归调用; D、不允许直接递归调用允许间接递归调用;我的答案:A得分:2.5分9【单选题】递归函数f(n)=f(n-1)+n(n1)的递归体是? A、f(1)=0 B、f(0)=1 C、f(n)=f(n-1)+n D、f(n)=n 我的答案:C得分:2.5分10【单选题】若函数的形参为一维数组,则下列说法中正确的是()。 A、使用函数时的对应实参必为数组名。 B、形参数组可以不指定大小。 C、形

5、参数组的元素个数必须等于实参数组的元素个数。 D、形参数组的元素个数必须多于实参数组的元素个数。 我的答案:B得分:2.5分11【单选题】在函数调用过程中,如果函数funA调用了函数funB,函数funB又调用了函数funA,则()。 A、为函数的直接递归调用 B、称为函数的间接递归调用 C、为函数的循环调用 D、C语言中不允许这样的递归调用 我的答案:B得分:2.5分12【单选题】有以下函数定义:voidfun(intn,doublex)下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是()。 A、fun(inty,doublem); B、k=fun(10,12.5); C、f

6、un(x,n); D、voidfun(n,x); 我的答案:C得分:2.5分13【单选题】已有以下数组定义和f函数调用语句,则在f函数的说明中,对形参数组array的正确定义方式为_。int a34;f(a); A、f(intarray6) B、f(intarray3) C、f(intarray4) D、f(intarray25) 我的答案:C得分:2.5分14【单选题】若程序中定义函数floatfadd(floata,floatb)returna+b;并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是? A、floatfadd(floata,b); B、floatfa

7、dd(floatb,floata); C、floatfadd(float,float); D、floatfadd(floata,floatb); 我的答案:A得分:2.5分15【单选题】下面程序段运行后的输出结果是?(假设程序运行时输入5,3回车)inta,b;voidswap()intt;t=a;a=b;b=t;voidmain()inta,b;scanf(%d,%d,&a,&b);swap();printf(a=%d,b=%dn,a,b); A、a=5,b=3 B、a=3,b=5 C、5,3 D、3,5 我的答案:A得分:2.5分16【单选题】以下程序运行后的输出结果是?intfun(in

8、tx,inty)if(xy)returnx;elsereturny;voidmain()intx=3,y=8,z=6,r;r=fun(fun(x,y),2*z);printf(%dn,r); A、3 B、6 C、8 D、12 我的答案:D得分:2.5分17【单选题】下列程序的输出结果是()。#include stdio.hvoid fun(int a,int b,int c) c = a * b;int main( ) int c; fun(2,3,c); printf(%dn, c); return 0; A、0 B、1 C、6 D、无法确定 我的答案:D得分:2.5分18【单选题】有以下程

9、序,运行后的输出结果是( )。#includefloat fun(int x, int y)return(x+y);void main()int a=2,b=5,c=8;printf(“%3.0fn”, fun(int)fun(a+c, b), a-c); A、编译出错 B、9 C、21 D、9.0 我的答案:A得分:0.0分19【单选题】以下描述正确的是? A、调用函数时的实参只能是有确定值的变量; B、return()语句的括号中,可以是变量、常量或有确定值的表达式; C、C语言中,函数调用时实参和形参间的参数传递方式不都是值传递; D、实参和形参若类型不匹配,编译时将报错; 我的答案:B

10、得分:2.5分20【单选题】已有以下代码#includeint a=6,b=3;int main() int a=8; printf(%dn,(ab?a:b);则程序的输出结果是()? A、3 B、6 C、8 D、36 我的答案:C得分:2.5分21【单选题】已有以下代码#includef() static int x = 1; x -= 1; printf(%d, x);int main() int i; for (i = 0; i2)return(fib(n-1)+fib(n-2);elsereturn 2;int main()printf(%dn,fib(3);该程序的输出结果是_。我的

11、答案:得分:2.5分第一空:4批语29【填空题】以下程序的输出结果是_。f(intb,intm,intn)inti,s=0;for(i=m;in;i=i+2)s=s+bi;returns;intmain()intx,a=1,2,3,4,5,6,7,8,9;x=f(a,3,7);printf(%dn,x);我的答案:得分:2.5分第一空:10批语30【填空题】以下程序的输出结果是_。#includeintfac_sum(intn)staticintf=1,t=1,s=0;inti;if(nt)for(i=t+1;i=n;i+)f=f*i;elsef=1;for(i=1;i=n;i+)f=f*i;

12、t=n;s=s+f;return(s);voidmain()inta=3,5,2,i,sum;for(i=0;i3;i+)sum=fac_sum(ai);printf(“sum=%dn”,sum);我的答案:得分:2.5分第一空:sum=128批语31【填空题】以下程序的运行结果是_。#include int n=1;void main() static int x=5; void func(); int y; y=n; printf(MAIN: x=%2d y=%2d n=%2dn,x,y,n); func(); printf(MAIN: x=%2d y=%2d n=%2dn,x,y,n);

13、 func();void func() static int x=4; int y=10; x=x+2; n=n+10; y=y+n; printf(FUNC: x=%2d y=%2d n=%2dn,x,y,n);我的答案:得分: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,以下程序的运行结果是_。#includevoid main()int sub(int);int a,e10,c,i=0;printf(输入一个整数n);sca

14、nf(%d,&a);while(a!=0) c=sub(a); a=a/2; ei=c; i+;for(; i0; i-)printf(%d,ei-1);int sub(int a) int c; c=a%2; return c;我的答案:得分:2.5分第一空:1010批语33【填空题】以下程序的运行结果是_。#include int main()int i;void fun();for (i=0;i3;i+)fun();return 0;void fun()static int x=0;x+=1;printf(%3d,x);我的答案:得分:2.5分第一空:1 2 3批语34【填空题】以下程序

15、的运行结果是_。#include int workover(int i);int reset(int i);int i=0;int main()int i=5;reset(i/2);printf(i=%dn,i);reset(i=i/2);printf(i=%dn,i);reset(i/2);printf(i=%dn,i);workover(i);printf(i=%dn,i);return 0;int workover(int i)i=(i%i)*(i*i)/(2*i)+4);printf(i=%dn,i);return i;int reset(int i)i=i=2?5:0;return

16、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分

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1