清华大学出版社 TSINGHUA UNIVERSITY PRESS 第3章数据类型、运算符与表达式 31c的数据类型 32常量与变量 33整型数据 34实型数据 35字符型数据 36变量赋初值
3.1 C的数据类型 3.2 常量与变量 3.3 整型数据 3.4 实型数据 3.5 字符型数据 3.6 变量赋初值 第3章 数据类型、运算符与表达式
清华大学出版社 TSINGHUA UNIVERSITY PRESS 3.7各类数值型数据间的混合运算 3.8算术运算符和算术表达式 39赋值运算符和赋值表达式 3.10逗号运算符和逗号表达式 习题
3.7 各类数值型数据间的混合运算 3.8 算术运算符和算术表达式 3.9 赋值运算符和赋值表达式 3.10 逗号运算符和逗号表达式 习题
清华大学出版社 TSINGHUA UNIVERSITY PRESS 31C的数据类型 个程序应包括以下两方面内容: (1)对数据的描述。在程序中要指定数据的类型和数据的 组织形式,即数据结构( data structure)。 (2)对操作的描述。即操作步骤,也就是算法( algorithm)。 据是操作的对象,操作的目的是对数据进行加工处理, 以得到期望的结果。打个比方,厨师做菜肴,需要有 菜谱。菜谱上一般应包括: ①配料,指出应使用哪些原料;②操作步骤,指出如 何使用这些原料按规定的步骤加工成所需的菜肴。面 对同一些原料可以加工出不同风味的菜肴
3.1 C的数据类型 一个程序应包括以下两方面内容: (1) 对数据的描述。在程序中要指定数据的类型和数据的 组织形式,即数据结构(data structure)。 (2) 对操作的描述。即操作步骤,也就是算法(algorithm)。 据是操作的对象,操作的目的是对数据进行加工处理, 以得到期望的结果。打个比方,厨师做菜肴,需要有 菜谱。菜谱上一般应包括: ① 配料,指出应使用哪些原料;② 操作步骤,指出如 何使用这些原料按规定的步骤加工成所需的菜肴。面 对同一些原料可以加工出不同风味的菜肴
清华大学出版社 TSINGHUA UNIVERSITY PRESS 作为程序设计人员,必须认真考虑和设计数据结构 和操作步骤(即算法)。因此,著名计算机科学家沃 思( nikiklaus wirth)提出一个公式数据结构+算法= 程序实际上,一个程序除了以上两个主要要素之 外,还应当采用结构化程序设计方法进行程序设 计,并且用某一种计算机语言表示。因此,可以 这样表示: 程序=算法+数据结构+程序设计方法+语言工具和环 境
作为程序设计人员,必须认真考虑和设计数据结构 和操作步骤(即算法)。因此,著名计算机科学家沃 思(nikiklaus Wirth)提出一个公式数据结构+算法= 程序实际上,一个程序除了以上两个主要要素之 外,还应当采用结构化程序设计方法进行程序设 计,并且用某一种计算机语言表示。因此,可以 这样表示: 程序=算法+数据结构+程序设计方法+语言工具和环 境
清华大学出版社 TSINGHUA UNIVERSITY PRESS 也就是说,以上4个方面是一个程序设计人员所应 具备的知识。在设计一个程序时要综合运用这几 方面的知识。在本书中不可能全面介绍这些内容, 它们都属于有关的专门课程范畴。在这4个方面中, 算法是灵魂,数据结构是加工对象,语言是工具, 编程需要采用合适的方法。算法是解决“做什么” 和“怎么做”的问题。程序中的操作语句,实际 上就是算法的体现。算法处理的对象是数据,而 数据是以某种特定的形式存在的(例如整数、实数、 字符等形式)。不同的数据之间往往还存在某些联 系(例如由若干个整数组成一个整数数组)。所谓 数据结构指的是数据的组织形式。例如,数组就 是一种数据结构。不同的计算机语言所允许定义
也就是说,以上4个方面是一个程序设计人员所应 具备的知识。在设计一个程序时要综合运用这几 方面的知识。在本书中不可能全面介绍这些内容, 它们都属于有关的专门课程范畴。在这4个方面中, 算法是灵魂,数据结构是加工对象,语言是工具, 编程需要采用合适的方法。算法是解决“做什么” 和“怎么做”的问题。程序中的操作语句,实际 上就是算法的体现。算法处理的对象是数据,而 数据是以某种特定的形式存在的(例如整数、实数、 字符等形式)。不同的数据之间往往还存在某些联 系(例如由若干个整数组成一个整数数组)。所谓 数据结构指的是数据的组织形式。例如,数组就 是一种数据结构。不同的计算机语言所允许定义
清华大学出版社 TSINGHUA UNIVERSITY PRESS 和使用的数据结构是不同的。例如,c语言提供 了“结构体”这样一种数据结构,而 fortran语言 就不提供这种数据结构。处理同一类问题,如果 数据结构不同,算法也会不同。例如,对10个整 数排序和对由10个整数构成的数组排序的算法是 不同的。因此,在考虑算法时,必须注意数据结 构。实际上,应当综合考虑算法和数据结构,选 择最佳的数据结构和算法 C语言的数据结构是以数据类型形式出现的。c的 数据类型如下: 数据类型,基本类型,整型,字符型,实型浮点 型)单精度型,双精度型,枚举类型,构造类型, 数组类型,结构体类型,共用体类型,指针类型
和使用的数据结构是不同的。例如,c语言提供 了“结构体”这样一种数据结构,而fortran语言 就不提供这种数据结构。处理同一类问题,如果 数据结构不同,算法也会不同。例如,对10个整 数排序和对由10个整数构成的数组排序的算法是 不同的。因此,在考虑算法时,必须注意数据结 构。实际上,应当综合考虑算法和数据结构,选 择最佳的数据结构和算法。 C语言的数据结构是以数据类型形式出现的。c的 数据类型如下: 数据类型,基本类型,整型,字符型,实型(浮点 型)单精度型,双精度型,枚举类型,构造类型, 数组类型,结构体类型,共用体类型,指针类型
清华大学出版社 TSINGHUA UNIVERSITY PRESS 空类型C语言中数据有常量与变量之分,它们分 别属于以上这些类型。由以上这些数据类型还可 以构成更复杂的数据结构。例如利用指针和结构 体类型可以构成表、树、栈等复杂的数据结构。 在程序中对用到的所有数据都必须指定其数据类 型。在本章中主要介绍基本数据类型
空类型C语言中数据有常量与变量之分,它们分 别属于以上这些类型。由以上这些数据类型还可 以构成更复杂的数据结构。例如利用指针和结构 体类型可以构成表、树、栈等复杂的数据结构。 在程序中对用到的所有数据都必须指定其数据类 型。在本章中主要介绍基本数据类型
清华大学出版社 TSINGHUA UNIVERSITY PRESS 32常量与变量 321常量和符号常量 在程序运行过程中,其值不能被改变的量称为常 量。常量区分为不同的类型,如12,0,-3为 整型常量,4.6、-1.23为实型常量,“a’,‘d 为字符常量。常量一般从其字面形式即可判别。 这种常量称为字面常量或直接常量 也可以用一个标识符代表一个常量,如: 例31符号常量的使用。 #define price 30 main o
3.2 常量与变量 3.2.1 常量和符号常量 在程序运行过程中,其值不能被改变的量称为常 量。常量区分为不同的类型,如12,0,-3为 整型常量,4.6、-1.23为实型常量,‘a’,‘d’ 为字符常量。常量一般从其字面形式即可判别。 这种常量称为字面常量或直接常量。 也可以用一个标识符代表一个常量,如: 例3.1符号常量的使用。 #define price 30 main ( ) {
清华大学出版社 TSINGHUA UNIVERSITY PRESS int num, total num=10 total-=num x price; printf"total=%d'", total 程序中用#dene命令行定义 price代表常量30,此 后凡在本文件中出现的 price都代表30,可以和常 量一样进行运算,程序运行结果为 total=300 有关# define命令行的详细用法参见第8章
int num, total; num=10; total=num * price; printf("total=%d",total); } 程序中用#define命令行定义price代表常量30,此 后凡在本文件中出现的price都代表30,可以和常 量一样进行运算,程序运行结果为 total=300 有关#define命令行的详细用法参见第8章
清华大学出版社 TSINGHUA UNIVERSITY PRESS 这种用一个标识符代表一个常量的,称为符号常量, 即标识符形式的常量。请注意符号常量不同于变量, 它的值在其作用域(在本例中为主函数)内不能改变 也不能再被赋值。如再用以下赋值语句给 price赋值 是错误的。 pl rice 习惯上,符号常量名用大写,变量用小写,以示区别 使用符号常量的好处是: (1)含义清楚。如上面的程序中,看程序时从 price就 可知道它代表价格。因此定义符号常量名时应考虑 “见名知意”。在一个规范的程序中不提倡使用很 多的常数,如:sm=15*30*23.5*43。在检查程
这种用一个标识符代表一个常量的,称为符号常量, 即标识符形式的常量。请注意符号常量不同于变量, 它的值在其作用域(在本例中为主函数)内不能改变, 也不能再被赋值。如再用以下赋值语句给price赋值 是错误的。 price=40; 习惯上,符号常量名用大写,变量用小写,以示区别。 使用符号常量的好处是: (1) 含义清楚。如上面的程序中,看程序时从price就 可知道它代表价格。因此定义符号常量名时应考虑 “见名知意”。 在一个规范的程序中不提倡使用很 多的常数,如:sum= 15 * 30 * 23.5 * 43。在检查程