C语言的基本数据类型与表达式.ppt
《C语言的基本数据类型与表达式.ppt》由会员分享,可在线阅读,更多相关《C语言的基本数据类型与表达式.ppt(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第 2 2 章章 C C语言的基本数据类型与表达式语言的基本数据类型与表达式 2.1 C语言的基本数据类型 2.2 常量和变量 2.3 运算符与表达式 2.4 数据类型转换C C语言程序设计教程语言程序设计教程1C语言程序设计教程16-Jan-23 字符型(字符型(charchar)整型(整型(short,int,long,unsignedshort,int,long,unsigned)单精度型(单精度型(floatfloat)实型实型 双精度型(双精度型(doubledouble)枚举类型(枚举类型(enumenum)数组类型(数组类型()构造类型构造类型 结构体类型(结构体类型(stru
2、ctstruct)共用体类型(共用体类型(unionunion)指针类型(指针类型(*)空类型(空类型(voidvoid)基本类型基本类型数据类型数据类型2.1 C2.1 C语言的基本数据类型语言的基本数据类型一、数据类型概述第2章 C语言的基本数据类型与表达式2C语言程序设计教程16-Jan-23类型名类型名字宽字宽(字节字节)Char1Signedchar1Unsignedchar1Shortint2Signedshortint2Unsignedshortint2int2或或4Signedint2或或4Unsignedint2或或4Longint4Signedlongint4Unsigne
3、dlongint4Float4Double8Longdouble16int000000020004000600080010floatdouble第2章 C语言的基本数据类型与表达式3C语言程序设计教程16-Jan-231 1、常量:常量:(1)(1)十进制形式十进制形式:与数学上的整数表示相同;与数学上的整数表示相同;例如例如:12,-100,0:12,-100,0(2)(2)八进制形式八进制形式:在数码前加数字在数码前加数字0 0;例如例如:012=1*8:012=1*81 1+2*8+2*80 0=10(=10(十进制)十进制)(3)(3)十六进制形式十六进制形式:在数码前加在数码前加0X
4、0X(数字数字0和字母和字母X)。)。例如例如:0 x12=1*16:0 x12=1*161 1+2*16+2*160 0=18(=18(十进制)十进制)*八进制的数码范围为八进制的数码范围为07;018 *十六进制的十六进制的数码除了数字数码除了数字0 09 9外外,还使用英文字母还使用英文字母a f(或或A F)表示表示1015。如:如:0 x1e 二、整型第2章 C语言的基本数据类型与表达式4C语言程序设计教程16-Jan-232、分类:分类:根据数据所占的二进制位数分为根据数据所占的二进制位数分为:int、short、long;同样存储长度的数据又分同样存储长度的数据又分unsigne
5、d、signed;故可组合出六种类型。缺省值为故可组合出六种类型。缺省值为shortshort。如:如:25(short),25l(25(short),25l(长整型长整型),25u(),25u(无符号无符号),25ul(),25ul(无符号长无符号长)3、值域:值域:由机器中数据的存储长度决定。由机器中数据的存储长度决定。如如Turbo C中,有中,有short(2字节字节)int(2字节字节)long(4字节字节)关键字关键字 所占位数所占位数取值范围取值范围 short 16(2B)short 16(2B)-32768-327683276732767 unsigned short 16(
6、2B)unsigned short 16(2B)0 06553565535 int 16(2B)int 16(2B)-32768-327683276732767 unsigned 16(2B)unsigned 16(2B)0 06553565535 long 32(4B)-2147483648 long 32(4B)-214748364821474836472147483647 unsigned long 32(4B)unsigned long 32(4B)0 042949672954294967295第2章 C语言的基本数据类型与表达式5C语言程序设计教程16-Jan-231 1、常量:常量
7、:(1)(1)十进制小数形式:十进制小数形式:由数字和小数点组成;由数字和小数点组成;例如例如:3.4,4.,.3:3.4,4.,.3。(2)(2)指数形式:指数形式:“十进制小数十进制小数”+“e(”+“e(或或E)”+“E)”+“十进制数整十进制数整数数”。例如例如:12.5e-6:12.5e-6 表示表示12.512.51010-6 。小数点不能单独出现;小数点不能单独出现;0.0.0 .0 .e e或或E E的两边必须有数,且其后面必须为整数;的两边必须有数,且其后面必须为整数;如:如:6E0.2 6E0.2 e5e5 2、分类:分类:关键字关键字 字节数字节数 取值范围取值范围 精度
8、精度(位位)float 4 3.4 float 4 3.41010-383.43.41010387 7 double 8 1.7 double 8 1.71010-3081.71.710103081515 缺省值类型为缺省值类型为doubledouble。注意注意第2章 C语言的基本数据类型与表达式三、实型6C语言程序设计教程16-Jan-231 1、常量:常量:(1)(1)用单引号括起来的一个字符;如:用单引号括起来的一个字符;如:A、1、?等等。(2)(2)用单引号括起来的由反斜杠用单引号括起来的由反斜杠()引导的转义字符。引导的转义字符。字符形式字符形式 功能功能 n n 换行换行 t
9、t 横向跳格横向跳格 b b 退格退格 r r 回车回车 反斜杠字符反斜杠字符 单引号字符单引号字符 ddd 8 ddd 8进制数表示的进制数表示的ASCIIASCII码对应的字符码对应的字符 xhh 16 xhh 16进制数表示的进制数表示的ASCIIASCII码对应的字符码对应的字符第2章 C语言的基本数据类型与表达式四、字符类型7C语言程序设计教程16-Jan-23例如:字符例如:字符A A的的ASCIIASCII码为:码为:65D 65D(十进制)(十进制)=41H=41H(十六进制)(十六进制)=101Q=101Q(八进制)(八进制)字符字符A A可以表示为可以表示为AA、x41x4
10、1、101101。2、分类:分类:char char 和和 unsigned charunsigned char;3 3、值域:值域:每每个个字字符符型型数数据据在在内内存存中中占占一一个个字字节节;包包括括ASCIIASCII字字符符表中的所有字符(可显示字符和非显示字符)。表中的所有字符(可显示字符和非显示字符)。4 4、字符串:字符串:是用一对双引号括起来的字符序列。是用一对双引号括起来的字符序列。如:如:“SHANGHAI”“SHANGHAI”,“AbcdeFGHijk”“AbcdeFGHijk”,“How are you”“How are you”。注意注意第2章 C语言的基本数据类
11、型与表达式 a a与与“a”“a”的区别。的区别。8C语言程序设计教程16-Jan-23一、常量与符号常量 常量是指在程序运行中常量是指在程序运行中,其数值不能被改变的量。其数值不能被改变的量。常量又可分为直接常量和符号常量。常量又可分为直接常量和符号常量。第2章 C语言的基本数据类型与表达式2.2 2.2 常量与变量常量与变量9C语言程序设计教程16-Jan-23120、-100、0;0120、072;0 xFFFF、0 x1e、0X28AF,0XED4;120L,200L;长整型常量长整型常量3.14、-3.1、5.12E-6;a、#、n、101;099、12f、0 xg、48EA;019
12、.5、1e-08;实型常量只能用十进制形式表示实型常量只能用十进制形式表示2.1E10.2、E-6、6.4E+4.8、E9;changsha、+?ab;、p、ab;第2章 C语言的基本数据类型与表达式1、直接常量:直接常量:是在程序中直接引用的数据。是在程序中直接引用的数据。请请判判断断这这些些常常量量正正确确与与否否:10C语言程序设计教程16-Jan-232、符号常量符号常量是是用标用标识符来表示一个数据;识符来表示一个数据;在程序不能给它赋值。在程序不能给它赋值。定义形式定义形式:#define 标识符标识符 常量数据常量数据 例如例如:#define PI 3.14159 在程序预处理
13、时,凡是出现标识符在程序预处理时,凡是出现标识符PI的地方都将用的地方都将用数据数据3.14159来替换。来替换。如如:2*2.3*PI 就就等价于等价于2*2.3*3.14159。第2章 C语言的基本数据类型与表达式二、变量 变量是指变量是指以以标识标识符符为为名字,其名字,其值值可以改可以改变变的量。的量。变量代表计算机内存中的某一存储空间,该存储空间变量代表计算机内存中的某一存储空间,该存储空间中存放中存放的数据就是变量的值。的数据就是变量的值。在同一程序块中,在同一程序块中,变量变量不能被重复定义。不能被重复定义。使用变量时必须使用变量时必须“先定义,后使用先定义,后使用”。11C语言
14、程序设计教程16-Jan-231、定义形式:定义形式:类型标识符类型标识符:变量名变量名1,变量名变量名2,变量名变量名3.;例如例如:int a,b,c;float x,y;char c1,c2;或或 int c1,c2;自己设定,满足自己设定,满足标识符的规定。标识符的规定。如:如:int,int,float,charfloat,char;不可省;不可省第2章 C语言的基本数据类型与表达式2、变量初始化变量初始化 在说明变量的同时给变量一个初始值。在说明变量的同时给变量一个初始值。例如例如int a=5,b=3;int a=5,b=3;int a=b=c=3;int a=b=c=3;int
15、 a,b,c;a=b=c=3;int a,b,c;a=b=c=3;变量名变量名a变量地址变量地址5变量值变量值12C语言程序设计教程16-Jan-23mainmain()int x int x,y y,z z,w w;/*/*定义定义x x,y y,z z,w w为整型变量为整型变量*/*/unsigned int k unsigned int k;/*/*定义定义k k为无符号整型变量为无符号整型变量*/*/x=10 x=10;y=-20y=-20;k=30k=30;z=x+k z=x+k;w=y+kw=y+k;printf printf(“x+k=%d“x+k=%d,y+k=%dn”y+k
16、=%dn”,z z,w w);第2章 C语言的基本数据类型与表达式例例2-1:程序运行结果为:程序运行结果为:x+k=40 x+k=40,y+k=10y+k=1013C语言程序设计教程16-Jan-23例,完善程序(例,完善程序(s1-3.c)程程序序功功能能:下下面面的的程程序序是是求求整整数数a/b的的商商和和余余数数,请用正确的表达式填空。请用正确的表达式填空。main()inta,b,c,d;a=100;b=30;_printf(“a=%d,b=%d,c=%d,d=%dn”,a,b,c,d);第2章 C语言的基本数据类型与表达式14C语言程序设计教程16-Jan-23 按操作功能运按操
17、作功能运算符大致可分为算符大致可分为算算术运算符、关系运术运算符、关系运算符、逻辑运算符、算符、逻辑运算符、按位运算符以及其按位运算符以及其它运算符如赋值运它运算符如赋值运算符、算符、条件运算符、条件运算符、逗号运算符等。逗号运算符等。单单目目、双双目目、三目运算符三目运算符 表表达达式式是是由由操操作作数数和和运运算算符符组组成成的序列。的序列。第2章 C语言的基本数据类型与表达式2.3 2.3 运算符与表达式运算符与表达式算术运算符算术运算符+-*/%+-*/%关系运算符关系运算符 =!=!=逻辑运算符逻辑运算符 !&位运算符位运算符|&|&赋值运算符赋值运算符=条件运算符条件运算符?:逗
18、号运算符逗号运算符 ,指针运算符指针运算符*和和&求字节数运算符求字节数运算符 sizeof sizeof强制类型转换运算符强制类型转换运算符分量运算符分量运算符 下标运算符下标运算符 15C语言程序设计教程16-Jan-23一、算术运算符和算术表达式 1 1、运算符运算符 +(+(加加):3+43+4、+3 -(+3 -(减减):3-53-5、-5 *(-5 *(乘乘):3*53*5 /(/(除除):5/25/2的值为的值为2 2;5.0/25.0/2的值为的值为2.52.5;如如果果两两个个操操作作数数均均为为intint,则则结结果果也也是是intint,小小数数部部分将去掉。如果两个数
19、中有浮点型,则结果也是分将去掉。如果两个数中有浮点型,则结果也是floatfloat。例如:例如:3.0+1/2*(98%100)3.0+1/2*(98%100)%(%(取余取余):5%35%3的值为的值为2 2;-5%3-5%3的值为的值为-2-2;5%(-3)5%(-3)的值为的值为2 2;-5%(-3)-5%(-3)的值为的值为-2-2;两个操作数如果符号不同,结果以左操作数为准两个操作数如果符号不同,结果以左操作数为准 两个操作数只能为两个操作数只能为intint或或charchar 若若a a能被能被b b整除,则有:整除,则有:a%b=0a%b=0。整数除与求余运算存在如下关系:整
20、数除与求余运算存在如下关系:a%b=a-a/b*b a%b=a-a/b*b。例如:例如:25+25+b b+a a%12.3-(-8)/%12.3-(-8)/c c*100*100 第2章 C语言的基本数据类型与表达式16C语言程序设计教程16-Jan-232 2、算术表达式算术表达式 用算术运算符和括符将操作数连接起来的式子。用算术运算符和括符将操作数连接起来的式子。优先级:()优先级:()*、/、%+%+、-结合性:从左至右;结合性:从左至右;表达式的值:表达式的值:数值型数值型(int(int、longlong、unsignedunsigned、double)double);例如:例如:
21、已知:已知:float a=2.0;float a=2.0;int b=6,c=3;int b=6,c=3;求解:求解:a*b/c-1.5+a+fabs(-5)=a*b/c-1.5+a+fabs(-5)=?第2章 C语言的基本数据类型与表达式17C语言程序设计教程16-Jan-23 doublefloatlongunsignedintchar,short float a=2.0;int b=6,c=3;float a=2.0;int b=6,c=3;a*b/c-1.5+a+fabs(-5)a*b/c-1.5+a+fabs(-5)12.012.0/3/354.0 4.0-1.5-1.52.5 2
22、.5 +97(int)+97(int)99.5 99.5 +5+5104.5104.5(double)(double)第2章 C语言的基本数据类型与表达式18C语言程序设计教程16-Jan-23 1 1、6 6种关系运算符:双目:种关系运算符:双目:=!=!=2 2、关系表达式:关系表达式:用关系运算符将表达式连接起来的式子用关系运算符将表达式连接起来的式子 优先级:优先级:(=)(=)(=!=)(=!=)结合性:自左至右;结合性:自左至右;表达式的值:表达式的值:若为真,则结果为若为真,则结果为1 1;若为假,则结果为若为假,则结果为0 0。35 35 的值为的值为 0 0;32 32 的值
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 基本 数据类型 表达式
限制150内