实用技能型教材 > 程序设计类

C语言程序设计

书号:9787113264949 套系名称:普通高等教育“互联网+”“十三五”规划教材

作者:虞歌 邵艳玲 出版日期:2020-03-01

定价:45.00 页码 / 开本:248 /16

策划编辑:刘丽丽 责任编辑:刘丽丽 彭立辉

适用专业:计算机类 适用层次:本科

最新印刷时间:2022-08-24

资源下载
教学课件 教学素材(暂无)
习题答案(暂无) 教学案例(暂无)
教学设计(暂无) 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  • 本书是 C 语言程序设计的基础教材,以崭新的思路进行设计和编排。全书共分 9 章,内容包
    括程序设计概述,基本程序设计,程序的控制结构,函数,数组,指针,字符串,结构、联合和
    链表以及文件,内容全面,通俗易懂。
    本书以程序设计零起点读者为主要对象,以培养程序设计能力为目标,通过大量的例题,重
    点讲解程序设计思想和方法,力图将 C 语言基础知识介绍和程序设计能力培养完美结合,培养读
    者对程序设计的兴趣,提高读者程序设计水平。
    本书适合作为普通高等学校程序设计课程的教材,也可供程序员和编程爱好者参考使用
  • 随着信息产业的迅速发展,软件人才的需求量越来越大。程序设计是软件人才必备的基础知
    识和技能。 
    程序设计基础是一门理论与实践密切相关、以培养学生程序设计能力为目标的课程。如何消
    除学生学习程序设计的畏难情绪,使学生顺利进入程序设计的大门,逐步掌握程序设计思想和方
    法,提高实践动手能力,是本课程教学的难题。 
    程序设计既是科学,也是艺术。学习程序设计是一件非常辛苦的事情,要有非常强的耐心和
    实践精神,需要花费大量的时间,不可能一蹴而就,必须从某个起点开始循序渐进。 
    本书就是一个很好的起点。本书以程序设计零起点读者为主要对象,采用 C 语言作为程序
    设计的描述语言。C 语言是目前业界广泛使用的程序设计语言,编者确信选用 C 语言作为程序设
    计基础课程的教学语言是正确的选择。在教学实践中,编者感到 C 语言简洁、灵活、高效,能
    够带给软件开发者无尽的想象空间,同时也深深感到讲授 C 语言过程中面临的困难和挑战。 
    尽管目前有关学习 C 语言的书籍很多,但学习 C 语言仍然让大多数初学者心存畏惧。编者
    一直从事程序设计方面的教学和科研工作,主讲过多门程序设计课程,积累了丰富的教学经验。
    在本书编写过程中,编者结合自己学习和使用 C 语言的经验和感悟,以程序设计为主线,通过
    例题,简洁通俗地讲解程序设计思想和方法,并穿插介绍相关的语言知识,循序渐进地培养学生
    的程序设计能力。本书对那些渴望掌握 C 语言而又心存畏惧的初学者是一个很好的选择。 
    教学改革的重点之一,就是要抓学生实践动手能力的培养,学生的实践能力是实现就业的决
    定因素,而就业率又是体现教育质量的重要指标。在新工科建设的大背景下,我们实施了程序设
    计课程的教学改革,在教学内容、教学方法、教学手段和考核方式上,基本形成了比较完整的体
    系,目的就是培养学生的程序设计能力,适应社会对软件人才培养的需求。本书源于教学改革和
    教学实践,体现了程序设计教学改革的成果。 
    本书程序的编译和运行环境为 Dev-C++,并配有 iStudy 通用实践评价平台,可实现在线学
    习、练习、测评与考务管理。 
    读者要获取本书的相关资源,请访问中国铁道出版社有限公司网站 http://www.tdpress.com/51eds/。 
    本书由虞歌、邵艳玲编著,王鹏远、郭洪涛老师提供了许多素材、资源。在本书编写过程中,
    参考了部分图书资料和网站资料,在此向其作者表示感谢。本书的出版得到了中国铁道出版社有
    限公司的大力支持,在此表示衷心的感谢。 
    由于时间仓促,编者水平和经验有限,书中难免存在疏漏与不妥之处,恳请读者提出宝贵意
    见和建议,使本书日臻完善。编者联系方式:yuge@hznu.edu.cn。
  • 第 1 章 程序设计概述 ............................1 
    1.1 计算机系统 .......................................... 1 
    1.1.1 计算机硬件系统 ........................... 1 
    1.1.2 计算机软件系统 ........................... 2 
    1.1.3 计算机中的信息表示 ................... 3 
    1.2 程序设计基础 ...................................... 5 
    1.2.1 程序 .............................................. 5 
    1.2.2 程序设计语言............................... 5 
    1.2.3 程序设计 ...................................... 6 
    1.3 C 语言的发展历史与特点 ................... 7 
    1.3.1 C 语言的历史 ............................... 7 
    1.3.2 C 语言的特点 ............................... 8 
    1.4 C 程序开发........................................... 9 
    1.4.1 基本术语 ...................................... 9 
    1.4.2 C 程序的开发过程........................ 9 
    1.5 初识 C 程序........................................ 10 
    1.5.1 第一个 C 程序 ............................ 10 
    1.5.2 华氏温度转换为摄氏温度的程序 ................................. 11 
    1.5.3 两个整数的加、减、乘、除程序 ................................. 12 
    1.5.4 计算圆面积的程序 ..................... 13 
    思考与练习................................................. 14 
    第 2 章 基本程序设计 .......................... 15 
    2.1 标识符及其命名规则......................... 15 
    2.1.1 标识符 ........................................ 15 
    2.1.2 关键字 ........................................ 16 
    2.2 变量和常量 ........................................ 16 
    2.2.1 变量和变量声明 ......................... 16 
    2.2.2 常量和常量声明 ......................... 17 
    2.3 数值数据类型和运算符..................... 17 
    2.3.1 数据类型的基本概念 ................. 17 
    2.3.2 整数类型..................................... 17 
    2.3.3 浮点数类型................................. 19 
    2.3.4 运算符和表达式的 
     基本概念 ..................................... 20 
    2.3.5 算术运算符和算术表达式.............. 21 
    2.3.6 赋值运算符和赋值表达式........... 22 
    2.3.7 自增和自减运算符 ..................... 24 
    2.4 字符类型............................................ 25 
    2.5 布尔类型和运算符 ............................ 27 
    2.5.1 布尔类型..................................... 27 
    2.5.2 关系运算符和关系表达式.......... 28 
    2.5.3 逻辑运算符和逻辑表达式.......... 29 
    2.5.4 条件运算符和条件表达式.......... 30 
    2.6 枚举类型............................................ 32 
    2.7 其他常用运算符 ................................ 33 
    2.7.1 位运算符..................................... 33 
    2.7.2 逗号运算符和逗号表达式.......... 35 
    2.7.3 长度运算符................................. 36 
    2.7.4 运算符小结................................. 36 
    2.8 类型之间的关系 .................................. 37 
    2.8.1 隐式(自动)类型转换.............. 37 
    2.8.2 显式(强制)类型转换.............. 38 
    2.8.3 类型定义..................................... 39 
    2.9 语句.................................................... 39 
    2.9.1 语句的概念................................. 39 
    2.9.2 简单语句..................................... 39 
    2.10 使用标准库 ...................................... 40 
    2.10.1 格式化输入/输出函数 .............. 40 
    2.10.2 常用数学函数 ........................... 45 
    2.10.3 常用字符处理函数 ................... 48 
    2.11 程序设计错误 .................................. 49 
    2.11.1 语法错误................................... 49 
    2.11.2 运行时错误............................... 50 
    2.11.3 逻辑错误................................... 50 
    2.11.4 测试和调试............................... 50 
    2.12 程序设计风格 .................................. 51 
    2.12.1 适当的注释............................... 51 
    2.12.2 命名习惯................................... 51 
    2.12.3 程序编排................................... 52 
    思考与练习................................................. 53 
    第 3 章 程序的控制结构....................... 56 
    3.1 单入口、单出口的控制结构 ............. 56 
    3.2 分支结构............................................ 57 
    3.2.1 if 语句 ......................................... 57 
    3.2.2 switch 语句.................................. 61 
    3.3 循环结构............................................ 66 
    3.3.1 while 语句 ................................... 66 
    3.3.2 do…while 语句............................ 70 
    3.3.3 for 语句 ....................................... 71 
    3.3.4 循环的使用................................. 74 
    3.3.5 退出循环 .................................... 74 
    3.3.6 多重循环 .................................... 76 
    思考与练习................................................. 80 
    第 4 章 函数 ........................................ 82 
    4.1 函数的定义和调用 ............................ 82 
    4.2 函数声明............................................ 89 
    4.3 函数设计的基本规则......................... 91 
    4.3.1 函数头的设计规则 ..................... 91 
    4.3.2 函数体的设计规则 ..................... 92 
    4.4 递归函数............................................ 92 
    4.4.1 递归的概念................................. 92 
    4.4.2 运用递归求解问题 ..................... 94 
    4.4.3 递归和循环................................. 97 
    4.5 变量的作用域 .................................. 100 
    4.5.1 局部变量和全局变量 ............... 100 
    4.5.2 动态变量和静态变量 ............... 101 
    4.5.3 作用域和生命期 ....................... 102 
    4.6 预处理指令 ...................................... 103 
    4.6.1 预处理指令的概念 ................... 103 
    4.6.2 宏定义 ...................................... 104 
    4.6.3 条件编译................................... 106 
    4.6.4 文件包含................................... 107 
    4.7 内联函数.......................................... 107 
    4.8 终止程序.......................................... 108 
    4.9 用计算机生成随机数....................... 109 
    思考与练习............................................... 113 
    第 5 章 数组 ········································· 117 
    5.1 一维数组.......................................... 117 
    5.1.1 声明和处理一维数组 ............... 117 
    5.1.2 使用一维数组编写程序............ 120 
    5.1.3 一维数组和函数 ....................... 125 
    5.2 二维数组.......................................... 128 
    5.2.1 声明和处理二维数组 ............... 128 
    5.2.2 使用二维数组编写程序............ 131 
    5.2.3 二维数组和函数 ....................... 135 
    5.3 排序和查找 ...................................... 137 
    5.3.1 排序 .......................................... 137 
    5.3.2 查找 .......................................... 141 
    5.4 可变长数组 ...................................... 145 
    思考与练习............................................... 146 
    第 6 章 指针 ·········································149 
    6.1 指针的基本概念 .............................. 149 
    6.1.1 指针的定义............................... 149 
    6.1.2 声明指针变量........................... 150 
    6.1.3 取地址运算符和解引用运算符 ....................................... 150 
    6.1.4 指向指针的指针 ....................... 152 
    6.2 指针赋值.......................................... 153 
    6.3 通用指针.......................................... 155 
    6.4 使用 const 修饰指针 ........................ 157 
    6.5 指针和函数 ...................................... 158 
    6.5.1 指针作为函数的参数 ............... 158 
    6.5.2 指针作为函数的返回值............ 160 
    6.5.3 指向函数的指针 ....................... 162 
    6.5.4 qsort()函数和 bsearch()函数 ...... 165 
    6.6 指针和数组 ...................................... 168 
    6.6.1 指针的运算............................... 168 
    6.6.2 指针和一维数组 ....................... 171 
    6.6.3 指针和二维数组 ....................... 173 
    6.6.4 指针和可变长数组 ................... 175 
    6.7 动态存储分配 .................................. 176 
    思考与练习............................................... 179 
    第 7 章 字符串······································182 
    7.1 字符串的基本概念 .......................... 182 
    7.2 字符串的基本操作 .......................... 185 
    7.3 常用字符串处理函数....................... 188 
    思考与练习............................................... 192 
    第 8 章 结构、联合和链表·····················195 
    8.1 结构 ................................................. 195 
    8.1.1 结构类型和结构变量 ............... 195 
    8.1.2 结构和指针............................... 199 
    8.1.3 结构和数组............................... 200 
    8.1.4 结构和函数............................... 206 
    8.1.5 结构中的位域........................... 208 
    8.2 联合 ................................................. 209 
    8.3 链表 ................................................. 211 
    8.3.1 链表的概念............................... 211 
    8.3.2 链表的基本操作 ....................... 212 
    8.3.3 有序链表................................... 215 
    思考与练习............................................... 217 
    第 9 章 文件 ·········································221 
    9.1 文件的基本概念 .............................. 221 
    9.1.1 流和文件指针........................... 221 
    9.1.2 文本文件和二进制文件............ 222 
    9.1.3 文件缓冲区............................... 222 
    9.2 文件操作.......................................... 223 
    9.2.1 打开文件................................... 223 
    9.2.2 关闭文件................................... 224 
    9.2.3 设置文件缓冲区 ....................... 224 
    9.2.4 临时文件................................... 225 
    9.2.5 删除文件和重命名文件............ 225 
    9.2.6 检测文件末尾和错误条件........ 226 
    9.3 文件输入/输出 ................................. 226 
    9.3.1 格式化输入/输出 ...................... 226 
    9.3.2 字符输入/输出.......................... 228 
    9.3.3 行输入/输出.............................. 229 
    9.3.4 块输入/输出.............................. 230 
    9.4 文件定位.......................................... 232 
    思考与练习............................................... 235
    参考文献..........
  • 杭州师范大学
    
  • 1.本书是杭州师范学院研发的iStudy通用实践评价平台——计算机基础课程群大规模在线共建共享云平台的配套教材。该平台注重自助服务:课程开放、题库开放、阅卷开放;共建共享:课程共享、题库共享、资源共享;实践为重:课内实验、课后作业、在线考试。 
    
    2.全书以程序设计零起点读者为主要对象,以培养程序设计能力为目标,简洁通俗,循序渐进,通过例题,重点讲解程序设计思想和方法,力图将C语言基础知识介绍和程序设计能力培养完美结合,培养读者对程序设计的兴趣,提高读者程序设计能力水平。