欢迎来到天天文库
浏览记录
ID:14314244
大小:85.50 KB
页数:7页
时间:2018-07-27
《作业━━第 3 章(1)━━函数的定义和调用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、函数的定义和调用【学习要点】1.掌握函数的定义、调用、返回、函数的原型声明。2.掌握函数的参数传递──值传递。3.掌握函数的参数传递──引用传递。4.掌握全局变量及其作用域。5.掌握局部变量及其作用域。6.掌握C++程序的内存布局。7.掌握标识符的作用域(块作用域、文件作用域、函数原型作用域、函数作用域)。8.掌握变量的存储类型和生存期。9.掌握函数的调用机制。--------------------------------------------------------------------------------------------------
2、-----------------------------------------------【例题分析】1.C++中函数返回值的类型是由______决定的。A.return语句中的表达式类型B.调用该函数的主调函数类型C.定义函数时所指定的函数类型D.传递给函数的实参类型【答案】C【解析】定义函数时所指定的返回值类型也称为函数类型。2.以下描述中正确的是______。A.在一个C++的函数中,可以定义和调用其他函数B.在一个C++的函数中,可以调用但不能定义其他函数C.在一个C++的函数中,不可以调用但能定义其他函数D.在一个C++的函数中,不可以调用
3、也不能定义其他函数【答案】B【解析】C++函数之间是并列平等的关系,在程序中的定义位置任意,一个函数可以调用其它函数,也可以被其他函数所调用,但主函数只能调用其他函数,而不能被调用。3.在程序执行过程中,某函数fun()中声明的static变量k有这样的特性:______。A.k存在于fun()被调用期间,且仅能被fun()所用B.k存在于整个程序执行过程中,且仅能被fun()所用C.k存在于fun()被调用期间,且可被所有函数所用D.k存在于整个程序执行过程中,且可被所有函数所用【答案】B【解析】static局部变量的生存期:在程序运行中第一次进入其作
4、用域时在静态区分配,离开其作用域时并不释放,只是不能引用,若程序运行中再次进入该static局部变量的作用域,由于该变量已经存在,所以不再分配空间,可直接引用。static局部变量直到程序运行结束才被释放。4.下面程序的运行结果是______。#include"iostream.h"voidmain(){externinta;cout<<”a=”<5、量的引用性声明不同,外部变量的定义(开辟存储单元)只能出现一次,而对外部变量的引用性声明根据需要可出现多次,需用extern进行修饰。5.下面程序的运行结果是______。#includeintfac(inta){intb=0;staticintc=3;b++;c++;returna+b+c;}voidmain(){inta=3,j;for(j=0;j<3;j++)cout<fun(6、int,int);voidmain(){intk=4,m=1,p;p=fun(k,m);cout<intabc(int,int);voidmain(){inta=24,b=16;cout<7、intabc(intx,inty){intw;while(y){w=x%y;x=y;y=w;}returnx;}【答案】输出:6【答案】函数abc(intx,inty)的功能:用展转法求整数x和y的最大公约数。8.编写程序:设计一个函数abc(),求两个整数的最大公约数。【答案】编写程序如下:#includeintabc(intx,inty){for(inti=(x>a>>b8、;cout<<“整数”<
5、量的引用性声明不同,外部变量的定义(开辟存储单元)只能出现一次,而对外部变量的引用性声明根据需要可出现多次,需用extern进行修饰。5.下面程序的运行结果是______。#includeintfac(inta){intb=0;staticintc=3;b++;c++;returna+b+c;}voidmain(){inta=3,j;for(j=0;j<3;j++)cout<fun(
6、int,int);voidmain(){intk=4,m=1,p;p=fun(k,m);cout<
intabc(int,int);voidmain(){inta=24,b=16;cout<7、intabc(intx,inty){intw;while(y){w=x%y;x=y;y=w;}returnx;}【答案】输出:6【答案】函数abc(intx,inty)的功能:用展转法求整数x和y的最大公约数。8.编写程序:设计一个函数abc(),求两个整数的最大公约数。【答案】编写程序如下:#includeintabc(intx,inty){for(inti=(x>a>>b8、;cout<<“整数”<
7、intabc(intx,inty){intw;while(y){w=x%y;x=y;y=w;}returnx;}【答案】输出:6【答案】函数abc(intx,inty)的功能:用展转法求整数x和y的最大公约数。8.编写程序:设计一个函数abc(),求两个整数的最大公约数。【答案】编写程序如下:#includeintabc(intx,inty){for(inti=(x>a>>b
8、;cout<<“整数”<
此文档下载收益归作者所有