书籍详情
C程序设计教程
作者:周世平,卢云宏,谭征,贺利坚,刘迎军
出版社:清华大学出版社
出版时间:2016-08-01
ISBN:9787302439660
定价:¥44.50
购买这本书可以去
内容简介
本书系C程序设计教程,以算法和Raptor程序设计引导读者如何用计算机求解问题,以C语言为基础介绍了程序设计的基本思想和方法,从计算机问题求解与算法设计的角度提高程序设计的能力。全书内容丰富,强调程序设计方法与综合实践能力的培养。本书可作为计算机及相关专业C程序设计的教材,也可供专业技术人员参考或者作为培训教材。
作者简介
暂缺《C程序设计教程》作者简介
目录
C程序设计教程第1章绪论1 1.1计算机系统1 1.1.1硬件系统1 1.1.2软件系统4 1.2程序设计语言5 1.2.1机器语言与汇编语言5 1.2.2高级语言5 1.3计算机问题求解6 1.3.1计算机问题求解概述6 1.3.2算法与程序设计7 1.3.3计算机科学8 1.3.4程序设计范式8 1.4算法的设计9 1.4.1算法思维9 1.4.2算法表示10 1.4.3算法的三种基本结构11 1.4.4算法的设计方法12 本章知识结构图14 习题15
第2章Raptor程序设计16 2.1Raptor的输入与输出16 2.1.1什么是Raptor16 2.1.2简单输出语句16 2.1.3简单输入语句19 2.2Raptor的赋值与过程21 2.2.1赋值语句21 2.2.2过程调用语句24 2.3Raptor的控制结构28 2.3.1顺序结构28 2.3.2选择结构28 2.3.3循环结构30 2.3.4级联选择控制与嵌套循环35 2.3.5Raptor注释37 2.4Raptor的数组37 2.4.1为什么使用数组37 2.4.2数组和数组元素38 2.4.3创建和使用数组38 2.5Raptor的文件与图形界面40 2.5.1计算结果的文件保存40 2.5.2输出结果的图形显示43 2.6综合设计案例43 本章知识结构图45 习题46 C程序设计教程目录 第3章C程序设计初步48 3.1C语言程序48 3.1.1C语言起源48 3.1.2简单C程序49 3.1.3C程序的构成和风格50 3.1.4C程序的开发51 3.1.5C的标准53 3.2C程序的数据信息53 3.3C程序的控制结构56 3.3.1顺序结构56 3.3.2选择结构58 3.3.3循环结构60 3.4C程序的设计61 3.4.1枚举法61 3.4.2迭代法65 本章知识结构图68 习题68
第4章C语言基本组成71 4.1C语言的词法71 4.1.1C语言字符集71 4.1.2保留字72 4.1.3用户标识符73 4.1.4C语言的词类74 4.2基本数据类型74 4.2.1数制74 4.2.2数据类型75 4.2.3常量77 4.2.4变量79 4.3运算符和表达式82 4.3.1算术运算83 4.3.2关系运算84 4.3.3逻辑运算85 4.3.4赋值运算87 4.3.5自增自减运算88 4.3.6逗号运算89 4.3.7长度运算89 4.3.8条件运算89 4.3.9位运算90 4.3.10类型转换93 4.4C语言基本语句95 4.4.1表达式语句96 4.4.2复合语句96 4.4.3选择语句97 4.4.4循环语句105 4.4.5跳转语句114 4.4.6标号语句116 4.5格式化输入与输出116 4.5.1格式化输出函数printf116 4.5.2格式化输入函数scanf121 本章知识结构图126 习题127
第5章函数138 5.1模块化思想概述138 5.1.1模块的概念138 5.1.2模块的例子138 5.1.3模块函数140 5.1.4模块设计的原则140 5.2函数的定义141 5.3函数的调用143 5.3.1函数的调用形式143 5.3.2参数传递与返回值144 5.3.3函数声明145 5.3.4系统函数调用147 5.4递归调用150 5.4.1简单递归的设计150 5.4.2其他递归的设计153 5.5变量的作用域与存储类型156 5.5.1变量的作用域156 5.5.2变量生存期和存储类型157 5.6程序文件结构160 5.6.1单文件结构160 5.6.2多文件结构160 5.6.3预处理指令163 5.6.4文本文件输入输出166 5.7模块化程序设计169 本章知识结构图174 习题175
第6章复杂数据类型184 6.1一维数组184 6.1.1数组的定义186 6.1.2一维数组的初始化189 6.1.3一维数组的应用举例190 6.2二维数组197 6.2.1二维数组的定义197 6.2.2二维数组的存储197 6.2.3二维数组元素的引用198 6.2.4二维数组的初始化198 6.2.5二维数组的应用举例199 6.3指针201 6.3.1指针的概念202 6.3.2指针变量203 6.3.3一维数组和指针205 6.3.4二维数组和指针208 6.3.5返回指针值的函数和指向函数的指针变量215 6.3.6动态内存分配218 6.4字符串221 6.4.1字符串常量222 6.4.2字符串的存储和初始化222 6.4.3用指针指向字符串223 6.4.4字符串的访问224 6.4.5字符串处理函数227 6.4.6用指针数组处理字符串233 6.5结构体237 6.5.1定义结构体类型238 6.5.2结构体变量的定义及初始化239 6.5.3结构体变量所占空间的大小240 6.5.4结构体变量的引用242 6.5.5结构体数组244 6.5.6指向结构体的指针246 6.6复杂数据类型作函数参数248 6.6.1一维数组作函数参数248 6.6.2二维数组作函数参数251 6.6.3指针作函数参数255 6.6.4结构体类型的指针和变量作函数参数260 6.7其他复杂数据类型261 6.7.1共用体类型261 6.7.2枚举类型264 6.7.3类型重定义267 本章知识结构图270 习题272
第7章文件280 7.1输入输出的基本概念280 7.1.1普通文件和设备文件280 7.1.2二进制文件和文本文件281 7.1.3文件流282 7.1.4缓冲文件系统283 7.1.5文件指针283 7.2文件的打开和关闭284 7.2.1文件的打开(fopen函数)284 7.2.2文件关闭函数(fclose函数)286 7.3文本文件的输入输出287 7.3.1读写字符287 7.3.2读写字符串289 7.3.3读写格式化数据291 7.3.4利用标准输入输出设备的读写操作293 7.4二进制文件的输入和输出294 7.4.1文件定位294 7.4.2读写数据块函数296 7.4.3二进制文件的随机读写298 本章知识结构图303 习题304
第8章问题求解与算法309 8.1问题求解中数据结构的选用309 8.1.1问题求解的过程309 8.1.2问题求解中对数据结构的选择317 8.1.3基于数组存储数据的局限320 8.2链表323 8.2.1单链表存储结构324 8.2.2遍历链表325 8.2.3创建一个链表325 8.2.4在链表中插入结点327 8.2.5在链表中删除结点329 8.2.6链表结构的应用331 8.3查找337 8.3.1在有序表上的二分查找337 8.3.2用哈希法存储和查找数据341 8.4排序344 8.4.1快速排序345 8.4.2简单计数排序347 8.5问题求解策略348 8.5.1回溯法349 8.5.2贪心法352 8.5.3动态规划356 本章知识结构图359 习题360
附录AASCII码表完整版365
附录B综合实践报告367
本书知识结构图372
第2章Raptor程序设计16 2.1Raptor的输入与输出16 2.1.1什么是Raptor16 2.1.2简单输出语句16 2.1.3简单输入语句19 2.2Raptor的赋值与过程21 2.2.1赋值语句21 2.2.2过程调用语句24 2.3Raptor的控制结构28 2.3.1顺序结构28 2.3.2选择结构28 2.3.3循环结构30 2.3.4级联选择控制与嵌套循环35 2.3.5Raptor注释37 2.4Raptor的数组37 2.4.1为什么使用数组37 2.4.2数组和数组元素38 2.4.3创建和使用数组38 2.5Raptor的文件与图形界面40 2.5.1计算结果的文件保存40 2.5.2输出结果的图形显示43 2.6综合设计案例43 本章知识结构图45 习题46 C程序设计教程目录 第3章C程序设计初步48 3.1C语言程序48 3.1.1C语言起源48 3.1.2简单C程序49 3.1.3C程序的构成和风格50 3.1.4C程序的开发51 3.1.5C的标准53 3.2C程序的数据信息53 3.3C程序的控制结构56 3.3.1顺序结构56 3.3.2选择结构58 3.3.3循环结构60 3.4C程序的设计61 3.4.1枚举法61 3.4.2迭代法65 本章知识结构图68 习题68
第4章C语言基本组成71 4.1C语言的词法71 4.1.1C语言字符集71 4.1.2保留字72 4.1.3用户标识符73 4.1.4C语言的词类74 4.2基本数据类型74 4.2.1数制74 4.2.2数据类型75 4.2.3常量77 4.2.4变量79 4.3运算符和表达式82 4.3.1算术运算83 4.3.2关系运算84 4.3.3逻辑运算85 4.3.4赋值运算87 4.3.5自增自减运算88 4.3.6逗号运算89 4.3.7长度运算89 4.3.8条件运算89 4.3.9位运算90 4.3.10类型转换93 4.4C语言基本语句95 4.4.1表达式语句96 4.4.2复合语句96 4.4.3选择语句97 4.4.4循环语句105 4.4.5跳转语句114 4.4.6标号语句116 4.5格式化输入与输出116 4.5.1格式化输出函数printf116 4.5.2格式化输入函数scanf121 本章知识结构图126 习题127
第5章函数138 5.1模块化思想概述138 5.1.1模块的概念138 5.1.2模块的例子138 5.1.3模块函数140 5.1.4模块设计的原则140 5.2函数的定义141 5.3函数的调用143 5.3.1函数的调用形式143 5.3.2参数传递与返回值144 5.3.3函数声明145 5.3.4系统函数调用147 5.4递归调用150 5.4.1简单递归的设计150 5.4.2其他递归的设计153 5.5变量的作用域与存储类型156 5.5.1变量的作用域156 5.5.2变量生存期和存储类型157 5.6程序文件结构160 5.6.1单文件结构160 5.6.2多文件结构160 5.6.3预处理指令163 5.6.4文本文件输入输出166 5.7模块化程序设计169 本章知识结构图174 习题175
第6章复杂数据类型184 6.1一维数组184 6.1.1数组的定义186 6.1.2一维数组的初始化189 6.1.3一维数组的应用举例190 6.2二维数组197 6.2.1二维数组的定义197 6.2.2二维数组的存储197 6.2.3二维数组元素的引用198 6.2.4二维数组的初始化198 6.2.5二维数组的应用举例199 6.3指针201 6.3.1指针的概念202 6.3.2指针变量203 6.3.3一维数组和指针205 6.3.4二维数组和指针208 6.3.5返回指针值的函数和指向函数的指针变量215 6.3.6动态内存分配218 6.4字符串221 6.4.1字符串常量222 6.4.2字符串的存储和初始化222 6.4.3用指针指向字符串223 6.4.4字符串的访问224 6.4.5字符串处理函数227 6.4.6用指针数组处理字符串233 6.5结构体237 6.5.1定义结构体类型238 6.5.2结构体变量的定义及初始化239 6.5.3结构体变量所占空间的大小240 6.5.4结构体变量的引用242 6.5.5结构体数组244 6.5.6指向结构体的指针246 6.6复杂数据类型作函数参数248 6.6.1一维数组作函数参数248 6.6.2二维数组作函数参数251 6.6.3指针作函数参数255 6.6.4结构体类型的指针和变量作函数参数260 6.7其他复杂数据类型261 6.7.1共用体类型261 6.7.2枚举类型264 6.7.3类型重定义267 本章知识结构图270 习题272
第7章文件280 7.1输入输出的基本概念280 7.1.1普通文件和设备文件280 7.1.2二进制文件和文本文件281 7.1.3文件流282 7.1.4缓冲文件系统283 7.1.5文件指针283 7.2文件的打开和关闭284 7.2.1文件的打开(fopen函数)284 7.2.2文件关闭函数(fclose函数)286 7.3文本文件的输入输出287 7.3.1读写字符287 7.3.2读写字符串289 7.3.3读写格式化数据291 7.3.4利用标准输入输出设备的读写操作293 7.4二进制文件的输入和输出294 7.4.1文件定位294 7.4.2读写数据块函数296 7.4.3二进制文件的随机读写298 本章知识结构图303 习题304
第8章问题求解与算法309 8.1问题求解中数据结构的选用309 8.1.1问题求解的过程309 8.1.2问题求解中对数据结构的选择317 8.1.3基于数组存储数据的局限320 8.2链表323 8.2.1单链表存储结构324 8.2.2遍历链表325 8.2.3创建一个链表325 8.2.4在链表中插入结点327 8.2.5在链表中删除结点329 8.2.6链表结构的应用331 8.3查找337 8.3.1在有序表上的二分查找337 8.3.2用哈希法存储和查找数据341 8.4排序344 8.4.1快速排序345 8.4.2简单计数排序347 8.5问题求解策略348 8.5.1回溯法349 8.5.2贪心法352 8.5.3动态规划356 本章知识结构图359 习题360
附录AASCII码表完整版365
附录B综合实践报告367
本书知识结构图372
猜您喜欢