程序设计基础

出版时间:2010-5  出版社:谢书良、 陈明 清华大学出版社 (2010-05出版)  作者:谢书良  页数:306  

前言

当前,IT技术的发展正在突飞猛进,日新月异。在计算机应用日益普及的形势下,软件的概念和程序设计的基础知识已逐渐成为人们渴求的新目标。有人把数学誉为“训练思维的体操”,其实,程序设计基础课程和数学课程一样,对培养人们的逻辑思维能力,有着异曲同工的作用。目前市面上高级语言程序设计类的教材琳琅满目,但是真正适合初学者使用的入门教材并不多见,很多教材没有充分考虑初学者的实际情况,使用效果不太理想。作者经过在不同条件、不同环境下长期的教学实践,编写了本书,这是一本适合初学者使用的、体现零起点的入门教材,本书有如下特点:1.教材的广度虽然是按传统的知识范围来确定的,但进行了删繁就简处理,以体现入门教材起点低、逐步提升、循序渐进的精神。2.对于数据的输入和输出的方式,输入采用的是输入流cin,无格式输出采用输出流cout,格式输出采用输出函数printf。格式输入函数scanf只在学了有关“地址”的内容后,结合指针内容进行介绍,这样既显得自然,又有效地降低了教学难度。3.将“指针”一章紧接着“数组”一章介绍,将“函数及其调用”一章后移,以适应对学生逻辑思维能力循序培养,逐步上升的进程。部分*号注明指针内容,供选用。4.根据“学以致用”的原则,增加了“综合应用”一章,并在其他各章选用的例题中,只采用了部分对理解所学知识有用的纯数学类型题,增加了大量的有实用价值的题,以提高兴趣,激发上进,使理论与实践结合得更为紧密。5.“多思考,勤上机”是学好程序设计课程的关键,本教材对每次上机的目的、内容等项目均有明确的要求,所采用的是32位上机环境,考虑到初学者入门的需要,只介绍VisualC++6.0的简单使用。6.为了对教与学提供方便,本教材备有演示文稿提供给教师教学和学生复习选用。7.每章之后都设计了一套有多种题型、一定题量的自测练习题,供课堂练习使用。全部题目的参考答案已附于书后,也可以通过清华大学出版社网站下载。

内容概要

  《中国高等学校计算机科学与技术专业(应用型)规划教材:程序设计基础》是为从来没有接触过程序设计的读者编写的“零起点”入门教材。全书共分8章,第1章主要介绍程序设计的概念和程序运行的环境,第2章介绍了基本的数据类型、运算符与表达式,第3章介绍面向过程程序的顺序、分支选择和循环三种控制结构,第4章至第7章分别介绍了数组、指针的概念,结构体和其他数据类型,函数及其调用,内容涵盖了C++面向过程程序设计内容,与C语言教材完全兼容。第8章是体现《中国高等学校计算机科学与技术专业(应用型)规划教材:程序设计基础》特色的一章,分别介绍了“小型通讯录查询系统”和“学生成绩管理系统”的设计过程并附有完整代码,作为最后的“课程实践”还提供了两个控制台工程样例。  《中国高等学校计算机科学与技术专业(应用型)规划教材:程序设计基础》还为授课教师提供精心设计的配套电子课件、全部例题源代码、自测练习题答案和部分题目的源代码,可在清华大学出版社网站上下载。  《中国高等学校计算机科学与技术专业(应用型)规划教材:程序设计基础》可作为高等院校涉及程序设计的相关专业程序设计课程的教材,也可作为工程技术人员的参考用书和有志于程序设计的社会青年的自学用书。

作者简介

