前言

随着计算机技术的发展与普及,计算机已经成为各行各业各类人员最基本的工具之一,而且正迅速地进入人类生活的各个领域。会使用计算机、借助计算机办公软件来处理日常办公事务已经是现代人最基本的技能之一,如果想借助计算机更加灵活地处理各专业问题就必须学会计算机程序设计。因此,教育部把计算机程序设计作为高等院校计算机重要基础课程之一。但是学习程序设计重点究竟是学习工具还是学习方法设计一直是讲授本课程教师难以把握的问题,而且传统教材基本是按照讲授语言来编写的,比如C语言程序设计。

C语言作为国际上广泛流行的通用程序设计语言,在计算机的研究和应用中已展现出强大的生命力。C语言兼顾了诸多高级语言的特点,是一种典型的结构化程序设计语言,它处理能力强,使用灵活方便,应用面广,具有良好的可移植性,既适合计算机专业人员编写系统软件,又适合应用开发人员编写应用软件,所以长久以来,广泛流行,经久不衰。

但是,由于C语言比其他计算机语言的学习难度要大,尤其是复杂表达式、变量的作用域和生命期、指针的应用以及位运算等内容,对初学计算机语言的人来说,有很大难度。所以,在绝大部分高校中,以前总是先开设其他计算机语言课,然后再学习C语言。20世纪90年代后期,随着计算机新技术的不断涌现,高校计算机基础教学内容一再增加,非计算机专业本科生的计算机语言只开设一门课程,C语言程序设计就被选为非计算机理工科专业第一门(也是唯一一门)本科生的程序设计必修课。

几年来,每次给学生讲授C语言程序设计课程时,都会遇到同样的问题,就是学生在看书或者上机做实验时,都把主要精力和时间花在死抠复杂表达式和格式输入输出等方面,没有把主要精力用在编写计算程序上,而且现在的教材也都是这样安排的。但是,作为程序设计的入门教材,应该介绍程序设计的基本概念和基本方法,在此前提下,再由浅入深地介绍C语言的相关内容。因此本人一直有一个想法,编写一本能够让大多数人可以在很短时间内掌握程序设计思想、程序的基本结构,不仅能用C语言基本语句来描述程序,还能够学会用其他计算机语言来编写计算机程序的教材,供学生和广大编程爱好者自学选用。

本书作为程序设计教材的创新,实现了从以计算机语言为主线的体系结构向以问题为主线的体系结构上的转变,把从学习语法知识提高到解决问题的能力培养上,从花大量时间死抠复杂表达式和格式输入输出等方面解脱出来,进而把主要精力用在编写计算程序上。本教材在结构上突出了“以程序设计为中心,以语言知识为工具”的思想。在内容上注重知识的完整性,以适合初学者的需求。对C语言的语法规则进行了整理和提炼,深入浅出地介绍了它们在程序设计中的应用和用计算机解决问题的方法,把其他教科书中对C语言中过于“技巧性”问题的讨论与介绍安排在后面章节,供有兴趣和有需要的人进一步深入学习。当然,C语言还只是面向过程的计算机程序设计语言,一般用于编写较小规模的程序。要想编写较大规模的程序时,用C语言就显示出它的不足,因此可以在此基础上继续学习C++。

全书共7章,组织方式为以解决问题为主线,在解决问题时需要用到C语言的哪些内容就介绍相关内容。力图把程序设计的学习从语法知识的学习提高到解决问题的能力培养上。各章内容如下:

第1章介绍程序的相关概念、C语言基本语法元素、C语言程序的结构特点、开发环境等。

第2章介绍C语言的基本数据类型、基本程序结构和基本控制语句(顺序、分支、循环等控制语句)以及实例。

第3章围绕编写处理较少数据的程序,介绍C语言的基本输入输出、模块化程序设计与C语言函数及其调用等内容。此外,还介绍程序设计相关的概念,如算法及其描述、程序设计风格等内容。

第4章围绕编写处理较多数据的程序,介绍数组在处理较多数据的程序设计中的应用,特别是用结构体数组来处理较多、较复杂数据的程序设计方法。

第5章围绕编写处理大量数据的程序,介绍文件在处理大量数据的程序设计中的应用。

第6章主要介绍C语言中有关数据类型转换与混合运算、数据类型与数据存储结构以及变量的作用域与存储方式等特色内容。此外,还详细介绍C语言丰富的运算符及其结合性以及运算符与表达式,包括算术、赋值、关系、逻辑、求字节、逗号、条件、位运算、指针运算等。

第7章主要介绍C语言最具特色的指针及其在程序设计中的应用,包括指针与数组、指针与函数、指针与字符串、指针与结构体、指针与链表等内容。此外,本章还介绍C语言中的编译预处理,包括宏定义、文件包含、条件编译等这些C语言的特色内容。

全书各章配有习题和上机实验。

本书既可以作为高等院校非计算机专业理工类学生的计算机语言教材,也可以作为高等院校计算机专业本科、专科低年级学生学习计算机语言的入门教材,还可以作为科技人员自学C语言的自学参考书。书中介绍的C语言,覆盖了国家教育委员会考试中心的《全国计算机等级考试考试大纲》中的二级考试大纲“C语言程序设计考试要求”,因此也适合参加计算机二级C语言考试的人员选用。

在本书的策划和出版过程中,一直得到学校各级领导的大力支持和帮助,特别是石家庄经济学院信息工程学院硕良勋副院长,计算机程序设计课程组的陈嶷瑛、赵占芳、王楠、马立霄、赵洋、尹立杰、汪慎文以及关文革、郭秀敏、庞南雁等老师,他们对本书提出了很好的建议,作者受益匪浅,在此一并表示衷心的感谢。此外,本书的出版还得到清华大学出版社领导以及相关编辑的大力支持,在此一并表示最真诚的谢意。

