第一行代码
全新正版 极速发货
¥
41.13
5.9折
¥
69.8
全新
库存2件
作者翁惠玉 编著
出版社人民邮电出版社
ISBN9787115475930
出版时间2018-05
装帧平装
开本16开
定价69.8元
货号1201686932
上书时间2024-08-10
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
翁惠玉:上海交通大学副教授,“程序设计”“数据结构”和“计算机网络”等课程主讲教师,曾获高等教育教学成果奖一等奖、高等教育教学成果奖二等奖、高等教育上海市级教育成果一等奖等。
目录
章 程序设计概述 11.1 什么是程序设计 11.2 计算机的基本组成 21.2.1 计算机硬件 21.2.2 计算机软件 41.3 程序设计语言 41.3.1 机器语言 41.3.2 汇编语言 51.3.3 不错语言 61.3.4 智能语言 71.3.5 C语言 71.4 程序设计过程 71.4.1 算法设计 81.4.2 编码 111.4.3 编译与链接 111.4.4 调试与维护 121.5 编程规范及常见问题 131.5.1 真的需要算法设计阶段吗 131.5.2 为什么不用自然语言编程 131.5.3 寄存器、主存储器和外存储器有什么不同 131.5.4 所有的计算机能够执行的指令都是相同的吗 131.5.5 为什么需要编译和链接 131.5.6 为什么在不同类型的计算机上运行C语言程序需要使用不同的编译器 141.5.7 为什么不同类型的计算机不能运行同一个汇编程序 141.6 小结 141.7 自测题 141.8 实战训练 15第2章 初识C语言 162.1 一个完整的C语言程序 162.1.1 注释 172.1.2 预编译 172.1.3 主程序 182.2 C语言的开发环境 202.2.1 VS2010的安装 202.2.2 程序输入 202.2.3 编译链接 242.2.4 程序的运行 252.2.5 程序的调试 282.3 编程规范及常见问题 302.3.1 注意注释 302.3.2 良好的排版习惯 302.3.3 为什么要学C语言 312.3.4 如何学习程序设计 312.3.5 什么是库 312.4 小结 322.5 自测题 322.6 实战训练 32第3章 顺序程序设计 333.1 常量与变量 333.1.1 变量定义 333.1.2 数据类型 353.1.3 常量与符号常量 393.2 数据的输入/输出 443.2.1 字符的输入/输出 443.2.2 格式化输入/输出 463.3 算术运算 543.3.1 算术表达式 543.3.2 不同类型数据间的混合运算 563.3.3 强制类型转换 573.3.4 数学函数库 593.4 赋值运算 603.4.1 赋值表达式 603.4.2 赋值的嵌套 623.4.3 复合赋值运算 623.4.4 自增和自减运算符 63*3.5 信息表示 643.5.1 数制间的转换 643.5.2 整数的表示 663.5.3 实数的表示 693.6 顺序程序设计示例 693.7 程序规范及常见问题 713.7.1 变量命名 713.7.2 运算符的优先级 713.7.3 数据运算时的注意事项 713.7.4 为什么要定义符号常量 723.7.5 变量定义后且对它赋值前的值是什么 723.7.6 不要在表达式中插入有副作用的子表达式 723.8 小结 723.9 自测题 733.10 实战训练 74第4章 分支程序设计 764.1 关系表达式 764.2 逻辑表达式 784.2.1 逻辑运算 784.2.2 短路求值 804.3 if语句 824.3.1 if语句的形式 824.3.2 if语句的嵌套 874.3.3 条件表达式 904.4 switch语句及其应用 924.5 程序规范及常见问题 1024.5.1 条件语句程序的排版 1024.5.2 不要连用关系运算符 1024.5.3 注意短路求值 1024.5.4 常见错误 1024.6 小结 1034.7 自测题 1034.8 实战训练 104第5章 循环程序设计 1065.1 计数循环 1065.1.1 for语句 1065.1.2 for语句的进一步讨论 1155.1.3 for循环的嵌套 1165.2 break和continue语句 1185.2.1 break语句 1185.2.2 continue语句 1205.3 基于哨兵的循环 1215.3.1 while语句 1225.3.2 do…while循环 1285.4 循环的中途退出 1305.5 编程规范和常见问题 1345.5.1 循环语句程序的排版 1345.5.2 优化循环体 1345.5.3 使用for循环的注意事项 1345.5.4 常见错误 1345.5.5 三个循环语句之间的关系 1355.6 小结 1355.7 自测题 1355.8 实战训练 136第6章 过程封装——函数 1396.1 函数的定义 1406.1.1 函数的基本结构 1406.1.2 return语句 1416.1.3 函数示例 1416.2 函数的使用 1446.2.1 函数原型的声明 1446.2.2 函数调用 1466.2.3 将函数与主程序放在一起 1476.2.4 函数调用过程 1516.3 带参数的宏 1546.4 变量的作用域 1556.4.1 局部变量 1556.4.2 全局变量 1566.5 变量的存储类别 1586.5.1 自动变量 1586.5.2 静态变量 1596.5.3 寄存器变量 1606.5.4 外部变量 161*6.6 多源文件程序的编译链接 1636.7 递归程序设计 1646.7.1 递归的基本概念 1656.7.2 递归函数的应用 1676.8 编程规范及常见问题 1736.8.1 使用函数时的建议 1736.8.2 函数命名 1746.8.3 没有返回值的函数是否需要return语句 1746.8.4 尽量避免使用全局变量 1746.8.5 尽量避免实际参数表达式有副作用 1756.8.6 常见错误 1756.9 小结 1756.10 自测题 1766.11 实战训练 177第7章 批量数据处理——数组 1797.1 一维数组 1797.1.1 一维数组的定义 1797.1.2 数组元素的引用 1807.1.3 一维数组的内存映像 1847.1.4 一维数组的应用 1857.2 数组作为函数的参数 1907.3 查找算法 1957.3.1 顺序查找 1967.3.2 二分查找 1977.4 排序算法 2017.4.1 直接选择排序法 2017.4.2 冒泡排序法 2037.5 二维数组 2057.5.1 二维数组的定义 2067.5.2 二维数组元素的引用 2077.5.3 二维数组的内存映像 2087.5.4 二维数组的应用 2087.5.5 二维数组作为函数的参数 2187.6 字符串 2207.6.1 字符串的存储及初始化 2207.6.2 字符串的输入/输出 2217.6.3 字符串作为函数参数 2257.6.4 字符串处理函数 2307.6.5 字符串的应用 2327.7 程序规范及常见问题 2347.7.1 数组下标必须从0开始吗 2347.7.2 能用表达式des = src将字符串src赋给字符串des吗 2347.7.3 为什么存放字符串的数组长度比字符串的实际长度多一个字符2357.7.4 有了scanf函数为什么还需要gets函数 2357.7.5 传递字符串为什么只需要一个参数 2357.7.6 传递二维数组时形式参数中第二个方括号中的值为什么必须指定 2357.8 小结 2357.9 自测题 2367.10 实战训练 237第8章 指针 2408.1 指针的概念 2408.1.1 指针与间接访问 2408.1.2 指针变量的定义 2418.1.3 指针变量的操作 2428.2 指针与数组 2468.2.1 指向数组元素的指针 2468.2.2 指针运算与数组访问 2468.3 指针与函数 2508.3.1 指针作为参数 2508.3.2 返回指针的函数 2548.3.3 数组作为函数参数的进一步讨论 2568.4 动态内存分配 2598.4.1 动态变量 2598.4.2 动态变量的创建 2598.4.3 动态变量的消亡 2618.4.4 内存泄露 2618.4.5 查找malloc和calloc的失误 2618.4.6 动态变量应用 2638.5 指针与字符串 2658.5.1 用指向字符的指针变量表示字符串 2658.5.2 字符串作为函数的参数 2668.5.3 返回字符串的函数 2688.6 指针数组与多级指针 2708.6.1 指针数组 270*8.6.2 main函数的参数 272*8.6.3 多级指针 276*8.6.4 二维数组与指向一维数组的指针 277*8.6.5 动态二维数组 279*8.7 函数指针 2808.7.1 指向函数的指针 2808.7.2 函数指针作为函数参数 2818.7.3 函数指针用于菜单选择 2848.8 编程规范与常见问题 2858.8.1 int x, *p = &x;有错吗 2858.8.2 避免使用悬空指针和未初始化的指针 2868.8.3 不同类型的指针之间为什么不能赋值 2868.8.4 指针与数组等价吗 2868.8.5 值传递和指针传递的区别是什么 2868.8.6 返回指针的函数必须确保返回值指向的变量在函数执行结束时依然存在 2878.8.7 使用动态变量时必须严格防止内存泄露 2878.9 小结 2878.10 自测题 2888.11 实战训练 289第9章 更多的数据类型 2909.1 枚举类型 2909.2 类型别名 2939.3 结构体 2949.3.1 结构体的概念 2949.3.2 结构体类型的定义 2959.3.3 结构体类型变量的定义 2969.3.4 结构体类型变量的使用 2999.3.5 结构体与函数 3029.4 链表 3089.4.1 链表的概念 3089.4.2 单链表的存储 3109.4.3 单链表的操作 3119.4.4 带头结点的单链表 3129.4.5 单链表实例 3139.5 共用体 3169.5.1 共用体概念和共用体类型的定义 3169.5.2 共用体类型变量的定义及初始化 3189.5.3 共用体变量的使用 3189.6 编程规范及常见问题 3249.6.1 结构体中每个字段的类型都不相同吗 3249.6.2 单链表中为什么要引入头结点 3249.6.3 引入结构体有什么用处 3249.6.4 结构体和共用体的区别 3249.6.5 结构体和共用体类型定义时能否省略类型名 3249.6.6 结构体类型定义与结构体变量定义 3259.7 小结 3259.8 自测题 3259.9 实战训练 3260章 位运算与位段 32810.1 位运算 32810.1.1 “按位与”运算 32810.1.2 “按位或”运算 33010.1.3 “按位异或”运算 33110.1.4 “按位取反”运算 33310.1.5 “左移”运算 33510.1.6 “右移”运算 33510.1.7 位运算与赋值运算 33710.1.8 不同长度的数据进行位运算 33710.2 位段 33810.2.1 位段的概念及定义 33810.2.2 位段的引用 33910.3 编程规范及常见问题 34110.3.1 检验某数中指定位的值 34110.3.2 将数据中的某一位的值置成0 34110.3.3 将数据中的某一位的值置成1 34210.3.4 将数据中的某一位的值取反 34210.4 小结 34210.5 自测题 34210.6 实战训练 3431章 文件 34411.1 内存与外存 34411.2 文件的概念 34511.2.1 什么是文件 34511.2.2 ASCII文件与二进制文件 34611.3 文件缓冲与文件指针 34611.4 文件的打开与关闭 34711.4.1 打开文件 34711.4.2 关闭文件 34911.5 ASCII文件的读写 34911.5.1 字符读写函数 35011.5.2 字符串读写函数 35211.5.3 数值读写函数 35411.6 二进制文件的读写 35811.6.1 fwrite函数 35811.6.2 fread函数 36011.7 文件的顺序访问 36211.7.1 什么是文件的顺序访问 36211.7.2 feof函数 36311.8 文件的随机访问 36411.8.1 文件定位指针 36511.8.2 rewind函数 36511.8.3 fseek函数 36711.8.4 ftell函数 369*11.9 文件操作与控制台操作 37011.10 编程规范及常见问题 37111.10.1 良好的文件使用习惯 37111.10.2 文件打开方式选择 37211.10.3 文件指针与文件定
— 没有更多了 —
以下为对购买帮助不大的评价