陈明,教授,博士生导师。1993年获德国科学联合会DFG基金于德国图滨根大学计算机学院做神经网络综合技术研究。教育部计算机及应用教学指导组成员(1996-2000),《计算机科学与探索》编委,《计算机教育》编委,中国计算机学会第六届、第七届、第八届、第九届理事(1996年-现在),中国计算机学会开放式系统专业委员会副主任,中国计算机学会计算机教育专委会常委及计算机科学与技术专业应用型人才培养研究组组长,全国计算机基础教育研究会常务理事,北京市计算机基础教育研究会副理事长,教育部IT&AT教育工程专家组成员,教育部文科计算机教学指导委员会委员,2003年获北京市教学名师奖。撰写并出版计算机教材、专著及译著82种。其中有多种教材获“十一五”国家级规划教材,北京市精品教材以及北京市精品教材立项项目,曾获部级数学成果二等奖一项。北京市《计算机软件基础课程》优秀教学团队负责人。参加和完成国家自然科学基金、国家863高技术基金等多项科研项目。目前主要从事分布计算及计算智能方面的研究,培养了三百二十余名硕士学位和博士学位研究生。在《计算机学报》、《软件学报)》、《通信学报》等国内外学术刊物与会议上发表论文130余篇。

书籍目录

第1章 程序设计概述1.1 基本概念1.2 算法概述1.3 数据的输入与输出1.3.1 数据输出1.3.2 数据输入1.3.3 一个简单的C++程序1.4 C++程序的结构1.5 程序运行的流程1.6 C++程序的上机环境——VC++6.0集成开发环境简介第2章 基本数据类型、运算符与表达式2.1 数据的基本类型2.2 变量2.2.1 标识符命名2.2.2 变量的声明与初始化2.2.3 使用变量时的注意事项2.3 算术运算符与算术表达式2.3.1 基本的算术运算符2.3.2 算术表达式和运算符的优先级与结合性2.3.3 表达式中各类数值型数据间的混合运算2.3.4 强制类型转换运算符2.4 常量2.4.1 整型常量2.4.2 实型常量2.4.3 字符常量2.4.4 字符串常量2.4.5 宏常量2.4.6 const常量2.5 赋值运算符与赋值表达式2.5.1 赋值运算符2.5.2 赋值过程中的类型转换2.5.3 复合的赋值运算符2.5.4 赋值表达式2.6 自增1和自减1运算符2.7 逗号运算符与逗号表达式自测练习题第3章 面向过程程序的控制结构3.1 在输出流中使用控制符3.2 用输出函数printf进行格式输出3.3 字符数据的输出与输入3.4 编写顺序结构的程序3.5 关系运算与逻辑运算3.5.1 关系运算符与关系表达式3.5.2 逻辑常量和逻辑变量3.5.3 逻辑运算与逻辑表达式3.6 分支选择结构与if语句3.7 if语句的嵌套3.8 条件运算符与条件表达式3.9 多分支选择结构与switch语句3.1 0编写分支选择结构的程序3.1 1循环结构和循环语句3.1 1.1 用while语句构成循环3.1 1.2 用do-while语句构成循环3.1 1.3 用for语句构成循环3.1 2循环的嵌套3.1 3流程控制的转移3.1 3.1 continue语句3.1 3.2 break语句3.1 3.3 goto语句3.1 4编写循环结构的程序自测练习题第4章 数组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 字符数组的定义4.3.2 字符数组的输出和输入4.3.3 字符串处理函数自测练习题第5章 指针5.1 指针与指针变量5.2 指针与数组5.2.1 用指针操作一维数组5.2.2 用指针操作二维数组5.2.3 用指针数组操作二维数组5.3 指针与字符串自测练习题第6章 其他数据类型6.1 结构体1456.1.1 结构体类型的定义6.1.2 结构体变量6.1.3 结构体数组6.2 指针与结构体6.2.1 指向结构体变量的指针6.2.2 指向结构体数组的指针6.2.3 用指针处理静态链表简介6.3 共用体(联合体)6.3.1 共用体类型的定义6.3.2 共用体变量6.4 枚举——基本数据类型6.4.1 枚举类型的定义和枚举变量的声明6.4.2 枚举类型的引用6.5 自定义类型6.5.1 自定义类型的一般形式6.5.2 自定义类型的使用说明6.6 位运算及位字段6.6.1 位运算6.6.2 移位运算6.6.3 位运算的复合赋值运算6.6.4 位字段自测练习题第7章 函数及其调用7.1 概述7.2 定义函数的一般形式7.2.1 无参函数7.2.2 有参函数7.3 函数参数与函数的值7.3.1 调用函数时的数据传递7.3.2 函数返回值7.4 函数的调用7.5 函数的嵌套调用7.6 函数的递归调用7.7 数组作为函数参数7.7.1 数组元素作函数实参7.7.2 数组名作函数的参数7.7.3 二维数组名作函数参数7.8 指针与函数7.8.1 指针作为函数的参数7.8.2 返回指针值的函数——指针函数7.8.3 指向函数的指针——函数指针7.8.4 用结构体变量和指向结构体的指针作函数参数7.9 指针与引用7.1 0变量的存储类型7.1 0.1 存储类型7.1 0.2 全局变量7.1 0.3 局部变量(自动变量)7.1 0.4 静态变量7.1 0.5 静态函数第8章 综合应用实验1 熟悉Visual C++6.0的运行环境实验2 数据类型、运算符及表达式实验3 数据的输入、输出与顺序结构程序设计实验4 分支选择结构程序设计实验5 循环结构程序设计实验6 数组的应用实验7 指针的基本使用实验8 结构体和共用体实验9 用指针数组处理字符串及用指针处理结构体实验10 函数及其调用实验11 函数的嵌套、递归调用及带宏替换课程实践 含数据录入、修改、删除、查询等的综合实例设计附录A ASCII码字符集附录B 运算符的优先级和结合性附录C 输入、输出函数中的格式控制符及修饰符任务索引自测练习题参考答案参考文献

