• C语言程序设计项目化教程
21年品牌 40万+商家 超1.5亿件商品

C语言程序设计项目化教程

全新正版 急速发货

17.2 6.1折 28 全新

库存7件

天津武清
认证卖家担保交易快速发货售后保障

作者屠莉、周建林、刘萍、苏春芳、坎香

出版社清华大学出版社

ISBN9787302454960

出版时间2017-04

装帧平装

开本16开

定价28元

货号25064238

上书时间2024-12-27

当科图书专营店

五年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
前言
序言

“程序设计基础”(C语言程序设计)是高职软件专业一门重要的专业必修课程,课程实施的目标为: 使学生掌握基本的编程思想和模块化的编程思路,能够使用C语言进行程序设计和软件开发; 同时培养学生养成良好的学习习惯和学习兴趣,培养团队协作和自主学习能力,为后续其他专业课程的学习打下良好的学习基础。传统的学科式课程知识体系不适合当前的职业教育。高职学生普遍抽象逻辑思维能力较弱,却具有较强的形象思维能力,适合“在做中学”,不适应以知识逻辑为中心的学科课程学习。以知识点为中心的授课,各个知识点分散,难以串联起来,缺少完整性,学生学完后难以应用。而且琐碎枯燥的知识难以引起学生的学习兴趣。因此,作者在高职软件专业教学中,一贯坚持“项目引导、任务驱动”的教学模式,旨在使学生不但学会知识,更要学会应用知识完成实际项目。编者将课程内容重新设计,基于工作过程系统化的项目化教材的设计和编写思路,以“学生成绩管理系统”作为教学项目,将项目划分为六大模块和若干任务,将C语言的所有相关知识点融入对应的模块任务中。在教学项目的分解和设计中,采用的是将模块化编程的思路贯穿整个项目的构建过程中。将函数的概念提前到项目初级阶段,提前灌输模块化的编程思路,将函数的设计与调用贯穿在整个教学过程中,培养学生模块化程序设计思路。先搭建项目骨架,再逐个填充项目模块,完成数组实现的项目版本1。再通过用指针结构体重构项目版本2,以及用文件继续重构项目版本3。通过项目的不断重构,可以让学生反复学习和理解函数的定义和使用,即模块化的编程思路,同时也可以让学生通过一个项目的3个版本的不断学习和实践完成数组、指针结构体、文件等难点的理解和掌握,并能够进行项目化的编程,提高应用能力。本教材基于革新的教学方案,按项目开发流程组织各模块,并将任务组织在相关的模块中。模块一: 学生成绩管理系统需求分析和设计,使学生对课程的能力目标有一个总体的认识; 模块二: 项目的数据定义及运算,对系统所使用到的数据类型和相关运算,以及相关设计规范,进行阐述,引入标识符、数据类型和运算符的概念; 模块三: 项目用户菜单设计,进行逐步递进的设计与实现,引入输入/输出、选择和循环控制的概念; 模块四: 学生成绩管理,实现班级学生成绩的添加、浏览、统计、排序和查询,引入函数的设计和调用、数组,及相关的排序等算法; 模块五: 项目重构1——结构体和指针,用结构体重构系统的数据类型,引入结构体和指针的概念; 模块六: 项目重构2——文件,用文件实现系统的输入/输出,引入文件的概念。各模块中,包含实现此模块所需的所有逻辑相关的任务,在各任务中均包含: 此任务的任务描述与分析; 相关知识与技能; 任务实施(自然算法、流程图、数据结构、编码算法、具体实现、运行分析); 拓展训练(对一些经典的算法,如穷举、迭代、递归等,进行分析,要求学生自行完成,以拓展学生的算法设计能力)。本书紧密结合项目化课程教学改革,既满足了对项目整体能力的训练要求,又兼顾对基础理论和算法的学习要求。本书项目引导、任务驱动,通过仿真项目开发流程,设计逻辑相关的模块和任务。通过将项目划分为六大模块,17个任务。重构程序设计的理论知识,寓理论知识于项目任务实践中,实现“教、学、做”一体化。本书的主要创作团队为课程组的屠莉、周建林、刘萍、苏春芳、坎香。包芳对本书进行了细致的总审。当然也离不开家人和其他领导同事的关心与支持,在此一并表示真挚的感谢!由于编者水平有限,书中难免有不足之处,希望广大读者批评指正,并提出宝贵的意见和建议。(编者邮箱: yzutuli@163.com)

编者2017年2月

