C语言复习重点:从基础到实战
需积分: 3 17 浏览量
更新于2024-09-21
收藏 91KB DOC 举报
"这是一份针对华夏学院C语言期末复习的资料,包含了填空、选择、问答和编程等多种题型,旨在帮助学生全面复习C语言的基础知识和编程技能。"
详细知识点说明:
1. **变量命名规则**:
- C语言中的变量名必须以字母或下划线开头,后面可以跟字母、数字或下划线,不允许包含标点符号或特殊字符。因此,合法的变量名如`TomB3a6b`和`C_6a7b`,而不合法的有`AB.C`(包含非法字符`.`)、`D$ABC`(包含非法字符`$`)。
2. **C语言标识符**:
- 正确的C语言标识符不能以数字开头,例如`_123`是合法的,而`%d`和`\n`不是,因为它们是预定义的宏和转义序列。
3. **程序执行流程**:
- C语言程序的执行始于`main()`函数,经过编译和链接后才能运行。一个C源程序只能有一个`main()`函数。
4. **文件扩展名**:
- C源程序文件的扩展名通常是`.c`,编译后生成的中间文件是`.OBJ`,最终链接生成的可执行文件是`.EXE`。
5. **语句分隔符**:
- C语言中,语句之间用分号`;`进行分隔。
6. **C语言程序开发步骤**:
- 包括编辑源代码、编译源文件、链接生成可执行文件以及运行程序。
7. **注释语法**:
- C语言的多行注释以`/*`开始,以`*/`结束。
**第二章知识点**:
1. **实型常量**:
- 实型常量的正确格式为带有小数点或指数形式的浮点数,例如`2.607e-1`、`0.8103e`和`-77.77`,而`456e-2`因缺少小数点或等号前的0而非法。
2. **整型常量**:
- `12`、`-20`和`456`是正确的整型常量,但`1,000`中的逗号不是合法的分隔符。
3. **表达式计算**:
- 在C语言中,`x=(x=1+2,x*2)`的结果是6,`x=y>2?6:5`的结果也是6,`x=8-(--y)-(--y)`的结果取决于`y`的初始值,可能不等于6。`x=y*4.8/2`的结果会根据浮点数的精度可能不等于6,通常会四舍五入。
4. **int类型常数**:
- `32768`对于int类型来说可能超出其表示范围,具体取决于平台的int类型大小,`037`是八进制表示,`0Xaf`是十六进制表示。
5. **逗号表达式**:
- `(a=3*5,a*4),a+15`的值取决于逗号表达式的求值顺序,最后的表达式是`a+15`,其值取决于`a`的值,因此结果可能是15。
6. **字符型常量**:
- 字符型常量在内存中存储的是ASCII代码。
7. **数据类型与大小**:
- `sizeof(x)`和`sizeof(float)`都是正确的,它们分别返回变量`x`和`float`类型的大小。
8. **类型转换与赋值**:
- 表达式`x=(float)(y*3+((int)y)%4)`将`y`转换为整数,再进行运算,结果为17。
9. **取模运算符**:
- `%`运算符只适用于整型操作数。
10. **逻辑与赋值运算**:
- `x=(a=1,b=2)`的结果是2,因为`a=1`和`b=2`都进行了赋值操作,且`b=2`的值被赋给`x`。
11. **C语言特性**:
- 大写字母和小写字母在C语言中被视为不同的字符,因此`A`和`a`是不同的标识符。
12. **等价的表达式**:
- `x*=y+2`等同于`x=x*(y+2);`,都是对`x`的值进行乘法和加法运算。
13. **复杂表达式计算**:
- `y+=(y-=m*=y)`的计算过程中,`y`的值会变为-16。
14. **程序结构**:
- 结构化程序设计的三种基本结构是顺序结构、分支结构(if...else)和循环结构(for, while, do...while)。
15. **三元运算符**:
- `(--a==++c)?--a:c++`的值是5,因为先自增`c`,然后自减`a`,条件成立,`c`的值最终为6。
16. **条件表达式**:
- `x>(y+x)?10:(12.5>y)`的计算取决于`x>(y+x)`的结果,这里没有给出完整表达式,但根据条件判断,10会被赋值给表达式的结果,而`y`的值会因后续操作而改变。
以上是对C语言复习资料中涉及的主要知识点的详细解释和解析,涵盖了变量命名、数据类型、表达式计算、程序结构等多个方面,有助于理解和复习C语言的基础概念。
1028 浏览量
点击了解资源详情
447 浏览量

wangjishangxin
- 粉丝: 0
最新资源
- 映美GSX230打印机通用驱动v1.3发布,支持Win7
- VHDL实现的数字钟项目代码完整展示
- ProWiki开源Wiki引擎:自定义分层布局和访问权限
- VRay 3.6 for Rhino6汉化版发布:建筑设计渲染神器
- Vue项目common-lib-vue的开发和构建流程
- 深入探讨高速电路设计:SI、PI与EMC案例分析
- Linux下编译ffmpeg解码器so动态库指南
- 飞飞CMS2.8火车头免登陆模块及接口的feifei插件介绍
- 深入探讨pandas-gbq-0.21.0:Python数据分析库的强大工具
- 体外电生理记录低温平台研发及其应用
- 企业荣耀:corpgloria品牌深度解析
- Otto Web Framework深度解析:开源Python网络框架
- WordPress伪静态URL重写组件1.1版本发布
- VC++实现远程桌面信息获取方法
- mod_wsgi 3.5在Windows平台下支持Python和Apache版本集成
- 瓦楞纸板自动堆码装置设计与应用