高级程序设计语言 吴凡 TEL:83202682 E-mail:cdwf@tom.com
高级程序设计语言 吴 凡 TEL: 83202682 E-mail: cdwf@tom.com
第三章数据类型、运算符与表达式 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 第三章 数据类型、运算符与表达式
数据类型(Type) ●数据类型:是数据结构的表现形式 决定了该类型的变量或者常量的取值范围 ●决定了该类型的变量或者常量可以执行哪些操 作例 Int 1 ●i是整数类型的变量,其取值范围为一32768 32767之间的整数; ●可以执行的操作:加、减、乘、除、求余(算术运 算);比大小(关系运算)等 实数无 电子科技大学通信与信息工程学院 此操作
电子科技大学通信与信息工程学院 数据类型(Type) ⚫ 数据类型:是数据结构的表现形式 ⚫ 决定了该类型的变量或者常量的取值范围 ⚫ 决定了该类型的变量或者常量可以执行哪些操 作 ⚫ 例:"int i" ⚫ i是整数类型的变量,其取值范围为-32768~ 32767之间的整数; ⚫ 可以执行的操作:加、减、乘、除、求余(算术运 算);比大小(关系运算)等 实数无 此操作
运算符( Operators)与表达式 Expressions) 运算符:定义了对不同数据类型变量或者 常量的基本操作(运算) 算术运算符( Arithmetic Operators 关系运算符( Relational Operators) ●逻辑运算符( Logical Operators) ●赋值运算 强制类型转换 表达式( Expressions):通过运算符将变 量、常量连接起来,产生新值 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 运算符(Operators)与表达式 (Expressions) ⚫ 运算符:定义了对不同数据类型变量或者 常量的基本操作(运算) ⚫ 算术运算符(Arithmetic Operators ) ⚫ 关系运算符(Relational Operators ) ⚫ 逻辑运算符(Logical Operators ) ⚫ 赋值运算 ⚫ 强制类型转换 ⚫ 表达式(Expressions):通过运算符将变 量、常量连接起来,产生新值
常量与变量 ●常量( Constants):是指在程序执行过 程中值不发生改变的量。 ●常量也有数据类型 ◎常量分为直接常量(字面常量)和符号常量 Symbolic Constants ●直接常量,例:50,3.14,"A,“abc ●符号常量,例:# define PRICE 30 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 常量与变量 ⚫ 常量( Constants ):是指在程序执行过 程中值不发生改变的量。 ⚫ 常量也有数据类型 ⚫ 常量分为直接常量(字面常量)和符号常量 (Symbolic Constants ) ⚫ 直接常量,例:50,3.14,'A',“abc” ⚫ 符号常量,例:#define PRICE 30
符号常量 符号常量:是一种特殊形式的常量,即用一个标 表示一个常量。 定义形式 # define常量名(标识符)常量值 使用符号常量: ●含义清楚; 在需要改变一个常量时能做到“一改全改” ●编程风格 在程序中不要出现“ magic numbers”(例如: X=100*50+78) ,而符号常量名可以指明每一个常 量的含义 ●符号常量名使用大写字母 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 符号常量 ⚫ 符号常量:是一种特殊形式的常量,即用一个标 识符表示一个常量。 ⚫ 定义形式 ⚫ #define 常量名(标识符) 常量值 ⚫ 使用符号常量: ⚫ 含义清楚; ⚫ 在需要改变一个常量时能做到“一改全改” ⚫ 编程风格 ⚫ 在程序中不要出现“magic numbers”(例如: x = 100 * 50 + 78),而符号常量名可以指明每一个常 量的含义 ⚫ 符号常量名使用大写字母
符号常量举例 ●例:计算某类食品的价格,要求从键盘读 入购买该食品的数目,输出总价格 #include define PRICE 28 Main in七 printf("input number: )i canf("d" &num printf("total d", num prIce)i return o 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 符号常量举例 ⚫ 例:计算某类食品的价格,要求从键盘读 入购买该食品的数目,输出总价格。 #include #define PRICE 28 Main () { int num; printf("input number: "); scanf("%d", &num); printf("total = %d", num * PRICE); return 0; }
变量( Variable) ●程序执行过程中,其值可以改变的量称为 变量。它用变量名(标识符)来表示,在 内存中占据一定内存单元。 ●变量 ●变量名:一个变量有一个名字 ●变量在内存中占据一定的存储单元,在该存储 单元中存放变量的值—变量值 ●变量名是一个符号地址 ●在程序中从变量中取值,实际上是通过变量名找到 相应的内存地址,从其存储单元中读取数据。 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 变量(Variable) ⚫ 程序执行过程中,其值可以改变的量称为 变量。它用变量名(标识符)来表示,在 内存中占据一定内存单元。 ⚫ 变量 ⚫ 变量名:一个变量有一个名字 ⚫ 变量在内存中占据一定的存储单元,在该存储 单元中存放变量的值——变量值 ⚫ 变量名是一个符号地址 ⚫ 在程序中从变量中取值,实际上是通过变量名找到 相应的内存地址,从其存储单元中读取数据
变量名与变量值 例:inta=3 地址内存 80A5 80A6 80A7 变量a 80A8 变量名 →日 80A9 变量值 80AA 3 80AB 8 0AD 存储单元 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 变量名与变量值 ⚫ 例:int a = 3; ... ... 3 ... ... ... ... ... 3 变量名 a 变量值 存储单元 80A5 80A6 80A7 80A8 80A9 80AA 80AB 80AD 变量a 地址 内存
标识符(包含变量名)的命名规则 标识符( identifier):用来标识变量名、符号常 量名、函数名、数组名、文件名等的有效字符序 列称之为标识符。 ●命名规则 只能由字母(a~z,A~Z)、数字(0~9)和下划线("_")三种字 符组成 ●例:不合法的标识符bass-9 first one ●第一个字符只能是字母或下划线 般只有库函数才有以'为首字母标识符 用户一般不用'作为标识符的首字母,避免冲突 ●区分字母大小写 例如:inta,a;/*a和A是两个不同的整型变量 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 标识符(包含变量名)的命名规则 ⚫ 标识符(identifier):用来标识变量名、符号常 量名、函数名、数组名、文件名等的有效字符序 列称之为标识符。 ⚫ 命名规则 ⚫ 只能由字母(a~z, A~Z)、数字(0~9)和下划线('_')三种字 符组成 ⚫ 例:不合法的标识符 bass-9 first one ⚫ 第一个字符只能是字母或下划线 ⚫ 一般只有库函数才有以'_'为首字母标识符 ⚫ 用户一般不用'_'作为标识符的首字母,避免冲突 ⚫ 区分字母大小写 ⚫ 例如:int a,A;/*a和A是两个不同的整型变量*/