第六章 函数与编译预处理:介绍函数的基本概念及分类,重点介绍函数的定义、声明和调用以及函数调用中参数的传递问题,掌握函数的嵌套调用和递归调用,熟悉变量的作用域、生存期和存储类别及编译预处理命令。6.1函数的定义:简单介绍函数的分类,通过函数的使用举例,重点介绍函数定义的一般格式及其定义函数时的说明及注意事项。
6.2函数的调用及声明:介绍函数调用的三种基本方式,说明了函数的声明语句格式、基本使用方法及注意事项。
6.3函数的参数及其传递:通过程序举例,介绍普通变量和数组元素作函数的形参和实参时的数据传递问题。说明普通变量和数组元素做函数的形参和实参时,在函数调用中实现的是实参到形参的“值”的单向传递。
6.4数组名做函数的参数:通过程序举例,介绍一维数组名和二维数组名作函数的形参和实参时的数据传递问题。强调数组名做函数的参数时,在函数调用中实现的是实参到形参的“地址”的传递。
6.5函数的嵌套调用:介绍什么是函数的递归调用,给出函数递归调用两种形式:直接递归和间接递归。举例说明递归函数的实现过程,掌握递归函数的特点,分析说明定义递归函数的条件。
6.6函数的递归调用:介绍什么是函数的嵌套调用,举例说明函数嵌套调用的一般实现过程。
6.7局部变量和全局变量:从变量的作用域角度,介绍局部变量和全局变量的概念。通过程序实例,说明局部变量和全局变量作用范围及其特点。
6.8变量的存储类别和生存期:从变量的存在时间和存储空间的角度,介绍变量的存储类别和生存期。通过程序实例,说明不同存储类别的变量分配的存储空间不同,生存期长短也不同。强调变量的作用域和生存期是对同一变量从不同角度的描述刻画。
6.9编译预处理命令:介绍编译预处理的基本概念,重点介绍文件包含命令和宏定义命令的基本格式及具体应用,对照比较带参数的宏定义和函数的异同。
[单选题]C语言的编译系统对宏命令的处理(  )

选项:[ 和C程序中的其它语句同时进行编译的,  在程序连接时进行,  在对源程序中其它语句正式编译之前进行的,  在程序运行时进行的]
[单选题]若用数组名作为函数调用的实参,传递给形参的是(  )

选项:[ 数组的首地址,  数组中的全部元素的值  ,  数组中第一个元素的值,   数组元素的个数]
[单选题]以下正确的说法是(   )

选项:[ 有当实参和与其对应的形参同名时才共占用相同的存储单元,  实参和与其对应的形参共占用一个存储单元,  实参和与其对应的形参各占用独立的存储单元,  形参是虚拟的,不占用存储单元]
[单选题]以下4个字符串函数中,与其他3个所在的头文件不同是(  )

选项:[ scanf  ,  strcmp,  putchar   ,  printf ]
[单选题] 全局类型的变量作用范围大,因此编程中应尽量使用全局变量,少使用局部变量。( )

选项:[错, 对]
[单选题]调用函数的实参与被调用函数的形参应有如下关系(  )

选项:[ 上述三点均应具备,  只要求实参与形参个数相等   ,  只要求实参与形参数据类型相同,  只要求实参与形参顺序相同]
[单选题]关于函数声明,以下不正确的说法是(  )

选项:[ 函数在调用之前,一定要声明函数原型,保证编译系统进行全面的调用检查,  标准库不需要函数原型声明,  如果函数定义出现在函数调用之前,可以不必加函数原型声明,  如果在所有函数定义之前,在函数外部已做了声明,则各个主调函数不必再做函数原型声明]
[单选题]凡在函数中未指定存储类别的变量,其隐含的存储类别是(  )

选项:[ 寄存器,  静态 ,  外部,  自动  ]
[单选题]在源程序的一个文件中定义的全局变量的作用域是(  )

选项:[ 从定义该变量的位置开始至该文件的结束,  一个函数的范围 ,  该程序的全部范围,  在本文件的全部范围  ]
[单选题]函数调用可以在(   )

选项:[ 以上都是,  函数语句中,  函数参数中,  函数表达式中]
[单选题] 调用函数只能得到一个返回值,而用宏可以得到几个结果。(  )

选项:[错, 对]
[单选题]以下不正确的叙述是(  )

选项:[ 宏替换只是字符替换,  宏替换不占用运行时间,  宏名无类型,  宏名必须用大写字母表示]
[单选题]形参可以是常量、变量或表达式。(  )

选项:[对, 错]
[单选题]宏替换时先求出实参表达式的值,然后代入形参运算求值。(  )

选项:[对, 错]
[单选题]一个C语言程序总是从(  )开始执行的。

选项:[ 书写顺序的第一条执行语句,  不确定,  书写顺序的第一个函数,  主函数main  ]
[单选题]下列程序的输出结果是(   )
#include<stdio.h>
int abc(int u,int v)
{  int w;
while(v) {  w=u%v; u=v; v=w;  }
return u;
}
main()
{  int a=24,b=16,c;
c=abc(a,b);
printf("%dn",c);
}

选项:[ 8,  4,  5,  6]
[单选题]在宏定义#define PI 3.l4l59中,如果将1误输成小写的L,则编译时不出错,运行时出错。(  )

选项:[对, 错]
[单选题]以下叙述中正确的是(  )

选项:[ 宏定义可以嵌套定义,即在宏定义中的字符串可以引用另一个宏定义的标识符。, 其余选项都不正确。,  源程序中所有的行都参加编译。,  宏定义常量与const定义常量是一样的。]
[单选题]为了判断两个字符串s1和s2是否相等,应使用(  )

选项:[ if(s1==s2),  if(strcmp(s1,s2)= = 0)    ,  if(s1=s2),  if(strcpy(s1,s2)) ]
[单选题]在 C 语言中,有关函数的说法,以下正确的是(   )

选项:[ 函数可嵌套定义,也可嵌套调用,  函数可嵌套定义,但不可嵌套调用,  函数不可嵌套定义,也不可嵌套调用,  函数不可嵌套定义,但可嵌套调用 ]
[单选题] 形参只有在被调用时才分配存储空间。(  )

选项:[对, 错]

温馨提示支付 ¥1.00 元后可查看付费内容,请先翻页预览!
点赞(0) dxwkbang
返回
顶部