第03章数据类型、运算符和表达式

上传人:平*** 文档编号:18090410 上传时间:2017-11-13 格式:DOC 页数:16 大小:137.50KB
返回 下载 相关 举报
第03章数据类型、运算符和表达式_第1页
第1页 / 共16页
第03章数据类型、运算符和表达式_第2页
第2页 / 共16页
第03章数据类型、运算符和表达式_第3页
第3页 / 共16页
第03章数据类型、运算符和表达式_第4页
第4页 / 共16页
第03章数据类型、运算符和表达式_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《第03章数据类型、运算符和表达式》由会员分享,可在线阅读,更多相关《第03章数据类型、运算符和表达式(16页珍藏版)》请在金锄头文库上搜索。

1、C 语言程序设计第 3 章 第 1 页本章重点: 数据类型 算术运算符和算术表达式 赋值运算符和赋值表达式 逗号运算符和逗号表达式第三章 数据类型、运算符和表达式C语言有四种常用数据类型:字符、整型、单精度实型、双精度实型。类型 范围c h a r (字符型) 0 2 5 5i n t(整型) - 3 2 7 6 8 3 2 7 6 7f l o a t(单精度型) 约精确到6位数d o u b l e(双精度型)约精确到1 2位数除此之外,C 语言还提供了几种其他类型,包括数组、指针、结构体、共用体(联合)、位域和枚举等。这些复杂类型在以后的章节中讨论。3.1 常量和变量一、常量1. 常量的

2、概念在程序运行过程中,其值不能被改变的量称为常量。2. 常量的分类整型常量 实型常量 字符常量 符号常量。二、变量1. 变量的概念在程序运行过程中,其值可以被改变的量称为变量。2. 变量名每个变量的名字即变量名,变量命名遵循标识符命名规则。3. 标识符和命名规则(1) 有效字符:只能由字母、数字和下划线组成,且以字母或下划线开头。C 语言程序设计第 3 章 第 2 页(2) 有效长度:随系统而异,但至少前个字符有效。如果超长,则超长部分被舍弃。在 TC V2.0中,变量名(标识符)的有效长度为个字符,缺省值为。(3) C语言的关键字不能用作变量名。(4) 特别注意 C语言对英文字母的大小敏感,

3、即同一字母的大小写,被认为是两个不同的字符。习惯上,变量名和函数名中的英文字母用小写,以增加可读性。4. 变量的定义与初始化在语言中,要求对所有用到的变量,必须先定义、后使用;且在定义变量的同时可以赋初值(初始化) 。(1) 变量定义的一般格式存储类型 数据类型 变量名, 变量名 2;例如:int a, b, c;(2) 变量初始化的一般格式存储类型 数据类型 变量 1=值 1 ,变量 2=值 2 ;例如:int a=3, b=4, c=5;3.2 整型数据一、整型变量1. 分类根据占用内存字节数的不同,整型变量又分为类:(1)基本整型(类型关键字为 int)(2)短整型(类型关键字为 sho

4、rt int)(3)长整型(类型关键字为 long int)(4)无符号整型。分为三种,只能用来存储无符号整数(unsigned int) 基本无符号整型(unsigned short) 无符号短整型(unsigned long) 无符号长整型2. 占用内存字节数与值域上述各类型整型变量占用的内存字节数,随系统而异。ANSI 标准中的数据类型类型 长度 范围int 1 6 - 3 2 7 6 8 3 2 7 6 7short int 16 - 3 2 7 6 8 3 2 7 6 7long int 32 -2 1 4 7 4 8 3 6 4 8 2 1 4 7 4 8 3 6 4 9C 语言程

5、序设计第 3 章 第 3 页unsigned int 16 0 6 5 5 3 5unsigned short 8 0 255unsigned long 32 0 4 2 9 4 9 6 7 2 9 63. 举例main ( )int a; short b;long c=2345678;unsigned u; a=-12; b=24; u=10;printf(%d,%d,%d,%d n, a,b,c,u);4. 说明上述各类型整型变量占用的内存字节数,随系统而异。在赋值和运算时可能溢出,导致不可确定结果。二、整型常量1. 三种表示形式整型常量即整常数,在语言中可用三种形式表示:(1)十进制。例

6、如 10、36。(2)八进制(以数字开头) 。例如 012。(3)十六进制(以数字+小写字母 x 开头) 。例如 0x36main ( )int a=123; int b=010+10;int c=0xffff;int d=10+010+0x10; printf(%d,%d,%d,%d n, a,b,c,d);C 语言程序设计第 3 章 第 4 页2. 分类(1)基本整型。其数据范围与 int 型变量一样。(2)长整型(在数值后面加“L / l ”) 。对数值很大的整型常量,可使用长整型常量表示,其取值范围可达-2 31231-1。例如:123l、315等。3. 说明(1)一个整型常量,可以赋

7、给能容纳下其值的整型变量。例如,其值在- ( -)的整型常量,可以赋给 int 型变量和 long int 型变量;其值在- -(-)的整型常量,就只能赋给 long int 型变量。(2)常量无 unsigned 型。但一个非负整型常量,只要它的值不超过相应变量的值域(即取值范围) ,也可以赋给 unsigned型变量。3.3 实型数据一、实型变量1. 分类根据占用内存字节数的不同,整型变量又分为 3 类:(1)单精度型。类型关键字为 float。(2)双精度型。类型关键字为 double。(3)长双精度型。类型关键字为 long double。( 用的很少)类型 比特数 有效数字 范围fl

