《C语言程序设计/新一代高职教育信息通信规划教材》是根据高职高专C语言程序设计的教学特点及相关要求,并结合教育部关于全国二级考试大纲中有关C语言程序设计的相关要求编写而成。全书共分为12章,内容主要包括程序与程序设计的基本概念、C语言基础、3种程序结构及其控制语句、函数、数组、指针、用户自定义类型及文件等。
《C语言程序设计/新一代高职教育信息通信规划教材》语言精炼,叙述深入浅出,内容详略得当。为了方便读者把握每章的重点与难点,在每章小结中对本章的主要知识点及易犯错误作了说明。针对二级考试,对例题与习题都作了精选。
《C语言程序设计/新一代高职教育信息通信规划教材》适合作为高职高专C语言教学及二级考试教学用书,也可以作为学生自学用书。
第1章 C语言概述
1.1 程序设计的基本概念
1.1.1 程序与程序设计语言
1.1.2 算法
1.2 C语言与C程序
1.2.1 C语言的特点
1.2.2 C程序的构成
1.2.3 C程序的编译与连接
本章小结
习题一
第2章 C语言基础
2.1 C语言中的标识符
2.1.1 标识符的概念
2.1.2 标识符的分类
2.2 C语言中的数据类型
2.2.1 C语言中的数据分类
2.2.2 C语言中的基本数据类型
2.3 常量与变量
2.3.1 常量
2.3.2 变量
2.4 算术运算符与算术表达式
2.4.1 算术运算符
2.4.2 算术表达式
2.5 赋值运算符与赋值表达式
2.5.1 赋值运算符与赋值表达式
2.5.2 复合的赋值表达式
2.6 自加、自减运算符和逗号运算符
2.6.1 自加与自减运算符
2.6.2 逗号运算符和逗号表达式
2.7 类型转换
2.7.1 自动转换
2.7.2 类型强制转换
2.8 位运算
2.8.1 位运算符
2.8.2 位运算符的功能
本章小结
习题二
第3章 基本输入与输出
3.1 库函数
3.1.1 库函数的概念
3.1.2 库函数的原型说明
3.1.3 库函数的调用
3.2 利用标准输出函数printf()进行数据输出
3.2.1 标准输出函数printf()的格式与功能
3.2.2 printf()函数中的常用格式说明
3.2.3 printf()函数的使用说明
3.3 利用标准输入函数scanf()进行数据输入
3.3.1 标准输入函数scanf()的格式与功能
3.3.2 scanf()函数中的常用格式说明
3.3.3 scanf()函数的使用说明
3.4 字符的输入与输出
3.4.1 putchar()函数
3.4.2 getchar()函数
本章小结
习题三
第4章 结构化程序设计
4.1 结构化程序设计的概念
4.2 顺序结构程序设计
4.2.1 空语句与复合语句
4.2.2 顺序结构程序设计
4.3 选择结构程序设计
4.3.1 关系运算与逻辑运算
4.3.2 if语句构成的选择结构
4.3.3 switch语句构成的选择结构
4.3.4 条件表达式构成的选择结构
……
第5章 函数
第6章 变量与函数的作用域
第7章 数组
第8章 指针
第9章 指针、数组、函数的进一步讨论
第10章 编译预处理与动态存储分配
第11章 用户自定义数据类型
第12章 文件
高级语言是从20世纪50年代开始,逐步发展起来的面向问题的程序设计语言,它脱离了具体的计算机硬件,通用性和可移植性都很好。高级语言是面向用户的语言,易于记忆和理解。
(2)语言处理程序
无论是用汇编语言编写的程序,还是用高级语言编写的程序,计算机都不能直接执行,必须将这两类源程序经过翻译,变成二进制代码(即机器语言)以后,计算机才能识别。担任翻译工作的这类程序称为语言处理程序。
语言处理程序有3种,分别为汇编程序、编译程序和解释程序。汇编程序的功能是将汇编语言编写的程序(源程序)翻译成机器语言程序(目标程序)。编译程序的功能是将高级语言编写的源程序翻译成目标程序。解释程序是一句一句地扫描、翻译、执行高级语言源程序,解释过程不产生目标程序。1.1.2算法1.算法的特点学习程序设计语言的目的,是为了用语言作工具设计出计算机可以运行的程序。当拿到一个问题后,怎样才能编写出能解决此问题的程序呢?(1)通过分析问题中涉及的数据,确定合理的数据结构。(2)分析解决问题的步骤与思路,即确定算法。(3)选用一种程序设计语言,将算法转换成程序。在上述3个步骤中,最为关键的一步就是算法的确定。算法是程序的灵魂,那么,什么是算法呢?算法就是指为解决某个特定问题而采取的确定且有限的步骤。它具有以下5个特点:
(1)有穷性。一个算法必须总是(对任何合法的输入值)在执行有穷步之后结束,且每一步都可在有穷时间内完成。
(2)确定性。算法中每一条指令必须有确切的含义,读者理解时不会产生二义性。在任何条件下,算法只有惟一的一条执行路径,即对于相同的输入只能得出相同的输出。
(3)可行性。一个算法是可行的,即算法中描述的操作都是可以通过已经实现的基本运算执行有限次来实现的。
(4)一个算法有零个或多个的输入。在计算机上实现的算法,是用来处理数据的,应该允许通过输入来得到需要的数据。
(5)一个算法有一个或多个的输出。没有输出的算法是没有意义的算法。
2.算法的描述
算法的描述方法有多种,最常用的是伪代码法和流程图。
伪代码法就是用自然语言或类高级语言来描述。两种描述语言在对问题的描述能力方面存在一定的差异。自然语言较为灵活,但不够严谨。类高级语言是一种以计算机语言为基础,适当添加一些功能或放宽某些限制而得到的一种类语言。类语言具有计算机语言的严格性,又具有某些灵活性,同时也容易上机实现,因而被广泛接受。
流程图是描述算法的很好的工具。
传统的流程图由图1.1中所示的几种基本图形组成。
……