C语言Chapter02.docVIP

  • 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-

文档评论(0)

1亿VIP精品文档

相关文档