下列说法错误的是()
A、函数既可以嵌套定义,也可以嵌套调用。
B、函数直接或间接调用自己,称为递归调用。
C、一个递归算法必须包含一般条件和基本条件两个基本要素。
D、基本条件是一个能控制递归过程结束的条件,是递归的出口,它本身不再使用递归的方式来定义。一般条件定义了递归关系,控制递归调用向着基本条件的方向转化。
A、函数既可以嵌套定义,也可以嵌套调用。
B、函数直接或间接调用自己,称为递归调用。
C、一个递归算法必须包含一般条件和基本条件两个基本要素。
D、基本条件是一个能控制递归过程结束的条件,是递归的出口,它本身不再使用递归的方式来定义。一般条件定义了递归关系,控制递归调用向着基本条件的方向转化。
A、变量的作用域是指变量的作用范围,即在程序中可以被读写访问的区域,它取决于变量被定义的位置。
B、局部变量与全局变量同名时,全局变量隐藏局部变量,即全局变量起作用,局部变量不起作用。
C、形参也是局部变量,形参变量和实参变量的作用域是不同的,因此形参变量和实参变量同名时,二者互不干扰。
D、只要同名的变量出现在不同的作用域内,二者互不干扰,编译器有能力区分不同作用域中的同名变量
A、变量的作用域决定了变量可以被访问的范围,而变量的存储类型决定了变量的生存期。
B、静态变量和全局变量都是在静态存储区中分配内存的,而自动变量是在动态存储区中分配内存的。
C、用extern声明变量为外部变量的时候,编译器是对其分配内存的。
D、静态局部变量和静态全局变量的生存期是相同的,但二者的作用域是不同的,而静态局部变量和自动变量的作用域都是局部的,但二者的生存期是不同的。
A、递归算法的执行过程可分为递推和回归两个阶段。在递推阶段,必须要有终止递归的情况。当满足递归终止条件时,即获得最简单情况的解以后,开始进入回归阶段,即递归返回阶段。
B、基本条件是一个能控制递归过程结束的条件,是递归的出口,它本身不再使用递归的方式来定义。一般条件定义了递归关系,控制递归调用向着基本条件的方向转化。
C、数学归纳法是递归的数学基础。
D、形参也是局部变量,形参变量和实参变量的作用域是不同的,因此形参变量和实参变量同名时,二者互不干扰。
E、全局变量破坏了函数的封装性,不能实现信息隐藏,依赖全局变量的函数很难在其他程序中复用,对于使用全局变量的程序维护也比较困难,因此建议尽量不用全局变量。
F、函数既可以嵌套定义,也可以嵌套调用。
G、局部变量与全局变量同名时,全局变量隐藏局部变量,即全局变量起作用,局部变量不起作用。
H、用extern声明变量为外部变量的时候,编译器是对其分配内存的。
I、静态局部变量和静态全局变量的生存期和作用域都是相同的。
子函数Fun(int a, int b)的功能是,对任意两个整数a和b,返回两者中的最大值。以下程序是通过调用子函数Fun(int a, int b),找到三个整数中的最大值。若程序运行后的输出结果是8,请补充完整空白处缺少的代码。 #include <stdio.h> int Fun(int a, int b) { if(a>b) return_________; else return________; } int main() { int x=3, y=8, z=6, r; r=_______________; // 找到三个整数x,y,z中的最大值 printf("%d", r); return 0; }
A、第4行: a 第5行: b 第11行: Fun(Fun(x,y),z)
B、第4行: b 第5行: a 第11行: Fun(x,y,z)
C、第4行: 1 第5行: 0 第11行: Fun(x,y,z)
D、第4行: 0 第5行: 1 第11行: Fun(Fun(x,y),z)
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!