c语言第2讲基本数据类型与表达式.ppt
《c语言第2讲基本数据类型与表达式.ppt》由会员分享,可在线阅读,更多相关《c语言第2讲基本数据类型与表达式.ppt(49页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第 2 2 讲讲 C C语言的基本数据类型语言的基本数据类型与表达式与表达式 2.1 C2.1 C语言的基本数据类型语言的基本数据类型 2.2 2.2 常量与变量常量与变量 2.3 2.3 运算符与表达式运算符与表达式 2.4 2.4 数据类型转换数据类型转换C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页 字符型(字符型(charchar)整型(整型(short,int,long,unsignedshort,int,long,unsigned)单精度型(单精度型(floatfloat)实型实型 双精度型(双精度型(doubledouble)枚举类型(枚举类型
2、(enumenum)数组类型(数组类型()构造类型构造类型 结构体类型(结构体类型(structstruct)共用体类型(共用体类型(unionunion)指针类型(指针类型(*)空类型(空类型(voidvoid)基本类型基本类型数据类型数据类型一、数据类型概述本讲中将对基本类型中的前三类进行介绍和学习。本讲中将对基本类型中的前三类进行介绍和学习。2.1 C2.1 C语言的基本数据类型语言的基本数据类型C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页变量:变量:指指以以标识标识符符为为名字,其名字,其值值可以改可以改变变的量。的量。在学习各种数据类型之前,我们先
3、简单了解一下常量常量和变量变量的概念。常量常量:指在程序运行中指在程序运行中,其数值不能被改变的量。其数值不能被改变的量。变量变量 代表计算机内存中的某一存储空间,变量的类代表计算机内存中的某一存储空间,变量的类型决定了该存储空间的长度和其型决定了该存储空间的长度和其中存放中存放数据的编码方数据的编码方式及存储格式。式及存储格式。变量的类型也决定了该存储空间中存放数据的数据变量的类型也决定了该存储空间中存放数据的数据形式和取值范围。形式和取值范围。C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页 *八进制的数码范围为八进制的数码范围为07;018 *十六进制的十
4、六进制的数码除了数字数码除了数字0 09 9外外,还使用英文字母还使用英文字母a f(或或A F)表示表示1015。如:如:0 x1e 二、整型(采用定点整数的存储格式,只能表示纯整数)1 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)十六进制形式十六进制形式:在数码前加在数码前加0X0X(数字数字0和字母和
5、字母X)。)。例如例如:0 x12=1*16:0 x12=1*161 1+2*16+2*160 0=18(=18(十进制)十进制)C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页 在在16位操作系统中,一般用字节表示一个位操作系统中,一般用字节表示一个int型变量,且型变量,且 long型(字节)型(字节)int型(字节)型(字节)short型(字节)。型(字节)。在在VC+6.0环境中,用环境中,用4字节表示一个字节表示一个int型变量,且型变量,且 long型(字节)型(字节)int型(型(4字节)字节)short型(字节)。型(字节)。查看变量的字节数,即
6、其长度,使用函数查看变量的字节数,即其长度,使用函数sizeof(类型名类型名)2、整型变量的分类:整型变量的分类:根据数据所占的存储长度的不同分为根据数据所占的存储长度的不同分为:int、short、long;同样存储长度的数据又分同样存储长度的数据又分unsigned、signed;故可组合出六种类型。故可组合出六种类型。3、整型变量的值域:整型变量的值域:由机器中数据的存储长度决定由机器中数据的存储长度决定C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页2、实型变量的分类及值域实型变量的分类及值域:关键字关键字 字节数字节数 取值范围取值范围 精度精度(位
7、位)float float 4 3.4 4 3.41010-38 3.43.4101038 7 7 double double 8 1.7 8 1.71010-308 1.71.71010308 1515注意注意三、实型1 1、常量:常量:(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 。小数点不能单独出现
8、;小数点不能单独出现;0.0.0 .0 .e e或或E E的两边必须有数,且其后面必须为整数;的两边必须有数,且其后面必须为整数;如:如:6E0.2 6E0.2 e5e5 C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页 字符形式字符形式 功能功能 n n 换行换行 t t 横向跳格横向跳格 b b 退格退格 r r 回车回车 反斜杠字符反斜杠字符 单引号字符单引号字符 ddd 8 ddd 8进制数表示的进制数表示的ASCIIASCII码对应的字符码对应的字符 xhh 16 xhh 16进制数表示的进制数表示的ASCIIASCII码对应的字符码对应的字符四、字符
9、类型1 1、常量:常量:(1)(1)用单引号括起来的一个字符;如:用单引号括起来的一个字符;如:A、1、?等等。注意注意(1)(1)数值数值0 0、字符、字符0、字符字符0 的区别的区别 (2)大小写对应字母的大小写对应字母的ASCII值相差值相差32(A为为65,a为为97)(2)(2)用单引号括起来的由反斜杠用单引号括起来的由反斜杠()引导的转义字符。引导的转义字符。C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页4 4、字符串常量:字符串常量:是用一对双引号括起来的字符序列。是用一对双引号括起来的字符序列。注意:每个字符串的后面都有一个注意:每个字符串的后
10、面都有一个00结束符。结束符。如如:“SHANGHAI”“SHANGHAI”,“AbcdeFGHijk”“AbcdeFGHijk”,“How“How are are you”you”。注意注意(1)(1)aa与与“a”a”的区别的区别(2)(2)strlenstrlen()()与与sizeofsizeof()()的区别的区别例如:字符例如:字符A A的的ASCIIASCII码为:码为:65D 65D(十进制)(十进制)=41H=41H(十六进制)(十六进制)=101Q=101Q(八进制)(八进制)字符字符A A可以表示为可以表示为AA、x41x41、101101。2、字符型变量的分类:字符型变
11、量的分类:char char 和和 unsigned charunsigned char;3 3、值域值域(字符型可参与数学运算,也可看成一种一字节的整型变量字符型可参与数学运算,也可看成一种一字节的整型变量)每每个个字字符符型型数数据据在在内内存存中中占占一一个个字字节节;包包括括ASCIIASCII字字符符表表中的所有字符(可显示字符和非显示字符)。中的所有字符(可显示字符和非显示字符)。C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页一、常量与符号常量 常量是指在程序运行中常量是指在程序运行中,其数值不能被改变的量。其数值不能被改变的量。常量又可分为直接常
12、量和符号常量。常量又可分为直接常量和符号常量。2.2 2.2 常量与变量常量与变量C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页 120、0120、072;0 xFFFF、0 x1e;120L,200L;长整型常量长整型常量 3.14、5.12E-6;a、#、n、101;099、12f、0 xg、48EA;E-6、6.4E+4.8;changsha、+?ab;、p、ab;1、直接常量:直接常量:是在程序中直接引用的数据。是在程序中直接引用的数据。请请判判断断这这些些常常量量正正确确与与否否:C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下
13、一页下一页 定义形式定义形式:#define 标识符标识符 常量数据常量数据 例如例如:#define PI 3.14159 在程序预处理时,凡是出现标识符在程序预处理时,凡是出现标识符PI的地方都将用的地方都将用数据数据3.14159来替换。来替换。如如:2*2.3*PI 就就等价于等价于 2*2.3*3.14159。变量是指变量是指以以标识标识符符为为名字,其名字,其值值可以改可以改变变的量。的量。变量代表计算机内存中的某一存储空间,该存储空间变量代表计算机内存中的某一存储空间,该存储空间 中存放中存放的数据就是变量的值。的数据就是变量的值。在同一程序块中,在同一程序块中,变量变量不能被重
14、复定义。不能被重复定义。使用变量时必须使用变量时必须“先定义,后使用先定义,后使用”。2、符号常量符号常量 是是用标用标识符来表示一个数据;识符来表示一个数据;在程序不能给它赋值。在程序不能给它赋值。二、变量C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页1、定义形式:定义形式:类型标识符类型标识符 变量名变量名1,变量名变量名2,变量名变量名3.;自己设定,满足自己设定,满足标识符的规定。标识符的规定。如:如:int,int,float,charfloat,char;不可省;不可省2、变量初始化变量初始化 在定义变量的同时给变量一个初始值。在定义变量的同时给变
15、量一个初始值。注意注意int a=5,b=3;int a=5,b=3;int a=b=c=3;int a=b=c=3;int a,b,c;a=b=c=3;int a,b,c;a=b=c=3;例如例如:int a,b,c;float x,y;char c1,c2;或或 int c1,c2;定义变量就是在内存中划出一块相应类型的存储空间存放该变量的值。定义变量就是在内存中划出一块相应类型的存储空间存放该变量的值。C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页#include main main()int x int x,y y,z z,w w;/*/*定义定义x
16、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=%dn”,z z,w w);例例2-1:程序运行结果为:程序运行结果为:x+k=40 x+k=40,y+k=10y+k=10 变量根据作用域的不同可分为变量根据作用域的不同可分为局部变量局部变量和和全局变量全局变量,根据存,根据存储方式
17、的不同可分为储方式的不同可分为静态存储变量静态存储变量和和动态存储变量动态存储变量,这些我们将,这些我们将在后面详细介绍。在后面详细介绍。C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页1、以下合法的字符型常量是、以下合法的字符型常量是 A x13 B 081 C 65 D n2、已知大写字母、已知大写字母A的的ASCII码是码是65,小写字母,小写字母a的的ASCII码是码是97。以下不能将变量。以下不能将变量c中的大写字母转换为对应小写字母的语句是中的大写字母转换为对应小写字母的语句是 A c=(c-A)%26+a B c=c+32 C c=c-A+a D
18、c=(A+c)%26-a3.以下选项中,合法的一组以下选项中,合法的一组C语言数值常量是语言数值常量是A)028 B)12.C).177 D)0 x8A .5e-3 0Xa23 4e1.5 10,000 .0 xf 4.5e0 0abc 3.e54.以下关于以下关于long、int和和short类型数据占用内存大小的叙述中正确的是类型数据占用内存大小的叙述中正确的是A)均占均占4个字节个字节 B)根据数据的大小来决定所占内存的字节数根据数据的大小来决定所占内存的字节数C)由用户自己定义由用户自己定义D)由由C语言编译系统决定语言编译系统决定5.以下选项中不属于字符常量的是以下选项中不属于字符常
19、量的是A)CB)CC)xCCD)072C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页实验内容实验二实验二题目题目2 2:完成从键盘输入一个:完成从键盘输入一个1010以内的数字,在屏以内的数字,在屏幕上输出这个数字的幕上输出这个数字的3 3次方。次方。题目题目3 3:从键盘上输入两个数字,在屏幕上输出这:从键盘上输入两个数字,在屏幕上输出这两个的加减乘除的结果。两个的加减乘除的结果。C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页 在数学里当多个运算符一起组成一个表达式时,我们规在数学里当多个运算符一起组成一个表达式时,我们规定
20、了定了优先级优先级(先乘除后加减)和(先乘除后加减)和结合规则结合规则(从左至右)。(从左至右)。同样,在同样,在C语言中,我们也规定了每个运算符的结合规语言中,我们也规定了每个运算符的结合规则及运算符之间的优先级。则及运算符之间的优先级。2.3 2.3 运算符与表达式运算符与表达式运算符:就是表示某种运算功能的符号。运算符:就是表示某种运算功能的符号。按操作功能运算符大致可分为:按操作功能运算符大致可分为:算术运算符、关系运算术运算符、关系运算符、逻辑运算符、赋值运算符、算符、逻辑运算符、赋值运算符、条件运算符、逗号运算条件运算符、逗号运算符以及符以及位运算符位运算符等。等。表达式:是由操作
21、数和运算符组成的序列。表达式:是由操作数和运算符组成的序列。如:如:1+2*3-4、35-7、a=b%2 等都是等都是C语言中的表达式。语言中的表达式。下面分类介绍各种运算符:下面分类介绍各种运算符:C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页%(%(取余取余)(注意:取余运算的操作数只能是整数注意:取余运算的操作数只能是整数,结果的符号与被除数相同结果的符号与被除数相同)一、一、算术运算符和算术表达式算术运算符和算术表达式1 1、运算符运算符 +(+(加加):3+43+4、+3+3 -(-(减减):3-53-5、-5-5 *(*(乘乘):3*53*5 /(
22、/(除除):5/25/2、5.0/2 5.0/2(注意,此二种形式,结果不同注意,此二种形式,结果不同)5%35%3的值为的值为2 2;-5%3 -5%3的值为的值为-2-2;5%(-3)5%(-3)的值为的值为2 2;-5%(-3)-5%(-3)的值为的值为-2-2;12.3%3 12.3%3 若若a%b a%b 的结果为的结果为0 0,则有,则有a a能被能被b b整除整除C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页 2 2、算术表达式算术表达式 用算术运算符和括符将操作数连接起来的式子。用算术运算符和括符将操作数连接起来的式子。优先级:()优先级:()
23、*、/、%+%+、-结合性:从左至右;结合性:从左至右;表达式的值:表达式的值:数值型数值型(int(int、longlong、unsignedunsigned、floatfloat、double)double);例如:例如:已知:已知: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)=?C语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页 float a=2.0;int b=6,c=3;float a=2.0;int b=6
24、,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.5 +97(int)+97(int)99.5 99.5 +5+5104.5104.5思考思考 int a=1,b=2;表达式表达式a/b+3的结果是多少?的结果是多少?double floatunsigned long long unsigned int int char,shortC语言程序设计C语言程序设计C语言程序设计C语言程序设计上一页上一页下一页下一页等价于:等价于:j=i;i+;j=i;i+;所以所以i i的值为的值为4 4,
25、j j的值为的值为3 3等价于:等价于:i+;j=i;i+;j=i;所以所以i i的值为的值为4 4,j j的值为的值为4 4(1)i=3;(1)i=3;j=i+;j=i+;(2)i=3;(2)i=3;j=+i;j=+i;3 3、自增与自减运算符自增与自减运算符(+、-)+i,-i+i,-i:使用之前使:使用之前使i i的值增的值增1 1(或减(或减1 1););i+,i-i+,i-:使用之后使:使用之后使i i的值增的值增1 1(或减(或减1 1););分析下面几种情况中分析下面几种情况中i与与j的值:的值:当当+、-不与其他运算符混合使用时,不与其他运算符混合使用时,+i+i与与i+i+都
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 基本 数据类型 表达式
限制150内