计算机类教材 > 算法与程序设计

C程序设计与应用

书号:9787113307639 套系名称:普通高等院校应用型人才培养“十四五”规划教材

作者:王振杰 王彩虹 出版日期:2024-02-01

定价:58.00 页码 / 开本: /16

策划编辑:曹莉群 责任编辑:贾星 许璐

适用专业:计算机基础教育 适用层次:高等教育

最新印刷时间:2024-02-01

资源下载
教学课件(暂无) 教学素材(暂无)
习题答案(暂无) 教学案例(暂无)
教学设计(暂无) 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  • 本书按照普通高等院校C语言课程教学大纲编写,详细地论述了C语言程序设计的基本原理和方法。全书分为三部分:C语言基础、高级程序设计和工程应用开发。C语言基础部分包括算法表示、顺序结构、选择结构、循环结构程序设计基础;高级程序设计部分详细阐释了数组和构造数据类型、函数、指针的程序设计知识;工程应用开发部分结合动态内存管理、正则表达式和字符串模式匹配、文件操作及图像处理,列举了各种综合应用开发。
    
    本书为校企合作编写,配套资源丰富,体现了多学科、新一代信息技术的融合,内容由浅入深,理论实践并重,案例翔实丰富,每章后面都附有结合实践应用的上机实训。
    
    本书适合作为普通高等院校C语言程序设计课程的教材,也可作为广大C语言程序爱好者的参考书。
    
    
    
    
    ?
  •        根据TIOBE公司每月发布一次的世界编程语言排行榜,可以看到C/C++系列语言长期占据排行榜前三位。面向过程及面向对象的C系列语言,其用户占比超过30%,在各编程语言中处于领先地位。这主要归功于这些语言在大数据、人工智能、物联网、网络通信、自动化、新能源汽车等智能制造领域和嵌入式开发方面的广泛应用。
           C语言是普通高等学校理工科类学生非常有必要掌握的一门编程语言,甚至部分金融科技、生物信息、医疗诊断、艺术舞台、会计、大数据等和信息技术融合的专业学生也有必要了解。基于这个原因,根据高等院校C语言课程教学大纲,我们组织了在不同领域耕耘多年的一线软件科研人员和高校教师共同编写此书,内容由浅入深,分为三大部分(第一部分C语言基础,第二部分高级程序设计,第三部分工程应用开发),以满足不同领域、不同层次的读者了解和学习C语言的需求。同时,本书试图挣脱为介绍知识点而设计纯知识点案例,或者偏好于纯数学方面案例的传统方式,而是引入了涉及实际生活和行业相关的应用案例,更突出实用性。全书共分为9章(其中带有“*”的章或小节为选学内容),具体内容如下:
           第一部分包括第1~3章:第1章程序算法和C语言,论述了C语言的开发环境、C程序的组成及函数结构、数据结构与程序算法表示等基础知识;第2章顺序结构程序设计,包括数制与编码、基本数据类型、运算符与表达式、数据输入与输出的相关知识;第3章选择与循环结构程序设计,论述了条件和判断、if和switch选择结构、while和for循环结构的程序设计知识。
           第二部分包括第4~6章:第4章数组和构造数据类型,包括数值数组、字符数组,用户自定义的结构体、共用体、枚举以及新类型名定义;第5章函数模块化程序设计,列举了基本排序和查找函数、排序函数的递归调用,以及内部函数和外部函数、局部变量和全局变量的特性;第6章指针变量类型及应用,包括指针变量、数组指针、字符指针、函数指针、结构体指针的应用。
           第三部分包括第7~9章:第7章动态内存管理及应用,涉及动态内存分配,以及顺序和链式线性表应用;第8章为正则表达式和字符串模式匹配应用;第9章包括文件操作及处理、图形图像处理、嵌入式控制的图形图像仿真等应用。
           本书主要特色如下:
           (1)校企合作编写。本书由上海出版印刷高等专科学校和具有移动通信、互联网、智能制造和自动控制等行业的软件开发与技术管理背景的企业科研人员合作编写,所选案例突出实用性、多学科性和工程应用性。每个章节都有结合实践应用的上机实训。
           (2)配套资源丰富。本书提供PPT课件、微视频、教材中的程序及上机源程序等丰富的配套资源,读者可在中国铁道出版社教育资源平台(http://www.tdpress.com/51eds/)下载使用。
           (3)与时俱进,体现多学科、新一代信息技术的融合。拓展了数据结构、智能终端UI交互、数字图像处理、计算机图形仿真、嵌入式技术等学科的入门开发基础。
           本书由王振杰、王彩虹主编,周东仿、董火明、王成参与编写。具体编写分工如下:王振杰负责设计和编写全部章节及案例,并负责统稿与定稿;王彩虹负责视频录制,并编写第3章的部分内容;周东仿编写第7章和第9章的部分内容;董火明参与讨论全书架构,并提供部分案例;王成提供部分案例;王世博对书中部分案例进行了测试和改进。
           本书在编写和出版过程中得到了上海出版印刷高等专科学校各位领导和同仁的大力支持,在此表示感谢,同时还要特别感谢上海互说信息科技有限公司、上海数字智能化系统工程有限公司、上海领晟制冷科技有限公司的鼎力支持。本书在编写过程中,参考了大量书籍和资料,在此对这些资料的作者表示衷心的感谢。
           由于编者水平有限,书中难免存在疏漏和不足之处,恳请广大读者不吝指正,以便日后加以改进。
           编者
           2023年11月
    
    ?
  • 第一部分 C语言基础
    第1章 程序算法和C语言
    1.1 C语言概述
    1.1.1 计算机信息处理的发展
    1.1.2 程序设计语言发展
    1.1.3 C语言的发展及特点
    1.2 建立和运行C程序
    1.2.1 简单的C程序
    1.2.2 编程工具分类
    1.2.3 Windows开发环境
    1.2.4 Linux开发环境
    1.2.5 运行C程序的步骤
    1.3 C程序组成及函数结构
    1.3.1 C程序的组成
    1.3.2 函数结构
    1.4 数据结构和算法
    1.4.1 数据结构
    1.4.2 算法及效率度量
    1.5 程序算法表示
    1.5.1 自然语言表示
    1.5.2 流程图表示
    1.5.3 伪代码表示
    1.5.4 编程语言表示
    1.6 程序设计方法和思维
    1.6.1 层次化方法
    1.6.2 工程性思维
    1.6.3 规范化原则
    上机实训
    第2章 顺序结构程序设计
    2.1 数制和信息编码
    2.1.1 数制及转换
    2.1.2 信息存储单位
    2.1.3 常用信息编码
    2.2 基本数据类型
    2.2.1 常量和变量
    2.2.2 整型数据
    2.2.3 字符型数据
    2.2.4 浮点型数据
    2.3 运算符和表达式
    2.3.1 C运算符及特性
    2.3.2 算术运算符
    *2.3.3 位运算符和逗号运算符
    2.3.4 赋值运算符
    2.3.5 类型转换和长度运算
    2.4 数据输入和输出
    2.4.1 格式化输出函数printf
    2.4.2 格式化输入函数scanf
    2.4.3 字符输入输出函数getchar/putchar
    上机实训
    第3章 选择与循环结构程序设计
    3.1 条件和判断
    3.1.1 关系运算符和表达式
    3.1.2 逻辑运算符和表达式
    3.1.3 条件运算符和表达式
    3.2 if选择结构
    3.2.1 if语句
    3.2.2 if选择结构的嵌套
    3.3 switch选择结构
    3.4 while循环结构
    3.4.1 while语句
    3.4.2 dowhile语句
    3.5 for循环结构
    3.6 循环和选择的嵌套
    3.7 循环状态改变
    3.7.1 break语句
    3.7.2 continue语句
    上机实训
    第二部分 高级程序设计
    第4章 数组和构造数据类型
    4.1 数值数组
    4.1.1 一维数组
    4.1.2 一维数组的数值排序应用
    4.1.3 二维数组及应用
    4.1.4 多维数组的表示
    4.2 字符数组
    4.2.1 字符数组和数值数组的区别
    4.2.2 一维和二维字符数组应用举例
    4.2.3 字符串和字符数组
    4.2.4 字符串处理函数及应用
    4.3 构造数据类型
    4.3.1 结构体struct
    *4.3.2 共用体union
    *4.3.3 枚举类型enum
    *4.3.4 新类型名定义typedef
    上机实训
    第5章 函数模块化程序设计
    5.1 函数定义和调用
    5.1.1 函数定义和声明
    5.1.2 函数调用和参数传递
    5.1.3 函数的数组参数传递
    *5.1.4 函数的宏定义参数传递
    5.2 基本排序和查找函数
    5.2.1 数值和字符串排序函数
    5.2.2 顺序和折半查找函数
    5.3 函数和变量的特性
    *5.3.1 内部函数和外部函数
    5.3.2 局部变量和全局变量
    5.4函数的递归调用
    5.4.1 递归函数的引入
    *5.4.2 快速排序函数的递归调用
    *5.4.3 归并排序函数的递归调用
    上机实训
    第6章 指针变量类型及应用
    6.1 指针变量
    6.1.1 地址与指针
    6.1.2 指针变量定义和引用
    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 结构体指针作函数参数和返回值
    上机实训
    第三部 分工程应用开发
    第7章 动态内存管理及应用
    7.1 动态内存分配
    7.1.1 内存分配和处理
    7.1.2 静态链表和动态链表
    *7.2 顺序和链式线性表应用
    7.2.1 顺序线性表管理
    7.2.2 链式线性表管理
    上机实训
    *第8章 正则表达式和字符串模式匹配应用
    8.1 正则表达式概述
    8.2 字符串模式匹配及应用
    8.2.1 输入函数scanf的%\[\]格式控制符
    8.2.2 Linux正则表达式库函数及应用
    上机实训
    第9章 文件操作及图像处理应用
    9.1 文件操作及处理
    9.1.1 文件操作概述
    9.1.2 文件处理及应用
    9.2 图形图像处理
    9.2.1 图形图像处理概述
    *9.2.2 位图图像处理及应用
    9.3 嵌入式控制的图形图像仿真
    9.3.1 嵌入式技术概述
    *9.3.2 嵌入式控制的仿真开发
    上机实训
    附录
    附录A C语言中的关键字
    附录B C语言常用字符与ASCII代码对照表
    附录C 运算符优先级和结合性
    附录D C语言编码规范参考
    附录E C语言库函数
    参考文献
    ?
  • 王振杰,上海出版印刷高等专科学校教研室主任,主要研究方向是语义Web、图形图像处理、计算机网络和移动通信,曾长期在Ericsson、ZTE等通讯公司从事GSM、WCDMA等无线通信系统软件、核心网IMS系统的研发。2015年进入教育系统,主要讲授C语言程序设计、数据结构(C语言)、PHP技术与应用、计算机网络技术与应用、操作系统管理及应用等课程。指导学生在上海市计算机二级(C语言) 、蓝桥杯全国软件和信息技术专业大赛(C/C++程序设计)、“互联网+”大学生创新创业大赛、1+X Web前端开发职业技能证书等方面屡获奖项。
    
    王彩虹,上海出版印刷高等专科学校讲师,主要研究非线性随机动力学控制、神经网络模型、人体稳定性控制。主要讲授课程为C语言程序设计、数据统计分析实务、人工智能概论、自动化控制、三维成图技术等。曾在信息技术公司工作半年,参与和主持国家项目2项,为多家企业提供技术服务。发表SCI论文3篇,EI论文2篇。
    
    
    ?
  • (1)校企合作编写。本书由上海出版印刷高等专科学校和具有移动通信、互联网、智能制造和自动控制等行业的软件开发与技术管理背景的企业科研人员合作编写,所选案例突出实用性、多学科性和工程应用性。每个章节都有结合实践应用的上机实训。
    (2)配套资源丰富。本书提供PPT课件、微视频、教材中的程序及上机源程序等丰富的配套资源。
    (3)与时俱进,体现多学科、新一代信息技术的融合。拓展了数据结构、智能终端UI交互、数字图像处理、计算机图形仿真、嵌入式技术等学科的入门开发基础。?