从问题到程序:C/C++程序设计基础
作者 : 裘宗燕,李安邦 编著
出版日期 : 2023-04-28
ISBN : 978-7-111-72426-1
适用人群 : 计算机及相关专业本科生
定价 : 69.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 :
开本 : 16
原书名 :
原出版社:
属性分类: 教材
包含CD : 无CD
绝版 :
图书简介

本书以教授学生学习用计算机解决问题、学习程序设计的思想和方法为主旨,准确地讲解与程序设计相关的基本概念、基本原理和技术。本书注重循序渐进,分解编程和程序语言学习中的难点,通过大量实例详细描述了分析、思考、设计并解决这些实例,写出合理程序的过程。通过这种方式,帮助初学者逐步领会使用计算机、通过编程解决问题的正确途径。

图书特色

上架指导

计算机\程序设计

封底文字

程序设计作为信息社会的基本能力越来越受到重视。本书旨在帮助读者理解程序和计算,掌握程序设计的思想、方法和基本技术,学会一种实用的编程语言,为在信息社会中继续学习和工作打下坚实的基础。
本书特点
本书详细介绍程序设计语言与基本程序设计的各个方面,包括与计算机、程序和程序设计有关的概念,用计算机解决问题的思维方法以及程序设计的基本技术。
本书在内容选择、撰写方式和章节安排方面充分考虑了入门课程和自学者的需求,由易到难、稳步推进,以递进的方式讲解概念、解释细节、展示简单用例,再给出完整的实例分析和程序源代码,辅以对完整程序的分析和评价等,通过多种方式平滑学习曲线,便于读者学习。
本书贯彻“在做中学”的理念,致力于帮助读者通过正确的实践去深入理解计算思维和用计算机解决问题的方法和技术。通过大量的编程实例,反复展示从问题分析与分解到开发出正确程序的全过程,使读者理解程序设计的真谛。

作者简介
裘宗燕,北京大学数学学院信息科学系教授。长期从事计算机软件与理论、程序设计语言和符号计算方面的研究与教学工作。已出版多部著作和译著,包括《程序设计语言基础》(译著,北京大学出版社,1990)、《Mathematics数学软件系统的应用与程序设计》(编著,北京大学出版社,1994)、《C++程序设计语言(特别版)》(译著,机械工业出版社,2002)、《C++语言的设计和演化》(译著,机械工业出版社,2002)、《程序设计语言——概念和结构》(合译,机械工业出版社,2002)、《从问题到程序——程序设计与C语言引论》(编著,机械工业出版社,2005年第1版,2011年第2版)等。
李安邦,俄罗斯莫斯科大学数学-物理副博士,华中师范大学物理学院副教授,从事生物物理学研究,长期讲授大学物理课程和计算机程序设计相关课程。已发表科学论文多篇,并翻译出版《蛋白质物理》(科学出版社,2013)和《无处不在的巨分子》(科学出版社,2020)。

图书目录