8、oat 32 6 7 -3.4*10-38 3.4*1038double 64 15 16 -1.7*10-3081.7*10308long double 128 18 19 -1.2*10-49321.2*1049322. 举例main ( )float a; double b;long double c=-24345345678.1234565433;a=-12.324234; C 语言程序设计第 3 章 第 5 页b=23244.4543345; printf(%d,%d,%d n, a,b,c);二、实型常量1. 表示形式实型常量即实数,在语言中又称浮点数,其值有两种表达形式:(1)十

9、进制形式。例如 3.14、9.8。 (2)指数形式:E(e)。例如 3.0+5 等。2. 说明实型常量不分 float型和 double型。一个实型常量,可以赋给一个实型变量(float 型或 double型) 。3.4 字符型数据一、字符常量1. 定义用一对单引号括起来的单个字符,称为字符常量。例如, A、 、 ! 等。2. 转义字符语言还允许使用一种特殊形式的字符常量,就是以反斜杠“ ”开头的转义字符。注意:如果反斜杠或单引号本身作为字符常量,必须使用转义字符:、 。字符形式 含义 ASCII 代码n 换行 10t 水平制表 9b 退格 9r 回车 13f 换页 12 反斜杠 92 单引号

10、字符 39” 双引号字符 34ddd 任意字符三位八进制C 语言程序设计第 3 章 第 6 页xhh 任意字符二位十六进制3. 举例main()printf(“ ab ct derftgn”);printf(“htibbj k);”);printf(“x4F x4B x21 n”);printf(“x15 xAB n”);执行结果:f gdeh j k! 二、字符变量1. 变量的定义和存储字符变量的类型关键字为 char,占用 1字节内存单元。字符变量用来存储字符常量。将一个字符常量存储到一个字符变量中,实际上是将该字符的 ASCII 码值(无符号整数)存储到内存单元中。char ch1, c

11、h2; /*定义两个字符变量: ch1,ch2*/ch1=a; ch2=b; /*给字符变量赋值 *2. 说明(1)一个字符型数据,既可以字符形式输出,也可以整数形式输出。(2)允许对字符数据进行算术运算,此时就是对它们的 ASCII码值进行算术运算3. 举例例 1 main() char ch1,ch2;C 语言程序设计第 3 章 第 7 页ch1=a; ch2=b; printf(“ch1=%c,ch2=%cn”,ch1,ch2);printf(“ch1=%d,ch2=%dn”,ch1,ch2);程序运行结果:ch1=a,ch2=bch1=97,ch2=98 例 2main() char

12、ch1,ch2;ch1=a; ch2=B;/*字母的大小写转换*/printf(“ch1=%c,ch2=%cn”,ch1-32,ch2+32);程序运行结果:ch1=A,ch2=b4. 总结关于数据存储输出的总结1) 不同类型数据的存储长度不同,能表示数的有效范围也不同2) 不同类型数据赋值时应赋有效值3) 不同类型数据输出时应用相应输出格式符字符型(char) S000 0000整型(int) S000 0000 0000 0000实型(float) S000 0000 0000 0000 0000 0000 0000 0000例 1main() char c=128;printf(“%c”

13、,c);printf(“%d”,c);c=256;C 语言程序设计第 3 章 第 8 页printf(“%c”,c);printf(“%d”,c);例 2main() int x=3.5;int y=0x7fff;printf(“%d”,x);printf(“%d”,y);y=0x8000;printf(“%d”,y);y=0x10000;printf(“%d”,y);y=0x10001;printf(“%d”,y);例 3main() long x=365;printf(“%d”,x);printf(“%Ld”,x);x=0x8000;printf(“%d”,x);printf(“%Ld”,

14、x);x=0x10000;printf(“%d”,x);printf(“%Ld”,x);C 语言程序设计第 3 章 第 9 页x=0x110001;printf(“%d”,x);printf(“%Ld”,x);三、字符串常量1. 字符串常量的概念字符串常量是指用一对双引号括起来的一串字符。双引号只起定界作用。例如: China ,C program, YES , 33312-2341, A 等。2. 字符串的存储和长度C语言中,字符串常量在内存中存储时,系统自动在字符串的末尾加一个“串结束标志”,即 ASCII码值为 0的字符 NULL,常用 0表示。因此在程序中,长度为 n个字符的字符串常量

15、,在内存中占有 n+1个字节的存储空间。例如,字符串 China有 5个字符,作为字符串常量 China 存储于内存中时,共占 6个字节,系统自动在后面加上 NULL字符,其存储形式为:C h i n a 03. 说明要特别注意字符串与字符串常量的区别,除了表示形式不同外,其存储性质也不相同,字符 A 只占 1个字节,而字符串常量 A 占 2个字节。9 9 93.5 各类数值型数据见的混合运算先看下面例子,理解什么是数值数据的混合运算例 1main() int x=3;long y=100float z;C 语言程序设计第 3 章 第 10 页z=x+y;x=y+23;y=z+x;printf(“%d, %d, %d”, x, y, z);不同类型数值数据混合运算时应注意:简单类型赋值给复杂类型可以,反之则有问题3.6 算术运算符和算术表达式一、算术运算

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号