本书稿曾在学校使用多年,经过几年的积累才作为教材正式出版,又经过几年的使用,作者对书中疏漏进行了修改,再次出版。但由于编者水平有限,书中难免有疏忽、错误之处,恳请专家和读者批评指正。

编者

2010年9月

于石家庄

计算机程序c语言教科书,清华大学出版社-图书前言相关推荐

  1. 清华大学还学c语言吗,清华大学出版社-图书详情-《C语言其实很简单》

    前 言 你是否以前尝试学习过C语言但又放弃了,或者是学习得一知半解,或者还是一位对C语言"一窍不通"的初学者?那么本书正适合你! C语言功能强大,内容繁多,最容易让初学者摸不到&q ...

  2. c语言既适合编写也适合编写应用软件,清华大学出版社-图书前言

    C语言是近年来在国内外都得到迅速推广的一种现代通用的程序设计语言.它具有丰富的数据类型.灵活方便的多种运算符.新颖的控制流程和数据结构以及简洁的表达式.它的处理能力强.运算速度快.目标效率高,具有完善 ...

  3. c语言程序设计教程 实验十,清华大学出版社-图书详情-《C语言程序设计实验教程》...

    前言 "C语言程序设计基础"是计算机专业以及理工类各专业的重要基础课程之一,也是很多学校的第一门编程课.理论与实践结合,多动手编程练习是学好C语言的必由之路.全书按照知识点递进的顺 ...

  4. 高级语言程序设计用c语言描述答案,清华大学出版社-图书详情-《高级语言程序设计(C语言描述)第2版》...

    近年来,随着各类程序(软件)设计大赛的广泛开展,C语言程序设计教学中"重语言轻设计"的教学状况得到了有效改善.本教材一直致力于改善这种教学缺陷,始终强调设计的重要性,因而受到广大相 ...

  5. c语言程序设计臧,清华大学出版社-图书详情-《C程序设计基础(第2版)》

    前言 C语言是在由UNIX的研制者(美国贝尔实验室的Dennis Ritchie和Ken Thompson)于1970年研制出的B语言的基础上发展和完善起来的.1972年,在DEC PDP-11计算机 ...

  6. java程序设计 第三版_清华大学出版社-图书详情-《Java语言程序设计(第3版)》...

    第3版前言 Java语言是目前应用最广泛的编程语言之一,学习和使用Java的人越来越多.为了帮助初学者尽快掌握Java编程,感受到Java语言的魅力,领会到Java编程的快乐,笔者根据长期Java授课 ...

  7. c语言程序设计实用教程 清华大学出版社,清华大学出版社-图书详情-《C程序设计教程》...

    进入21世纪,社会信息化不断向纵深发展,各行各业的信息化进程不断加速.我国的高等教育也进入了一个新的历史发展时期,尤其是高校的计算机基础教育,正在步入更加科学.更加合理.更加符合21世纪高校人才培养目 ...

  8. 清华大学java_清华大学出版社-图书详情-《Java语言程序设计(第3版)》

    第3版前言 互联网与移动互联网应用发展迅猛.Java以其优良的可移植性.安全性.卓越的并行处理能力,以及健壮.健康的开源生态体系,已经成为网络应用开发的首 选语言,并且成为非常流行的Android移动 ...

  9. c语言程序设计实验教程清华大学,清华大学出版社-图书详情-《C程序设计实验教程》...

    进入21世纪,社会信息化不断向纵深发展,各行各业的信息化进程不断加速.我国的高等教育也进入了一个新的历史发展时期,尤其是高校的计算机基础教育,正在步入更加科学,更加合理,更加符合21世纪高校人才培养目 ...

最新文章

  1. Delete Volume 操作 - 每天5分钟玩转 OpenStack(57)
  2. [LibTorch Win] 各版本 LibTorch 下载
  3. React antd 使用类式组件 对表单数据域进行控制 this.formRef.current.setFieldsValue
  4. hdu acm 2569
  5. WinRAR v5.90 正式版简体中文汉化特别版本
  6. sql删除重复数据只保留一条的操作方法
  7. 解决:UnsatisfiedDependencyException
  8. 拼多多商品详情接口、拼多多商品基本信息、拼多多商品属性接口
  9. Python 高级:人工智能概述
  10. 2019年我能变强组队训练赛第十场 C Criss-Cross Cables(优先队列模拟)
  11. ios开发读取剪切板的内容_iOS开发之详解剪贴板
  12. SNMP 网络协议介绍
  13. NodeJS 创建静态资源服务器
  14. Linux软件管理与vim实验报告,LinuxVi编辑器的使用实验报告.doc
  15. MySQL数据库——SQL函数
  16. java古诗_古诗自动生成程序JAVA
  17. Python实战:淘宝自动抢购
  18. CorelDRAW2022新版首发功能曝光介绍
  19. 区块链数据共享论文阅读
  20. SMART200PLC与ABB变频器实现MODBUS RTU通讯

热门文章

  1. 从NNLM到Bert,NLP语言模型发展概述
  2. 【数字图像处理】色彩模型
  3. 数据结构与算法学习篇给你一个文件里面包含全国人民(14亿)的年龄数据(0~200),现在要你统计每一个年龄有多少人?
  4. H5测试点总结-UI测试、功能测试、兼容性测试、体验相关(弱网、资源、手机操作等)、安全性测试、性能测试...
  5. C语言代码优化示例(一)
  6. Excel 2010 统计行数
  7. 一起自学SLAM算法:4.1 惯性测量单元
  8. c++ 线程实验 CreateThread
  9. centOS命令之shutdown
  10. 配置Tomcat环境变量一直失败:‘startup‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。