导语摘要
本书以计算机相关专业岗位需求和行业编程规范为基础,以“学生成绩管理系统”作为教学项目,基于“项目导入、任务驱动”的教学模式,以工作过程系统化的项目化教材的设计思路来组织内容。本书主要内容包括C语言的基本语法、数据类型、程序基本结构、算法流程图,程序编码、调试及运行机制、数组、函数、结构体及指针、文件等。本书将项目划分为3个版本: 先搭建项目骨架,再逐个填充项目模块,完成基于数组实现的项目版本1; 基于指针结构体重构的项目版本2; 基于文件继续重构的项目版本3。将C语言所有相关知识点融入对应版本的模块任务中。引导读者通过一个项目的3个版本的不断重构学习和实践的过程中完成函数、数组、指针结构体、文件等难点的理解,并掌握模块化编程思路,提高程序开发能力。本书的特点是基于软件开发流程、由易到难、不断重构项目的过程中让读者在“做中学,学中做”,逐步掌握C语言程序设计知识和开发技能。本书可作为本科院校、高职高专院校计算机相关专业的教材,也可作为广大学习C语言程序设计与编程开发人员的参考用书。

目录

目录


 


模块一学生成绩管理系统需求分析和设计


 


任务1-1:
项目需求分析


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


任务1-2:
项目设计


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


任务1-3:
项目开发环境搭建


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


模块总结


 


作业习题


 


模块二项目的数据定义及运算


 


任务2-1:
数据定义


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


任务2-2:
数据运算


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


模块总结


 


作业习题


 


模块三项目用户菜单设计


 


任务3-1:
主菜单显示


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


任务3-2:
主菜单选择


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


任务3-3:
子菜单选择


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


任务3-4:
菜单循环显示


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


模块总结


 


作业习题


 


模块四学生成绩管理


 


任务4-1:
学生成绩添加和浏览


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


任务4-2:
学生成绩统计


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


任务4-3:
学生成绩排序


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


任务4-4:
学生成绩查询


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


模块总结


 


作业习题


 


模块五项目重构1——结构体和指针


 


任务5-1:
项目结构体重构


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


任务5-2:
项目指针重构


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


模块总结


 


作业习题


 


模块六项目重构2——文件


 


任务6-1:
保存学生信息到文件


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


任务6-2:
从文件读取学生信息


 


任务描述与分析


 


相关知识与技能


 


任务实施


 


任务拓展


 


模块总结


 


作业习题


 


附录A常用字符与ASCII代码对照表


 


附录B运算符和结合性


 


附录CC语言库函数


 


参考文献



内容摘要
本书以计算机相关专业岗位需求和行业编程规范为基础,以“学生成绩管理系统”作为教学项目,基于“项目导入、任务驱动”的教学模式,以工作过程系统化的项目化教材的设计思路来组织内容。本书主要内容包括C语言的基本语法、数据类型、程序基本结构、算法流程图,程序编码、调试及运行机制、数组、函数、结构体及指针、文件等。
本书将项目划分为3个版本: 先搭建项目骨架,再逐个填充项目模块,完成基于数组实现的项目版本1; 基于指针结构体重构的项目版本2; 基于文件继续重构的项目版本3。将C语言所有相关知识点融入对应版本的模块任务中。引导读者通过一个项目的3个版本的不断重构学习和实践的过程中完成函数、数组、指针结构体、文件等难点的理解,并掌握模块化编程思路,提高程序开发能力。
本书的特点是基于软件开发流程、由易到难、不断重构项目的过程中让读者在“做中学,学中做”,逐步掌握C语言程序设计知识和开发技能。
本书可作为本科院校、高职高专院校计算机相关专业的教材,也可作为广大学习C语言程序设计与编程开发人员的参考用书。

主编推荐
本书以计算机相关专业岗位需求和行业编程规范为基础,以“学生成绩管理系统”作为教学项目,基于“项目导入,任务驱动”的教学模式,以工作过程系统化的项目化教材的设计思路来组织内容。本书的特点是基于软件开发流程,在由易到难、不断重构项目的过程中让读者在“做中学,学中做”,逐步掌握C语言程序设计知识和开发技能。本书可作为本科院校、高职高专院校计算机相关专业的教材,也可作为广大学习C语言程序设计与编程开发人员的参考用书。

精彩内容

模块三项目用户菜单设计

模块二介绍了“学生成绩管理系统”的数据定义和运算符相关知识,本模块开始搭建项目框架,完成项目的两级菜单的设计。项目中包含主菜单和子菜单(管理员、学生用户)。系统运行首先进入主菜单,通过选择进入相应用户的子菜单,再选择进入各个菜单功能。由于菜单的选择应该具有重现性和循环性,因此,本模块的主要任务就是完成主菜单和子菜单的循环显示和选择,为下一模块的学生成绩管理功能提供调用界面。【工作任务】(1) 任务31: 主菜单显示。(2) 任务32: 主菜单选择。(3) 任务33: 子菜单选择。(4) 任务34: 菜单循环显示。【学习目标】(1) 掌握程序控制的顺序、选择和循环三大结构,并能够熟练画出算法流程图。(2) 掌握顺序结构的输入输出语句。(3) 掌握分支结构的if语句和switch语句。(4) 掌握循环结构的while语句和do while语句。任务31: 主菜单显示任务描述与分析

