- 2
- 0
- 约5.77千字
- 约 11页
- 2017-05-12 发布于河南
- 举报
C语言Chapter02
第2章 C语言程序的基本构成与基本结构
2.1 C语言程序的基本构成
图2-1-1 C语言程序的基本构成
2.1.1 主函数
图2-1-2 主函数
main是C语言主函数的函数名称,也是C语言中唯一的一个不能由用户命名的用户函数名;
C语言语句以分号“;”作为结束符,分号前无任何内容时称为空语句;
C语言的任何表达式都可以作为C语言语句使用,但要注意是否有实际意义;
C语言函数(包括主函数)只能由一个语句构成,即:一个复合语句构成。但复合语句中可以包含语句或复合语句,即:复合语句可以采用递归方式定义。每个复合语句构成一个完整的程序段,复合语句中的复合语句又称为分程序结构;
C语言语句可以不分行书写,也可以分行书写(一行一语句),建议采用分行书写;
除了字符常量,字符串常量、宏名外,C语言程序一般用小写字母书写;
举例说明分程序对自动变量的屏蔽作用。
2.1.2 程序注释
1. 程序注释的一般形式
图3-1-3 程序注释
2. 程序注释的位置
程序注释可以作为注释行加在程序的任何位置,也可以作为行注释加在语句的后面。
程序注释不作为程序的正式内容处理,C编译系统不会理会程序注释。
2.1.3 程序完成的基本任务与标准I/O函数
1. 程序完成的基本任务
图2-1-4 程序完成的基本任务
1) 信息处理由赋值表达式完成;
2) 信息输入输出由I/O函数完成。
2. getchar()函数与putchar()函数
1) getch():键盘输入函数,用于字符输入;
2) putch():屏幕输出函数,用于字符输出。
详见书中C库函数(309页)。
3. scanf()函数与printf()函数
1) scanf()函数
a. scanf()的功能:键盘输入。
b. scanf()函数的一般使用方式:
scanf(用于说明输入格式的字符串常量,变量地址表)
c. 简单的格式说明:%格式说明符
d. 变量地址的表达方式:指针变量或变量名(取址运算表达式)
e. 格式说明字符串中的非格式说明符在键盘输入时要原样输入。
f. 复杂的格式说明:
% [*] [m] [l/h]格式字符
详见书中49页。
2) printf()函数:屏幕输出函数
a. printf()函数的功能:屏幕输出。
b. printf()函数的一般使用方式:
printf(用于说明输出格式的字符串,表达式)
c. 简单格式说明:%格式说明符
d. 输出控制字符:、\n,\t等等。
e. 格式说明字符串中的非格式说明符在屏幕输出时会原样输出。
f. 复杂的格式说明:
%[-] [0] [m] [.n] [l/h] 格式说明符
详见书中44页。
4.编译预处理
C语言编译系统对C语言程序进行编译时需要两步:
首先把带有编译预处理命令的C语言源程序翻译成不带有编译预处理命令的C语言源程序,然后再把不带编译预处理命令的C语言源程序翻译成机器指令代码。C语言具有一组完善的编译处理命令,包括宏代换、文件包含、条件编译等,C语言程序中用#号开头的都是编译预处理命令。
1) 宏代换
a. 简单宏定义
图2-1-5简单宏定义
b. 带参宏定义
图2-1-6 带参宏定义
c. 取消定义
图2-1-7 取消定义
2) 文件包含
对于大量的宏定义与其它类型的定义,可以用一个称为包含的文件单独存在磁盘上(*.h)- 头包含文件。然后在程序中用一个调用头文件的命令代替就可以了。这样做可以使程序变得小巧玲珑。
图2-1-8 文件包含
系统包含文件是由C语言编译系统提供的。这样做主要是为用户调用库函数提供方便,用户在调用库函数时,必须把相应的包含文件包含进来。
3) 条件编译
a. #ifdef型条件编译
图2-1-9 #ifdef型条件编译
举例说明条件编译的使用,主要是为了提高程序的可移植性。
例如:有的C语言没有char型变量,则可以利用条件编译把char型变量定义换成int型。
b. #ifndef型条件编译
图2-1-10 #ifndef型条件编译
c. #if型条件编译
图2-1-11 #if型条件编译
2.2 C语言程序的基本结构 - 结构化程序设计
C语言程序完成的基本任务包括信息输入、信息处理、信息输出等三项,完成三项基本任务采用的基本程序结构为顺序结构、选择结构、循环结构,采用三种基本结构进行程序设计的方法,称为结构化程序设计方法。
2.2.1 选择结构程序设计
1. 无条件分支语句
1) 语句结构
图2-2-
您可能关注的文档
- 5-1创建和编辑图表——制作数据表.doc
- 4一元二次不等式的解法.doc
- 4窗体和报表制作.doc
- 5-封装继承和多态-实验指导书.doc
- 5.5二次函数表达式.doc
- 5.软件测试.doc
- 51单片机+带字库液晶12864+DS1302数字时钟C源程序(无按键修改功能).doc
- 5s4.12检验与测试状况管制程序书A.0.doc
- 5圆的面积兰雪萍.doc
- 5小测试.doc
- (2026春新版)部编版八年级语文下册《第一单元》PPT课件.pptx
- 2018电力监控系统网络安全监测装置技术规范.docx
- 2022电力监控系统安全防护方案审核要点.docx
- 2014电力电缆光伏系统EN 50618欧标.docx
- (2026春新版)人教版二年级数学下册《第三单元 万以内数的认识》教案.docx
- (2026春新版)人教版二年级数学下册《第四单元 万以内的加法和减法》教案.docx
- (2026春新版)人教版二年级数学下册《综合与实践 时间在哪里》教案.docx
- (2026春新版)苏教版二年级数学下册《综合与实践 时间有多长》教案 .pdf
- (2026春新版)部编版三年级语文下册第3单元(教案).docx
- (2026春新版)部编版三年级语文下册第8单元(教案).docx
最近下载
- Dräger德图呼吸机Oxylog 3000 plus用户手册.pdf
- 零售业销售数据分析方法与应用.docx VIP
- 会计信息系统:财务篇 教案全套 宋红尔 第1--9章 系统管理---UFO报表.docx
- 个体化音乐干预减轻腹腔镜手术病人术前焦虑的研究.pdf VIP
- 精品解析:黑龙江省哈尔滨市德强高级中学2023-2024学年高一下学期开学验收考试数学试题(解析版).docx VIP
- GB50108–2024《地下工程防水技术规范》.pptx VIP
- 2023年上海初三语文一模试题说明文阅读汇编含答案.doc VIP
- 2025年福建省中考物理试卷(附答案解析).docx VIP
- Specialized English for Medical Imaging Technology医学影像 技术专业英语.pptx VIP
- 改建工程路面结构设计毕业设计.doc VIP
原创力文档

文档评论(0)