第三章第1节 第三章数据类型、运算符与表达式 §31C的数据类型 程序=数据结构(描述)+算法 C程序中通过定义数据类型来实现 整型 整数 基本类型 字符型 单个字符 实型(浮点型) 单精度 带小数的 双精度数据 枚举类型 C语言的 数组类型 数据类型构造类型结构体类型 共用体类型 指针类型 空类型
第三章 第1节 程序= 数据结构(描述)+ 算法 C程序中通过定义数据类型来实现 整型 → 整数 字符型 → 单个字符 实型(浮点型) → 单精度 双精度 枚举类型 带小数的 数据 数组类型 结构体类型 共用体类型 指针类型 空类型 基本类型 构造类型 C语言的 数据类型 §3.1 C的数据类型
§32常量和变量 第三章第2节 C的数据 常量 变量 一,常量和符号常量 1.常量—在程序运行过程中,值不变。 常量有不同的类型 整形 3.1416.2.0 实型 A 符型 2.符号常量—用符号(标识符代表一个常量 如:n3.1416→在计算机中PI=3.1416注:必须先定义后使用 例子:求圆的面积 define pi 3. 1416 错符号常量不能改变 main 不能再赋值 float d, area; scanf(“%f,&d); PI3.1415926; area=Pldd/ 4.0 printf("area=9:e;惯上:符号常量用大写变量用小
第三章 第2节 §3.2 常量和变量 C的数据 常量 变量 一 . 常量和符号常量 1 . 常量——在程序运行过程中,值不变。 常量有不同的类型 0 , -1 , 5 整形 3.1416, 2.0 实型 ‘a’ , ‘A’ 字符型 2 . 符号常量——用符号(标识符)代表一个常量 如: π=3.1416 → 在计算机中 PI=3.1416 注: 必须先定义后使用 例子: 求圆的面积 # define PI 3.1416 main( ) {float d,area; scanf(“%f”,&d); area=PI*d*d/4.0; printf(“area=%f”,area); } PI=3.1415926; 错!符号常量不能改变, 不能再赋值 习惯上: 符号常量用大写, 变量用小 写
第三章第2节 二变量—在程序运行过程中,值可以改量的量 变量名 变量的名字→对应该变量在内存中的单元地址 变量的值→变量的数据→存放在变量对应的内存单元中 整型变量 Intx 2Byte 地址号 201 200 首地址 变量名x 00.010→2→x的值 变量的命名 1)只能用字母(注:大、小写不同义,一般用小写)、下划线、数字 组成。如:x1,sum,nag,x1 2)第一个字符必须是字母或下划线。 法 sum A above 不合法:ZQ,$1,2a 3)字符的个数无统一规定,不同的系统有所差别,多数系统取8个, 般以不超过8个字符为宜
第三章 第2节 二. 变量——在程序运行过程中,值可以改量的量 变量名 → 变量的名字 → 对应该变量在内存中的单元地址 变量的值 → 变量的数据 → 存放在变量对应的内存单元中 整型变量 → int x 0 0 ... 0 0 ... 0 1 0 201 200 2Byte 地址号 首地址 变量名x 00...010 → 2 → x的值 变量的命名 1)只能用字母(注:大、小写不同义,一般用小写)、下划线、数字 组成。 如:x1, sum, _flag, x_1 2) 第一个字符必须是字母或下划线。 合法:sum, A , _ above 不合法: Z.Q , $1, 2a 3) 字符的个数 无统一规定, 不同的系统有所差别, 多数系统取8个, 一般以不超过8个字符为宜
第三章第2节 4)命名时,尽量与所表示的物理量有一定联系,便于阅读。 如: 面积用area 不用 直径用 diameter不用d 5)要先定义,后使用 s33整型数据 第三章第3节 整型常量 即:整数 三种书写形式 1.十进制整数 12,025 2.八进制整数以0开头书写 如:012→(12)8-81×1+80×2=(10)10 012→(-12)8-(-10) 注:0是数字不是字母 018 的什么? 3.十六进制整数以0x开头书写 如:0x12→(12)16→161×1+160×2=(18)o 0Xx1a→(1a)6→161×1+16×10=(26)n0 注:没有二进制的形式!!!
第三章 第2节 4) 命名时,尽量与所表示的物理量有一定联系,便于阅读。 如: 面积 用area 不用 s 直径 用diameter 不用 d 5) 要先定义,后使用 §3.3 整型数据 —— 即:整数 第三章 第3节 一 . 整型常量 三种书写形式 1. 十进制整数 12, 0 -25 2. 八 进制整数 以0开头书写 如:012 →(12)8 →81×1+80×2=(10)10 - 012 →(-12)8 →(-10) 10 018 为什么? 3. 十六进制整数 以0x开头书写 如:0x12 →(12)16 →161×1+160×2=(18)10 0x1a →(1a)16 → 161×1+160×10=(26)10 注: 没有二进制的形式!!!! 注: 0是数字,不是字母
第三章第3节 整型变量 代表整数的变量 1.整型变量的分类 范围大1)基本型 int 有符号数,前面可加 小不同12)短整型 chort int (short) “ signed,如: signed int 3)长整型 ong int(ong))等 4)无符号型 1)无符号基本型 unsigned int 2)无符号短整型 unsigned short 3)无符号长整型 unsigned lon 含义:最高位不表示“+”“”,而为数值本身 如:1000.001rint (-111.11)=-(214+2134+.+20)=-32767 16位 unsigned int 215+1=32768 故:a)无符号型变量一般不能放负数 b)无符号数比同类的整型变量存放正整 又是为什么? 数的范围扩大一倍
第三章 第3节 二 . 整型变量 —— 代表整数的变量 1 . 整型变量的分类 1) 基本型 int 2) 短整型 short int (short) 3) 长整型 long int (long) 4) 无符号型 1)无符号基本型 unsigned int 2)无符号短整型 unsigned short 3)无符号长整型 unsigned long 有符号数 , 前面可加 “ signed”, 如: signed int 等 含义: 最高位不表示“+”“-”, 而为数值本身 如: 1000....001 int (-111....1111)原= -(214+213+...+20 )= -32767 16位 unsigned int 215 + 1=32768 故: a) 无符号型变量一般不能放负数 b)无符号数比同类的整型变量存放正整 数的范围扩大一倍 又是为什么?? 范围大 小不同