第1章 程序设计和C/C++语言
1.1 程序和程序语言
1.1.1 程序与程序设计
1.1.2 程序设计语言及其发展
1.1.3 高级语言及其实现
1.1.4 具体语言和程序设计
1.2 C语言和C++语言简介
1.3 C/C++ 程序快速入门
1.3.1 程序的加工和执行
1.3.2 一个简单程序
1.3.3 源程序的格式
1.3.4 程序开发过程
1.3.5 程序除错
1.4 集成开发环境Dev-C++使用简介
1.4.1 源程序的编辑、保存、关闭和打开
1.4.2 源程序的加工和运行
本章讨论的重要概念
练习
第2章 数据与简单计算程序
2.1 计算机中的数值表示与存储
2.1.1 数制
2.1.2 数据存储单位
2.1.3 基本类型数据的表示
2.2 基本字符、名字表示、标识符和关键字
2.2.1 名字(标识符)的构成
2.2.2 关键字
2.3 常用数据类型
2.3.1 整数类型和整数的表示
2.3.2 实数类型和实数的表示
2.3.3 字符类型和字符的表示
2.4 运算符、表达式与计算
2.4.1 算术运算符
2.4.2 算术表达式
2.4.3 表达式的求值
2.4.4 计算和类型
2.5 数据输出与简单数据输出程序
2.5.1 C++ 的基本输出功能
*2.5.2 C语言中的输出函数printf
2.5.3 简单计算程序
2.6 数学函数及其使用
2.6.1 函数、函数调用
2.6.2 函数调用中的类型转换
2.6.3 inf与nan
2.7 Dev-C++中的辅助编辑功能
2.7.1 插入头部注释和标准代码模块
2.7.2 其它编辑功能
本章讨论的重要概念
练习
第3章 变量和控制结构
3.1 语句、复合结构和顺序程序
3.2 变量——概念、定义和使用
3.2.1 变量的定义
3.2.2 变量的使用:赋值与取值
3.3 数据输入
3.4 关系表达式、逻辑表达式和条件表达式
3.4.1 关系运算符与关系表达式
3.4.2 逻辑运算符与逻辑表达式
3.4.3 条件表达式
3.5 语句与控制结构
3.6 条件语句
3.6.1 if 语句
3.6.2 if 语句的嵌套
3.6.3 if语句的优化
3.6.4 使用if语句的技术
3.6.5 开关语句
3.7 循环语句
3.7.1 while 语句
3.7.2 do-while循环结构
3.7.3 for语句
3.7.4 多重循环
3.7.5 与循环有关的控制语句
3.7.5 死循环
3.8 程序动态除错方法(一)
3.8.1 动态运行错误的分析与确认
3.8.2 排除程序的动态运行错误
3.8.3 源代码的可读性
本章讨论的重要概念
练习题
第4章 基本程序设计技术
4.1 循环程序设计
4.1.1 输出一系列完全平方数
4.1.2 整数范围与浮点误差
4.1.3 迭代和逼近
4.1.4 通项计算
4.1.5 循环中的几种变量
4.2 常用标准库函数
4.2.1 库函数
4.2.2 程序计时
4.2.3 随机数生成函数
4.3 交互式程序设计中的输入输出
4.3.1 通过计数器控制循环输入
4.3.2 用结束标志控制的循环输入
4.3.3 输入函数的返回值及其作用
4.3.4 输入输出流,字符串流与文件流
4.3.5 字符输入输出与字符相关函数
4.4 程序设计实例
4.4.1 编程实例1:一个简单猜数游戏
4.4.2 编程实例2:一个简单计算器
4.4.3 编程实例3:文件中的单词计数
*4.4.4 编程实例4:图形界面程序
本章讨论的重要概念
练习
第5章 函数与程序结构
5.1 函数的定义与调用
5.1.1 对自定义函数的需求
5.1.2 函数定义
5.1.3 函数的调用
5.1.4 函数和程序
5.1.5 局部变量的作用域和生存期
5.1.6 函数调用的参数传递机制
5.2 程序的函数分解
5.2.1 程序的函数分解
5.2.2 函数封装和两种视角
5.2.3 函数的测试
5.2.4 自定义函数示例
5.3 循环与递归
5.3.1 阶乘和乘幂(循环,递归)
5.3.2 Fibonacci数列
5.3.3 最大公约数
5.3.4 河内塔(梵塔)问题
5.4 外部变量与静态局部变量
5.4.1 外部变量
5.4.2 变量定义的嵌套
5.4.3 静态局部变量
5.4.4 外部变量与静态局部变量的初始化
*5.4.5 名字空间
5.5 声明与定义
5.5.1 先定义后使用
5.5.2 定义与声明
5.5.3 函数原型声明
5.5.4 外部变量的声明
5.5.5 函数分解程序实例
5.5.6 多文件开发实例
5.6 预处理
5.6.1文件包含命令
5.6.2 宏定义与宏替换
*5.6.3 条件编译命令
5.7 程序动态除错方法(二)
5.7.1、开始调试(Debug)
5.7.2、调试过程中的操作
5.7.3、调试与排错
本章讨论的重要概念
练习
第6章 数组
6.1 数组的概念、定义和使用
6.1.1 数组变量定义
6.1.2 数组的使用
6.1.3 数组的初始化
*6.1.4 变长数组
6.2 使用数组的程序实例
6.2.1 从字符到下标
6.2.2 筛法求质数
6.2.3 约瑟夫问题
6.2.4 多项式求值
6.3 数组作为函数参数
6.3.1 函数的数组参数
6.3.2 修改实参数组的元素
6.3.3 定义数组的考虑
6.4 两维和多维数组
6.4.1 多维数组的初始化
6.4.2 多维数组的使用和表示
6.4.3 多维数组作为函数的参数
6.5 字符数组与字符串
6.5.1 字符数组
6.5.2 字符串
6.5.3 字符串的输出与输入
6.5.4 字符串程序实例
6.5.5 标准库的字符串处理函数
6.5.6 从文件读取字符串程序实例
6.6 编程实例
6.6.1 拼手气发红包
6.6.2 学生成绩统计分析
6.6.3 统计源程序中的关键字
本章讨论的重要概念
练习
第7章 指针
7.1 地址与指针
7.2 指针变量的定义和使用
7.2.1 指针变量的定义
7.2.2 指针操作
7.2.3 指针作为函数的参数
7.2.4 指针作为函数的返回值
7.2.5 与指针有关的一些问题
7.3 指针与数组
7.3.1 指向数组元素的指针
7.3.2 数组写法与指针写法
7.3.3 数组参数与指针
*7.3.4 多维数组作为参数的通用函数
7.3.5 字符指针与字符串
7.4 指针数组
7.4.1 字符指针数组
7.4.2 指针数组与两维数组
* 7.4.3 命令行参数及其处理
7.5 动态存储管理
7.5.1 为什么需要动态存储管理
7.5.2 动态存储管理机制
7.5.3 动态存储分配程序实例
7.6 指向函数的指针
7.6.1 作用和定义
7.6.2 数值积分函数
7.6.3 遍历数组
本章讨论的重要概念
练习
第8章 结构体和其它数据机制
8.1 定义类型
8.1.1 简单类型定义
8.1.2 定义数组类型
8.1.3 定义函数指针类型
8.2 结构体(struct)
8.2.1 结构体类型定义
8.2.2 结构体变量定义和初始化
8.2.3 结构体变量的使用
8.2.4 结构体与函数
8.2.5 结构体、数组与指针
8.3 结构体编程实例
8.3.1 复数的表示和处理
8.3.2 学生成绩管理系统
8.4 链接结构体(自引用结构体)
8.4.1 链接结构体
8.4.2 自引用结构体的定义
8.4.3 程序实现
8.4.4 数据与查找
本章讨论的重要概念
练习
附录
附录1 C和C++ 语言运算符表
附录2 ANSI C关键字列表
附录3 C和C++语言常用功能速查
附录4 命名规范
附录5 编程形式规范
进一步学习的建议
参考文献

教学资源推荐
作者: 郑阿奇 梁敬东 主编 朱毅华 时跃华 赵青松 编著
作者: 周纯杰 何顶新 周凯波 彭刚 张惕远 编著
参考读物推荐
作者: David Flanagan
作者: 杨文海 鲁凤芝 何平 等著