目录 目录 第一章c程序基础 1.1C语言程序的基本结构 1.1.1认识C语言程序 1.1.2C语言程序的基本结构 1.1.3C语言的表达式和语句 12C程序运行过程 12.1源程序、目标程序和可执行程序的概念 11 122C程序上机步骤 12 3编写简单的C语言程序 14C语言基本语法成分 1.5C语言数据类型 1.5.1整型数据 1.52实型数据 1.5.3字符型数据 21 1.6数据的输入与输出 22 1.6.1pinf()函数 162 scanf()函数 1.7算法 1.7.1算法的概念及特性 1.7.2算法的表示方法 18C语言的产生、发展及特点 18.1C语言的产生及发展 182C语言的特点 习题 第二章程序基本结构 21分支结构 2.1.1单分支结构 2.1.2双分支结构 21.3多分支结构 2.14if语句的嵌套 2.1.5条件运算符 42 2.1.6 switch语句
1 目 录 目 录..................................................................................................1 第一章 C 程序基础...................................................................................6 1.1 C 语言程序的基本结构..............................................................6 1.1.1 认识 C 语言程序................................................................6 1.1.2 C 语言程序的基本结构.......................................................8 1.1.3 C 语言的表达式和语句.....................................................10 1.2 C 程序运行过程....................................................................... 11 1.2.1 源程序、目标程序和可执行程序的概念........................... 11 1.2.2 C 程序上机步骤................................................................12 1.3 编写简单的 C 语言程序...........................................................13 1.4 C 语言基本语法成分................................................................16 1.5 C 语言数据类型.......................................................................18 1.5.1 整型数据.........................................................................19 1.5.2 实型数据.........................................................................20 1.5.3 字符型数据.....................................................................21 1.6 数据的输入与输出...................................................................22 1.6.1 printf()函数..................................................................23 1.6.2 scanf()函数..................................................................25 1.7 算法........................................................................................27 1.7.1 算法的概念及特性...........................................................27 1.7.2 算法的表示方法..............................................................28 1.8 C 语言的产生、发展及特点.....................................................30 1.8.1 C 语言的产生及发展.........................................................30 1.8.2 C 语言的特点...................................................................31 习题 一...................................................................................33 第二章 程序基本结构 ............................................................................36 2.1 分支结构..................................................................................36 2.1.1 单分支结构.....................................................................36 2.1.2 双分支结构.....................................................................37 2.1.3 多分支结构.....................................................................38 2.1.4 if 语句的嵌套...................................................................40 2.1.5 条件运算符.....................................................................42 2.1.6 switch 语句.......................................................................43
2.2关系运算和逻辑运算 47 23循环结构 2.3.1概述 2.3.2当型循环 while 2.3.3直到型循环 do-while 2.3.4当型循环for 23.5几种循环的比较 24 break和 continue语句 24. I break语句 242 continue语句 25goo语句 2.6经典算法举例 习题二 第三章模块化程序设计 3.1模块化程序设计的方法与特点 .73 3.2函数的定义 3.3无返回值函数的定义与调用 3.4有返回值函数的定义与调用 3.5函数嵌套调用和函数声明 3.6函数的递归调用 3.7库函数的使用 3.8全局变量和局部变量 39指针和指针作为函数参数 3.10返回指针值的函数 3.l函数的指针 105 3.12典型例题 第四章简单构造数据类型 4.1一维数组的引出及使用 4.1.1一维数组的引出 4.1.2一维数组特点及其引用 42二维数组的引出及使用 4.2.1二维数组的引出 42.2二维数组特点及其引用 124 42.3数组程序举例 4.3字符数组 43.1字符数组的引出 43.2字符数组的定义和使用 132
2 2.2 关系运算和逻辑运算.................................................................47 2.3 循环结构..................................................................................49 2.3.1 概述................................................................................49 2.3.2 当型循环 while ................................................................51 2.3.3 直到型循环 do-while........................................................52 2.3.4 当型循环 for....................................................................55 2.3.5 几种循环的比较..............................................................57 2.4 break 和 continue 语句................................................................59 2.4.1 break 语句........................................................................59 2.4.2 continue 语句....................................................................61 2.5 goto 语句...................................................................................62 2.6 经典算法举例...........................................................................63 习题二............................................................................................70 第三章 模块化程序设计.......................................................................73 3.1 模块化程序设计的方法与特点...................................................73 3.2 函数的定义................................................................................74 3.3 无返回值函数的定义与调用.......................................................76 3.4 有返回值函数的定义与调用.......................................................80 3.5 函数嵌套调用和函数声明...........................................................86 3.6 函数的递归调用.........................................................................88 3.7 库函数的使用............................................................................89 3.8 全局变量和局部变量..................................................................93 3.9 指针和指针作为函数参数...........................................................98 3.10 返回指针值的函数.................................................................. 102 3.11 函数的指针............................................................................ 105 3.12 典型例题................................................................................ 108 习 题 三....................................................................................... 114 第四章 简单构造数据类型................................................................... 118 4.1 一维数组的引出及使用........................................................... 118 4.1.1 一维数组的引出............................................................. 118 4.1.2 一维数组特点及其引用................................................... 120 4.2 二维数组的引出及使用........................................................... 122 4.2.1 二维数组的引出............................................................. 122 4.2.2 二维数组特点及其引用.................................................. 124 4.2.3 数组程序举例................................................................. 125 4.3 字符数组................................................................................. 130 4.3.1 字符数组的引出............................................................. 130 4.3.2 字符数组的定义和使用.................................................. 132
4.3.3字符串的定义及使用 133 434字符数组程序举例 44数组与函数 140 44.1数组元素作为函数参数 442数组名作为函数参数 44.3多维数组作为函数参数 45数组与指针 145 4.5.1一维数组与指针 145 4.5.2多维数组与指针 453用数组名作函数参数 46字符串与指针 46.1字符串的指针和指针变量 462用字符串指针访问字符串 46.3字符指针和字符数组的区别 46.4字符串指针作函数参数 555 4.7典型例题 *48链表 4.8.1概述… 170 4.82简单链表 4.8.3动态链表 484输出链表链表结构的实现和使用 习题四 第5章复杂构造数据类型 5.1结构体 5.1.1结构体的引出及使用 191 51.2结构体数组的引出及使用 51.3结构体程序举例 514结构体与指针 52共用体 521共用体的引出 206 522共用体的定义及使用 53枚举类型 210 53.1枚举类型的引出 532枚举类型的定义及使用 习题五 213 第六章磁盘数据存储 218 61将数据写入文件 218 62文件读写分类函数 221
3 4.3.3 字符串的定义及使用..................................................... 133 4.3.4 字符数组程序举例.......................................................... 138 4.4 数组与函数............................................................................. 140 4.4.1 数组元素作为函数参数................................................... 141 4.4.2 数组名作为函数参数...................................................... 142 4.4.3 多维数组作为函数参数................................................... 144 4.5 数组与指针............................................................................. 145 4.5.1 一维数组与指针............................................................. 145 4.5.2 多维数组与指针............................................................. 148 4.5.3 用数组名作函数参数...................................................... 149 4.6 字符串与指针.......................................................................... 152 4.6.1 字符串的指针和指针变量............................................... 152 4.6.2 用字符串指针访问字符串............................................... 153 4.6.3 字符指针和字符数组的区别............................................ 154 4.6.4 字符串指针作函数参数................................................... 157 4.7 典型例题................................................................................. 159 *4.8 链表....................................................................................... 170 4.8.1 概述............................................................................... 170 4.8.2 简单链表........................................................................ 171 4.8.3 动态链表........................................................................ 171 4.8.4 输出链表链表结构的实现和使用..................................... 174 习题四.......................................................................................... 179 第 5 章 复杂构造数据类型................................................................... 190 5.1 结构体..................................................................................... 190 5.1.1 结构体的引出及使用...................................................... 191 5.1.2 结构体数组的引出及使用............................................... 195 5.1.3 结构体程序举例............................................................. 198 5.1.4 结构体与指针................................................................. 201 5.2 共用体..................................................................................... 205 5.2.1 共用体的引出................................................................. 206 5.2.2 共用体的定义及使用...................................................... 209 5.3 枚举类型................................................................................. 210 5.3.1 枚举类型的引出............................................................. 210 5.3.2 枚举类型的定义及使用................................................... 212 习题五.......................................................................................... 213 第六章 磁盘数据存储.......................................................................... 218 6.1 将数据写入文件...................................................................... 218 6.2 文件读写分类函数.................................................................. 221
63文件定位函数 227 习题五 第七章实用程序设计技巧 7.1程序的模块化结构 7.1.1软件工程的思想 7.1.2模块设计 236 7.1.3使用模块化方法开发程序的好处 237 7.2模块的组装 239 621文件包含与头文件的使用 239 622模块间的连接 242 623标识符的一致性 扁译 624条件编i 7.3模块设计风格简述 63.1数据风格 632标识符风格 63.3算法风格 247 634输入/输出风格. 247 635书写风格 248 74大型程序开发的项目管理 64.1项目管理器 249 642用项目管理器开发程序项目的步骤 64.3项目管理器的使用技巧 251 7.5几个应用程序设计实例 251 习题 262 C语言实验教程 263 实验一C语言运行环境和C程序初步 263 的和要求 263 实验内容 进入 Turbo c. 263 2熟悉 Turbo C程序运行过程 .266 3简单编程练习 实验二顺序结构程序设计 、目的和要求. 272 实验内容 实验三选择结构程序设计 275 目的和要求 275
4 6.3 文件定位函数.......................................................................... 227 习题五.......................................................................................... 230 第七章 实用程序设计技巧................................................................... 235 7.1 程序的模块化结构.................................................................. 235 7.1.1 软件工程的思想............................................................ 235 7.1.2 模块设计....................................................................... 236 7.1.3 使用模块化方法开发程序的好处.................................... 237 7.2 模块的组装............................................................................. 239 6.2.1 文件包含与头文件的使用......................................... 239 6.2.2 模块间的连接........................................................... 242 6.2.3 标识符的一致性....................................................... 243 6.2.4 条件编译.................................................................. 244 7.3 模块设计风格简述.................................................................. 246 6.3.1 数据风格.................................................................. 246 6.3.2 标识符风格................................................................... 246 6.3.3 算法风格....................................................................... 247 6.3.4 输入/输出风格............................................................... 247 6.3.5 书写风格....................................................................... 248 7.4 大型程序开发的项目管理........................................................ 249 6.4.1 项目管理器................................................................... 249 6.4.2 用项目管理器开发程序项目的步骤................................ 250 6.4.3 项目管理器的使用技巧.................................................. 251 7.5 几个应用程序设计实例........................................................... 251 习题.............................................................................................. 262 C 语言实验教程................................................ 263 实验一 C 语言运行环境和 C 程序初步........................................... 263 一、目的和要求..................................................................... 263 二、实验内容......................................................................... 263 1 进入 Turbo C....................................................................... 263 2 熟悉 Turbo C 程序运行过程................................................. 266 3 简单编程练习..................................................................... 271 实验二 顺序结构程序设计............................................................ 272 一、目的和要求..................................................................... 272 二、实验内容......................................................................... 273 实验三 选择结构程序设计........................................................... 275 一、目的和要求..................................................................... 275
实验内容 275 实验四循环结构程序设计 277 目的和要求 实验内容 实验五函数编程 、目的和要求 280 二、实验内容 281 实验六构造数据类型 284 、目的和要求 284 、实验内容. 实验七磁盘数据存储 目的和要求 实验内容 实验八项目开发与模块设计 、目的和要求 289 二、实验内容 289 附录 292 附录一 Turbo C20集成开发环境的使用 附录二常用功能键简表 附录三 Turbo c编译出错信息 298 严重错误 299 2.一般错误 299 3.警告 附录四常用C库函数 312 4.1数学函数 4.2输入输出函数… 315 43字符函数 321 44字符串函数 4.5动态存储分配函数 326 46时间函数 327 4.7其它函数 330 参考文献 335
5 二、实验内容......................................................................... 275 实验四 循环结构程序设计........................................................... 277 一、目的和要求..................................................................... 277 二、实验内容......................................................................... 277 实验五 函数编程......................................................................... 280 一、目的和要求..................................................................... 280 二、实验内容......................................................................... 281 实验六 构造数据类型.................................................................. 284 一、目的和要求..................................................................... 284 二、实验内容......................................................................... 284 实验七 磁盘数据存储.................................................................. 289 一、目的和要求..................................................................... 289 二、实验内容......................................................................... 289 实验八 项目开发与模块设计....................................................... 289 一、目的和要求..................................................................... 289 二、实验内容......................................................................... 289 附录..................................................................................................... 292 附录一 Turbo C 2.0 集成开发环境的使用..................................... 292 附录二 常用功能键简表.............................................................. 297 附录三 Turbo C 编译出错信息..................................................... 298 1. 严重错误........................................................................... 299 2. 一般错误........................................................................... 299 3. 警告.................................................................................. 309 附录四 常用 C 库函数................................................................. 312 4.1 数学函数......................................................................... 312 4.2 输入输出函数.................................................................. 315 4.3 字符函数......................................................................... 321 4.4 字符串函数...................................................................... 323 4.5 动态存储分配函数........................................................... 326 4.6 时间函数......................................................................... 327 4.7 其它函数......................................................................... 330 参考文献.............................................................................................. 335