C语言程序设计:函数调用与程序结构解析
需积分: 0 109 浏览量
更新于2024-08-05
收藏 287KB PDF 举报
"这篇复习题主要涵盖了C语言的基础知识,包括函数调用方式、程序编译过程、标识符定义规则、常量定义、条件判断语句的等价形式、main函数的特性、switch语句的使用以及for循环的执行情况。此外,还涉及到了指针和数组的使用。"
1. C语言函数可以嵌套调用,也可以递归调用。这个说法是正确的。在C语言中,函数可以嵌套调用,即一个函数内部可以调用另一个函数。同时,函数也支持递归调用,即函数在执行过程中调用自身。递归调用在解决某些问题时非常有用,但需要注意避免无限递归。
2. C语言中,除了main函数,其他的函数完全可以作为单独的文件存在。这种说法是错误的。C语言允许将各个函数分别写在不同的源文件中,然后通过#include预处理指令或者在主程序中extern声明来引用这些外部函数,从而实现模块化编程。
3. 关于C语言程序的编译和运行,两个说法都是正确的。C语言程序需要经过编译(将源代码转换为机器码)和链接(将各个编译后的对象文件合并成可执行文件)才能运行。源程序不能直接在计算机上运行,必须先进行编译。
4. 在C语言中,合法的用户标识符不能以数字开头,也不能是保留关键字。所以,选项B中的`_01B`是非法的,因为以数字开头。
5. 选项B中的`1.234e0.4`不是一个合法的常量,因为指数部分不能包含小数点。
6. 选项C中的`i=a%11;`是不合法的,因为`%`是取余运算符,只能用于整数操作,而`a`是`double`类型。
7. 与`if(a)a++;`等价的语句是`if(a!=0)a++;`,因为非零值在条件判断中被视为真,零值被视为假。
8. 选项B错误,因为C语言的源程序如果没有main函数将无法运行,因为程序的执行总是从main函数开始。
9. switch语句中的表达式可以是任何类型,只要能和case后面的常量表达式进行比较即可,所以可以是任意合法的数值。
10. 给出的程序会先将`x`自增1变为12,然后输出,因此结果是`12`。
11. for循环`for(i=0;i=1;i++)`中,由于`i=1`是赋值操作而非条件判断,所以循环体永远不会执行,因为`i`始终为1,导致`i<1`这个条件永远不满足。
12. 给数组a中下标为4的元素读入数据的正确语句应该是`scanf("%lf", &a[4]);`,因为`a`是`double`类型数组,要用`%lf`格式符,并且`&a[4]`获取的是第5个元素的地址。
以上就是复习题21中涉及的C语言知识点的详细解析。这些题目涵盖了C语言的基础语法、控制结构、数据类型、函数调用和指针等多个方面,是学习C语言的重要练习。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-09-26 上传
2022-08-03 上传
2009-05-28 上传
2014-01-05 上传
神康不是狗
- 粉丝: 39
- 资源: 336
最新资源
- cookie-builder-api
- 搜索框1.zip小程序开发
- YSUSB_V203_Win.zip
- 机械加工工艺手册(软件版).zip
- ItunesMusicApplication
- Admin_api:简单的API,允许管理员用户查看和编辑系统中的用户和组
- Ayumun.github.io
- MacEwan LMS Tools-开源
- compound-interest-calc:计算复利
- 国开电大微积分基础形考任务下载作业
- 音乐伙伴加
- c代码-这是一个打印99乘法表的程序。
- unity古装MN动作模型
- iOS--CSV-Parser-and-writer--Demo-Project:这篇文章的主要目的是描述如何在iOS中解析和写入.CSV文件
- 2259XT2 支持部分SAMSUNG SSV6 固件
- project-changeLampState