k第2章C语言的数据类型与运算 ●数据类 ●常量与变量 ●不同类型教据间的转换 运算符和衰达式
第2章 C语言的数据类型与运算 ⚫数据类型 ⚫常量与变量 ⚫不同类型数据间的转换 ⚫运算符和表达式
语§21数据类烈 短整型 short 程 ★数据类型总表 整型{整型int 序 长整型long 设 计 基本类型 单精度型foat 实型 双精度型 double 字符类型char 数组 教据类型决定 1.数据占内存宇节数 C 结构体c2数据取值围 数构造类型共用体 union3.其上可进行的操作 据 类型 枚举类型enum 第二章数据描述 指针类型 空类型void 定义类型 typedef
§2.1 数据类型 数据类型总表 C 数 据 类 型 基本类型 构造类型 指针类型 空类型void 定义类型typedef 字符类型char 枚举类型enum 整 型 实型 单精度型float 双精度型double 数组 结构体struct 共用体union 短整型short 长整型long 整型int 数据类型决定: 1. 数据占内存字节数 2. 数据取值范围 3. 其上可进行的操作 语 言 程 序 设 计 第 二 章 数 据 描 述 C
C语言程序设计 ★基本数据类 关键 所占位数 教的表示范围 signedint 16 -3276832767 有( signed)hort 16 32768-32767 (signed)long 2147483648-2147483647 unsigned 31 0~65535 无| unsigned short 16 0~65535 unsigned long 32 0~4294967295 实有foat 32 3.4e-38~3.4c38 型有 double 64 1.7e-308~1.7e308 第字有char 88 -128~127 无| unsigned char 0~255 章数据描述
基本数据类型 类 型 符 号 关键 字 所占位数 数的表示范围 整 型 字 符 型 实 型 有 无 (signed)int 16 -32768~32767 (signed)short 16 -32768~32767 (signed)long 32 -2147483648~2147483647 unsigned 16 int 0~65535 unsigned long 32 0~4294967295 unsigned short 16 0~65535 有 float 32 3.4e-38~3.4e38 有 double 64 1.7e-308~1.7e308 有 char 8 -128~127 无 unsigned char 8 0~255 语 言 程 序 设 计 第 二 章 数 据 描 述 C
C语言程序设计 语§22常量与变量 ★标识 今定义:用来标识变量、常量、函数等的字符序列 今组成: 只能由字母、数字、下划线组成,且第一个字母必须是字母或 下期能 大小写敏感 ●不能使用关键 今长度:最长32个宇符 例:判断下列标识符号合法性 sum Sum M D.John day Date 3days 第二章数据描述 student name #33 lotus 1 2 3 char a>b above $123
§2.2 常量与变量 标识符 ❖定义:用来标识变量、常量、函数等的字符序列 ❖组成: ⚫只能由字母、数字、下划线组成,且第一个字母必须是字母或 下划线 ⚫大小写敏感 ⚫不能使用关键字 ❖长度:最长32个字符 ❖命名原则: ⚫见名知意 ⚫不宜混淆 如l与I, o与0 例:判断下列标识符号合法性 sum Sum M.D.John day Date 3days student_name #33 lotus_1_2_3 char a>b _above $123 b $123 语 言 程 序 设 计 第 二 章 数 据 描 述 C
语言程序设计 ★常量 心定义:程序运行时其值不能改变的量(即常数) 今分类 ●符号常量:用标识符代表常量 ◆定义格式:# define符号常量常量 ◆一般用大写字母 ◆是文处啊如」例符号常量举例p ●直接常量 #define price 30 ◆蓬型常量 main( ◆实型常量 ◆字符常量 int a, p; 第二章数据描述 ◆字符串常量 a=10; p=aPRICE; 运行结果:300 printf(p);
◆一般用大写字母 ◆是宏定义预处理命令,不是C语句 ⚫直接常量: ◆整型常量 ◆实型常量 ◆字符常量 ◆字符串常量 如 #define PRICE 30 常量 ❖定义:程序运行时其值不能改变的量(即常数) ❖分类: ⚫符号常量:用标识符代表常量 ◆定义格式: #define 符号常量 常量 > > > > 例 符号常量举例 #define PRICE 30 main() { int a,p; a=10; p=a*PRICE; printf(p); } 运行结果:300 语 言 程 序 设 计 第 二 章 数 据 描 述 C
C语言程序设计 整型常量(整常数) 今三种形式 ●十选制蓬数:由数字0~9和正负号表示.如123,-456,0 0八进制蕘数:由数字0开头,后跟数字0~7表示,如0123,011 ●十六进制数:由0x开头,后跟0~9,a~f,AF表示 如0x123,0Xff 实型常量(实数或浮点数) 今表示形式 十选制数形式:(必须有小数点)如0.123,.123, 123.0,0.0,123 第二章数据描述 ●指数形式:(e或E之前必须有数字;指数必须为 数)如12.3e3,123E2,1.23e4,e-5,1.2E-3
实型常量(实数或浮点数) ❖表示形式: ⚫十进制数形式:(必须有小数点) 如0.123, .123, 123.0, 0.0, 123. ⚫指数形式:(e或E之前必须有数字;指数必须为整 数)如12.3e3 ,123E2, 1.23e4 , e-5 , 1.2E-3 整型常量(整常数) ❖三种形式: ⚫十进制整数:由数字0~9和正负号表示.如 123,-456,0 ⚫八进制整数:由数字0开头,后跟数字0~7表示.如0123,011 ⚫十六进制整数:由0x开头,后跟0~9,a~f,A~F表示. 如0x123,0Xff < 语 言 程 序 设 计 第 二 章 数 据 描 述 C
C语言程序设计 ASC代码对照表 第二章数据描述
语 言 程 序 设 计 第 二 章 数 据 描 述 C ASCⅡ代码对照表
字符常量 如“a'6A“?“n,4101 今定义:用单引号括起来的单个普通字或转义宇符 心宇符常量的值:该字的 ASCII码值 分转义;尽线后跟一号符,个代码值表示 例转义字符举例 转main0 运行结果:(屏幕显示) printf( 101 x42 Cin"); ABC printf("I say: \"How are you?\"\n"Isay: How are you?" \C Program printf("IC Programlln); Turbo'C' printf( turbo 'C1); 反斜线 双引号 Add 例main 运行结果: 的字符 d { printf(“Yb=n”); 屏幕显示: 打印机输出:羊
字符常量 ❖定义:用单引号括起来的单个普通字符或转义字符. ❖字符常量的值:该字符的ASCII码值 < 转义字符及其含义: 转义字符 含义 \n \v \r \a \‘ \dd d \t \b \f \\ \“ \xhh 转义字符 含义 换行 垂直制表 回车 响铃 单引号 3位8进制数代表的字符 水平制表 退格 换页 反斜线 双引号 2位16进制数代表的字符 如 ‘\101’ -----------‘A’ ‘\012’ -----------’\n’ ‘\376’ -----------’’ ‘\x61’ -----------’a’ ‘\60’ -----------’0’ ‘\483’ ----------() 例: ‘A’-------’\101’-------’\x41’--------65 < 如 ‘A’——65, ‘a’——97, ‘0’——48 , ‘\n’——10 如 ‘a’ ‘A’ ‘?’ ‘\n’ ‘\101’ ❖转义字符:反斜线后面跟一个字符或一个代码值表示 例 转义字符举例 main() { printf("\101 \x42 C\n"); printf("I say:\"How are you?\"\n"); printf("\\C Program\\\n"); printf("Turbo \'C\'"); } 运行结果:(屏幕显示) A B C Isay:”How are you?” \C Program\ Turbo ‘C’ 例 main() { printf(“Y\b=\n”); } 运行结果: 屏幕显示:= 打印机输出:¥
C语言程序设计 语字符串常量 今定义:用双引号(3)括起来的字符序列 心存储:每个字符串尾自动加一个“0作为字 符串结束标志 例字符串“helo”在内存中 0 例空串“” 心宇常量与宇符串常量不同 例 aa “a”a0 第二章数据描述 例: char ch ch=A’;
< ❖字符常量与字符串常量不同 字符串常量 ❖定义:用双引号(“”)括起来的字符序列 ❖存储:每个字符串尾自动加一个 ‘\0’ 作为字 符串结束标志 例 字符串“hello”在内存中 h e l l o \0 例 ‘a’ a “a” a \0 例 空串 “” \0 例: char ch; ch=“A”; 例: char ch; ch=‘A’; 语 言 程 序 设 计 第 二 章 数 据 描 述 C
语★变量 程 今概念:其值可以改变的量 序变量名与变量值 设 计 今变量定义的一般格式 数据类裂变量1,褒量2,…,变量n; 冷变量初利¥:例: 奚骠瑰数汽{,含縣|例 我晶泉旄【}一体每教红大jnta=2,b,c=4; ma mainO 例2{{inta,b=2 float a=1 第二章数据描 c=a float data; n function mai data=(a+b) *1.2 2宇节 sshI printf("data=fin" data 随机数
编译程序根据变量定义为其 分配指定字节的内存单元 …... 地址 int a=1, b=-3,c; a b c 2字节 2字节 2字节 地址 地址 …... 内存 1 -3 随机数 变量 ❖概念:其值可以改变的量 ❖变量名与变量值 ❖变量定义的一般格式: 数据类型 变量1[,变量2,…,变量n]; ❖变量初始化:定义时赋初值 例: int a,b,c; float data; 决定分配字节数 和数的表示范围 合法标识符 例: int a=2,b,c=4; float data=3.67; char ch=‘A’; int x=1,y=1,z=1; int x=y=z=1; ❖变量的使用:先定义,后使用 例1 int student; stadent=19; //Undefined symbol ‘statent’ in function main 例2 float a,b,c; c=a%b; //Illegal use of floating point in function main ❖变量定义位置:一般放在函数开头 main() { int a,b=2; float data; a=1; data=(a+b)*1.2; printf(“data=%f\n”,data); } 变量定义 可执行语句 main() { int a,b=2; a=1; float data; data=(a+b)*1.2; printf(“data=%f\n”,data); } 语 言 程 序 设 计 第 二 章 数 据 描 述 C