图31主菜单
周老师将班级所有同学划分为五个项目组,要求每个项目组完成“学生成绩管理系统”的主菜单的显示,具体实现效果如图31所示。系统运行时,首先进入主菜单,主菜单有3个选项,分别为: 1——管理员、2——学生、0——退出。要完成这个任务,周老师要给项目组的同学们分析一下需要掌握哪些知识。首先,程序开发前要了解算法流程图和基本的程序控制结构。在进行程序设计之前,要将解决这个任务的程序结构理清,并将算法描述出来才能进行编码。其次,本任务需要用到C语言中的格式输出语句。相关知识与技能311算法和程序结构
程序设计就是面对一个需解决的实际问题,设计适合于计算机的算法,并利用程序设计语言(如C语言)写出算法成为程序、运行程序,此问题得以解决。而程序是解决特定问题所需要的语句集合。算法是为解决某个特定问题而采取的确定有效的步骤。算法的描述可以通过自然语言法、伪代码法、流程图表示法、高级语言表示法。下面介绍一下传统流程图的算法描述方法。传统流程图符号如图32所示。

图32传统流程图符号及功能

基本的程序结构有以下3种。(1) 顺序结构。语句顺序逐条执行,不发生流程转移,如图33所示。(2) 选择结构。选择结构流程图如图34所示。

图33顺序结构流程图

图34选择结构流程图

(3) 循环结构。循环结构分为当型循环和直到型循环两种,分别如图35、图36所示。理论已经证明,利用这三种程序结构可以解决任意问题。计算机程序解决问题的算法与人们日常解决相同问题的算法相比较: 程序设计算法基于日常逻辑,因此计算机擅长大量的重复计算,引入了循环/判断等结构,程序设计算法往往更简洁、清晰、独特。312格式化输出语句1. 格式化输出函数printfprintf函数的作用是向系统指定的隐含输出设备输出若干数据。

图35循环结构流程图——当型循环

图36循环结构流程图——直到型循环

printf函数的语法格式如下。

printf("格式控制字符串",输出项列表);

其中,输出项列表可以是常量、变量、表达式、函数调用等; 格式控制字符串一般包含两部分,即格式控制符和其余字符。格式控制符是以“%”开头的字符串,控制输出数据的类型和格式。其余字符指原样输出的提示字符串,有几个“%”,就有几个输出项。那么,“printf("x=%d,y=%d\n",x,y);”语句中哪些是格式控制符?哪些是提示字符串?会输出什么?输出用格式控制字符串为“%格式字符”。表31列出了常用的格式字符。

表31格式字符

格 式 字 符说明
%d,i输出带符号的十进制数(正数不带符号)%u输出无符号的十进制数%o输出无符号的八进制数(不输出前导符0)%x,X输出无符号的十六进制数(不输出前导符0 x)%c以字符形式输出1个字符%s输出1个字符串(到第1个'\0'为止)%f输出小数形式的实数(隐含输出6位小数)%e,E输出指数形式的实数(隐含输出6位小数)%g,G输出%f和%e中宽度较短的,不输出无意义的0%p输出指针地址%%输出%
附加的输出用格式字符串为"%附加格式字符格式字符",如表32所示。2. 字符输出函数字符输出函数为putchar(ch),可以向终端输出1个字符,与printf的%c格式输出无区别。例如putchar('y'); putchar('\n'); putchar(ch); putchar('0xa');

表32附加格式字符

附 加 字 符说明
 输出的数字总带 号或-号-输出的数据在所在域中左对齐l输出长整型m输出数据的小宽度.n输出数据中小数点后的位数#使输出的8或16进制数带前导0或0x
3. 字符串输出函数字符串输出函数为puts(字符串常量/字符串地址),可以将字符串内容输出,直至遇到'\0',并且自动换行。例如,语句

printf("%s","I am a good student");

可以输出字符串"I am a good student",但不会自动换行。语句

puts("I am a good student");

也可以输出字符串"I am a good student",但会换行。313空语句和复合语句1. 空语句空语句只有一个“;”,语句为空,不执行任何操作,但在构成程序结构或调试阶段还是很有用的。2. 复合语句多于1条的语句用{}括起来,称为复合语句。复合语句在语法上等同于1条语句,凡是单个语句出现的地方,都可以出现复合语句,大大增强了程序的处理能力。在复合语句内部可以包含任何数据结构定义和其他语句,在其内部定义的变量只在此复合语句内起作用。3. 注释注释: 为了使编码人员和其他读者更好地理解程序,在程序中写的注解。//: 用于单行注释;&n

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP