目录 第1章概述1 1.1计算机程序和计算机语言1 1.1.1低级语言1 1.1.2高级语言2 1.2程序设计的一般步骤3 1.3C语言的发展历程4 1.4初识C语言5 1.4.1C语言的特点5 1.4.2C和C++7 1.4.3C语言的字符集7 1.4.4C语言的词汇8 1.5最简单的C语言程序9 1.5.1C语言程序举例9 1.5.2C语言程序的结构特点13 1.5.3培养良好的程序设计风格14 1.6运行C语言程序的步骤与方法15 1.7本章小结16 习题116 第2章算法与程序17 2.1算法的基础知识17 2.2算法的特征18 2.3几种常用的算法19 2.4简单算法示例21 2.5如何评价一个算法28 2.6算法的描述工具29 2.6.1自然语言29 2.6.2程序流程图30 2.6.3NS结构化流程图37 2.6.4过程设计语言40 2.6.5PAD图43 2.6.6判定表和判定树44 2.7结构化程序设计方法45 2.8本章小结47 习题247 目录程序设计基础(C语言)(第3版·微课视频·题库版)第3章基本数据类型与表达式49 3.1数据类型分类49 3.2整型数据49 3.3浮点型数据51 3.4字符型数据51 3.5常量与变量52 3.5.1常量52 3.5.2变量53 3.6运算符和表达式55 3.6.1C语言运算符简介55 3.6.2算术运算符和算术表达式55 3.6.3关系运算符和关系表达式56 3.6.4逻辑运算符和逻辑表达式57 3.6.5条件运算符和条件运算表达式59 3.6.6逗号运算符和逗号表达式59 3.7本章小结60 习题360 第4章顺序结构程序设计63 4.1顺序程序设计举例63 4.2C语句65 4.2.1C语句概述65 4.2.2最基本的语句——赋值语句66 4.3数据的输入输出69 4.3.1格式输出函数printf()70 4.3.2格式输入函数scanf()74 4.3.3字符输出函数putchar()79 4.3.4字符输入函数getchar()80 4.4本章小结81 习题481 第5章选择结构程序设计83 5.1为什么需要选择结构83 5.2用if语句实现选择结构84 5.2.1单分支if语句84 5.2.2双分支if语句84 5.2.3多分支if语句85 5.3用switch语句实现选择结构87 5.4选择结构的嵌套89 5.5选择结构程序设计综合举例90 5.6本章小结93 习题594 第6章循环结构程序设计95 6.1为什么需要循环结构95 6.2用while语句实现循环结构95 6.3用do…while语句实现循环结构96 6.4用for语句实现循环结构97 6.5break语句和continue语句98 6.5.1用break语句提前退出循环98 6.5.2用continue语句提前结束本次循环99 6.6循环的嵌套100 6.7循环结构程序设计综合举例102 6.8本章小结106 习题6106 第7章数组107 7.1定义和引用一维数组107 7.1.1定义一维数组107 7.1.2引用一维数组元素108 7.1.3初始化一维数组109 7.1.4一维数组应用举例110 7.2定义和引用二维数组113 7.2.1定义二维数组114 7.2.2引用二维数组元素114 7.2.3初始化二维数组115 7.2.4二维数组应用举例116 7.3字符数组118 7.3.1定义字符数组118 7.3.2初始化字符数组118 7.3.3引用字符数组中的元素119 7.3.4字符串和字符串结束标志120 7.3.5字符数组的输入输出122 7.3.6使用字符串处理函数124 7.3.7字符数组应用举例128 7.4本章小结131 习题7131 第8章函数133 8.1函数概述133 8.2函数的定义136 8.2.1无参函数的定义形式136 8.2.2有参函数的定义形式137 8.2.3定义空函数137 8.2.4函数定义的注意事项138 8.3函数的调用138 8.3.1函数的参数139 8.3.2对调用函数的声明141 8.3.3函数的返回值144 8.4嵌套调用和递归调用145 8.4.1嵌套调用145 8.4.2函数的递归调用148 8.5数组作为函数参数152 8.5.1数组元素作函数实参152 8.5.2数组名作函数参数153 8.5.3多维数组名作函数参数157 8.6变量的作用域158 8.6.1局部变量158 8.6.2全局变量160 8.7变量的存储类型163 8.7.1动态存储方式164 8.7.2静态存储方式166 8.7.3存储类别小结172 8.8内部函数和外部函数175 8.8.1内部函数175 8.8.2外部函数176 8.9本章小结178 习题8179 第9章指针182 9.1指针概述182 9.2指针变量183 9.2.1指针变量的定义183 9.2.2指针变量的初始化184 9.2.3指针变量的引用185 9.2.4指针变量的运算187 9.3指针与数组189 9.3.1数组指针189 9.3.2指针数组194 9.3.3指向多维数组的指针196 9.4指针与字符串198 9.4.1字符型指针199 9.4.2通过指针引用字符串200 9.4.3指针处理字符串的应用举例202 9.5指针与函数205 9.5.1函数指针205 9.5.2指针函数214 9.5.3带参的main()函数216 9.6多重指针218 9.7动态内存的分配与指向它的指针变量220 9.7.1内存的分配220 9.7.2动态创建数组224 9.8本章小结225 习题9226 第10章结构体、共用体和枚举类型228 10.1结构体228 10.1.1结构体的定义228 10.1.2结构体变量的定义231 10.1.3结构体变量的使用233 10.1.4结构体与数组237 10.1.5结构体与指针240 10.1.6结构体综合举例247 10.2链表252 10.2.1链表的基本结构与定义252 10.2.2链表的基本操作254 10.2.3建立动态链表255 10.2.4输出链表258 10.3共用体261 10.3.1共用体的定义261 10.3.2共用体变量的定义和使用262 10.3.3共用体数据的特点264 10.3.4共用体举例266 10.4枚举类型268 10.4.1枚举类型的定义269 10.4.2枚举类型变量的定义和使用269 10.4.3枚举类型数据的特点271 10.4.4枚举类型举例271 10.5用typedef重定义数据类型名273 10.5.1typedef概述273 10.5.2typedef的典型用法274 10.5.3typedef与#define的区别275 10.6本章小结276 习题10277 第11章位运算281 11.1位运算概述281 11.2位运算符281 11.2.1取反运算282 11.2.2左移运算282 11.2.3右移运算283 11.2.4按位与运算284 11.2.5按位异或运算286 11.2.6按位或运算287 11.2.7不同长度的数据进行位运算287 11.2.8位运算举例288 11.3位段290 11.4本章小结291 习题11291 第12章文件294 12.1文件概述294 12.2文件类型指针295 12.3文件的打开和关闭296 12.3.1打开文件函数fopen()296 12.3.2关闭文件函数fclose()298 12.4文件的读写299 12.4.1字符读写函数fgetc()和fputc()299 12.4.2字符串读写函数fgets()和fputs()302 12.4.3数据块读写函数fread()和fwrite()305 12.4.4格式化读写函数fscanf()和fprintf()308 12.5文件的定位311 12.5.1文件位置指针定位函数fseek()311 12.5.2文件位置指针复位函数rewind()314 12.5.3文件位置指针查询函数ftell()315 12.6文件检测函数316 12.6.1文件结束检测函数feof()317 12.6.2文件出错检测函数ferror()317 12.6.3文件出错标志和文件结束标志置0函数clearerr()317 12.6.4应用举例317 12.7本章小结318 习题12319 参考文献324 附录A常用字符与ASCII码对照表325 附录BC语言中的关键字326 附录C运算符和结合性328 附录DC语言常用语法330 附录EANSI C常用库函数333