章节摘录

插图:1.自然语言描述  2.自然语言就是人们日常生活中使用的语言。用自然语言描述算法时,可以使用汉语、英语和数学符号等,比较符合人们日常的思维习惯,通俗易懂,初学者容易掌握任务1-1的处理过程可以细化为如下几步:①设置求和变量sum并使其初值为零;②读人键盘输人的数据;③判断是否是正数,如果是正数则加入sum中;④继续过程②和过程③,直到加入10个正整数为止;⑤输出sum的值用自然语言表示虽然通俗易懂,但文字冗长,容易出现“歧义性”。自然语言表示的含义,往往不大严格,要根据上下文才能判断其正确含义。假如有这样一句话:“张先生对李先生说他的孩子考上了大学”。请问是张先生的孩子考上大学呢,还是李先生的孩子考上大学呢?光从这句话本身难以判断。此外,用自然语言描述包含分支和循环的算法,不很方便因此,除了很简单的问题以外,一般不用自然语言描述算法2.流程图描述流程图是一个描述程序的控制流程和指令执行情况的有向图,它是程序的一种比较直观的表示形式。美国国家标准化协会(ANSI)规定了一些符号作为常用的流程图符号,已为世界各国程序工作者普遍采用。用传统流程图描述算法的优点是形象直观,各种操作一目了然,不会产生“歧义性”,便于理解,算法出错时容易发现,并可直接转化为程序;但缺点是所占篇幅较大,由于允许使用的流程线过于灵活,不受约束,使用者可使流程任意转向,从而造成程序阅读和修改上的困难。

编辑推荐

《程序设计基础》是为从没有接触过程序设计的读者编写的“零起点”入门教材。《程序设计基础》按任务导引教学方法进行编写,十分注重可读性和可用性。用任务引出基础知识,既保持了知识的系统性,又使学习目的比较明确,学习效果容易检验。在激发读者学习程序设计基础知识和训练程序设计基本能力方面有较好盼作用。全书分《程序设计基础)》和《程序设计应用》两册,内容涵盖了C++面向过程程序设计的内容。与C语亩教材完全兼容。《程序设计基础》还为授课教师提供精心设计的配套电子课件、全部例题源代码、自测练习题答案和部分题目的源代码。

图书封面

评论、评分、阅读与下载


    程序设计基础 PDF格式下载


用户评论 (总计0条)

 
 

 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7