c语言函数试题及答案_第1页
c语言函数试题及答案_第2页
c语言函数试题及答案_第3页
c语言函数试题及答案_第4页
c语言函数试题及答案_第5页
已阅读5页,还剩3页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

c语言函数试题及答案

一、单项选择题(每题2分,共10题)1.以下函数定义正确的是()A.intfunc(){}B.func(){}C.intfunc(inta;intb){}D.intfunc(inta,b){}2.函数返回值的类型由()决定。A.return语句中表达式类型B.调用函数的主调函数类型C.定义函数时所指定的函数类型D.形参类型3.C语言中,函数形参的存储类别是()A.autoB.registerC.staticD.extern4.以下不能作为函数名的是()A._abcB.abc_1C.1abcD.abc5.若有函数声明“intfunc(inta,intb=0);”,则以下调用合法的是()A.func();B.func(1);C.func(1,2,3);D.func(,2);6.函数调用时,实参向形参传递数据是()A.地址传递B.值传递C.既可以是值传递也可以是地址传递D.随机传递7.以下关于函数的说法错误的是()A.函数可以嵌套定义B.函数可以嵌套调用C.函数可以递归调用D.函数是C程序的基本模块8.若函数定义为“voidfunc(){}”,则以下说法正确的是()A.函数没有返回值B.函数返回值为0C.函数返回值类型不确定D.函数不能被调用9.函数定义中形参列表为空,以下写法正确的是()A.intfunc()B.intfunc(void)C.A和B都对D.A和B都不对10.以下函数声明中,错误的是()A.intfunc(inta,intb);B.intfunc(int,int);C.intfunc(inta;intb);D.intfunc(int,int=0);答案:1.A2.C3.A4.C5.B6.B7.A8.A9.C10.C二、多项选择题(每题2分,共10题)1.以下关于函数参数的说法正确的是()A.实参可以是常量、变量或表达式B.形参在函数未调用时不占用内存C.实参与形参个数必须相同D.实参与形参类型必须一致2.以下哪些属于函数的调用方式()A.函数表达式调用B.函数语句调用C.函数参数调用D.函数递归调用3.函数返回值的作用有()A.向调用函数传递计算结果B.结束函数执行C.改变函数的存储类别D.确定函数的调用方式4.以下关于函数原型声明正确的是()A.函数原型声明可以省略形参名B.函数原型声明和函数定义中的形参类型必须一致C.函数原型声明必须放在主函数之前D.函数原型声明可以放在源文件的任何位置5.以下哪些函数不能被其他源文件调用()A.定义为static的函数B.定义为extern的函数C.没有声明为extern的全局函数D.局部函数6.函数的形参可以是()A.整型B.数组C.指针D.结构体7.以下关于函数递归调用说法正确的是()A.递归调用必须有结束条件B.递归调用效率一定高C.递归调用可能导致栈溢出D.递归调用就是函数自己调用自己8.函数调用过程中,会发生以下哪些事情()A.为形参分配内存B.保存主调函数的现场C.执行被调函数代码D.释放形参内存9.以下关于函数重载说法正确的是()A.C语言不支持函数重载B.函数重载要求函数名相同C.函数重载要求参数列表不同D.函数重载要求返回值类型不同10.以下哪些情况函数会返回()A.执行到return语句B.函数体执行完毕C.遇到break语句D.遇到continue语句答案:1.ABCD2.ABC3.AB4.ABD5.AD6.ABCD7.ACD8.ABCD9.ABC10.AB三、判断题(每题2分,共10题)1.函数必须有返回值。()2.形参和实参占用不同的内存单元。()3.函数定义可以放在主函数内部。()4.函数声明可以放在函数调用之后。()5.递归函数一定有递归出口。()6.函数返回值类型与函数定义时的类型不一致时,以返回值类型为准。()7.全局变量在函数内部不能被修改。()8.函数的形参只能是变量。()9.函数调用时,实参的顺序要和形参顺序一致。()10.一个函数只能被调用一次。()答案:1.×2.√3.×4.√5.√6.×7.×8.×9.√10.×四、简答题(每题5分,共4题)1.简述函数的作用。答案:函数可将程序模块化,提高代码复用性,便于程序的编写、调试和维护。不同功能封装成不同函数,使程序结构更清晰。2.函数声明有什么作用?答案:告知编译器函数的名字、参数类型和返回值类型,让编译器在调用函数时能正确检查参数和返回值,保证调用的合法性。3.简述值传递的特点。答案:实参将值复制给形参,形参在函数内的改变不影响实参的值。实参和形参有各自独立的内存空间。4.什么是递归函数?答案:递归函数是在函数定义中直接或间接调用自身的函数。递归调用需要有终止条件,以避免无限递归。五、讨论题(每题5分,共4题)1.讨论函数参数传递中值传递和地址传递的优缺点。答案:值传递优点是简单直观,形参改变不影响实参;缺点是无法改变实参值。地址传递优点是能改变实参值,适合处理大数据;缺点是容易出错,可能导致数据混乱。2.函数原型声明和函数定义有什么联系和区别?答案:联系:原型声明是对函数定义的提前告知,两者参数类型、返回值类型需一致。区别:原型声明只需函数头;函数定义包含函数体,实现具体功能。3.举例说明递归函数在实际编程中的应用场景。答案:如计算阶乘、斐波那契数列。计算阶乘n!时,可定义

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论