c语言程序设计教程第2章

上传人:san****019 文档编号:70778856 上传时间:2019-01-18 格式:PPT 页数:42 大小:650.31KB
返回 下载 相关 举报
c语言程序设计教程第2章_第1页
第1页 / 共42页
c语言程序设计教程第2章_第2页
第2页 / 共42页
c语言程序设计教程第2章_第3页
第3页 / 共42页
c语言程序设计教程第2章_第4页
第4页 / 共42页
c语言程序设计教程第2章_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《c语言程序设计教程第2章》由会员分享,可在线阅读,更多相关《c语言程序设计教程第2章(42页珍藏版)》请在金锄头文库上搜索。

1、第 2 章 C语言的基本数据类型与表达式 2.1 C语言的基本数据类型 2.2 常量和变量 2.3 运算符与表达式 2.4 数据类型转换,C语言程序设计教程,2,2.1 C语言的基本数据类型,一、数据类型概述,第2章 C语言的基本数据类型与表达式,3,1、常量: (1) 十进制形式:与数学上的整数表示相同; 例如: 12, -100, 0 (2) 八进制形式:在数码前加数字0; 例如: 012=1*81+2*80=10(十进制) (3) 十六进制形式:在数码前加0X(数字0和字母X)。 例如: 0x12=1*161+2*160=18(十进制) * 八进制的数码范围为07; 018 * 十六进制

2、的数码除了数字09外, 还使用英文字母a f (或A F)表示1015。 如:0x1e ,注意!,二、整型,第2章 C语言的基本数据类型与表达式,4,2、分类: 根据数据所占的二进制位数分为:int、short、long; 同样存储长度的数据又分unsigned、signed; 故可组合出六种类型。 3、值域: 由机器中数据的存储长度决定。 如Turbo C中,有 short(2字节)int(2字节) long(4字节) 关键字 所占位数 取值范围 short 16 -3276832767 unsigned short 16 065535 int 16 -3276832767 unsigned

3、 16 065535 long 32 -21474836482147483647 unsigned long 32 04294967295,第2章 C语言的基本数据类型与表达式,5,1、常量: (1) 十进制小数形式:由数字和小数点组成; 例如: 3.4, 4., .3。 (2) 指数形式:“十进制小数”+“ e(或E)”+“十进制数整数”。 例如: 12.5e-6 表示12.510-6 。 小数点不能单独出现; 0. .0 . e或E的两边必须有数,且其后面必须为整数; 如: 6E0.2 e5 2、分类: 关键字 字节数 取值范围 精度(位) float 4 3.410-38 3.41038

4、 7 double 8 1.710-308 1.710308 15,注意,第2章 C语言的基本数据类型与表达式,三、实型,6,1、常量: (1) 用单引号括起来的一个字符;如:A、 1、?等。 (2) 用单引号括起来的由反斜杠()引导的转义字符。 字符形式 功能 n 换行 t 横向跳格 b 退格 r 回车 反斜杠字符 单引号字符 ddd 8进制数表示的ASCII码对应的字符 xhh 16进制数表示的ASCII码对应的字符,第2章 C语言的基本数据类型与表达式,四、字符类型,7,例如:字符A的ASCII码为: 65D(十进制)=41H(十六进制)=101Q(八进制) 字符A可以表示为A、x41、

5、101。 2、分类: char 和 unsigned char; 3、值域: 每个字符型数据在内存中占一个字节;包括ASCII字符表中的所有字符(可显示字符和非显示字符)。 4、字符串: 是用一对双引号括起来的字符序列。 如:“SHANGHAI”,“AbcdeFGHijk”,“How are you”。,注意,第2章 C语言的基本数据类型与表达式, a与“a”的区别。,8,一、常量与符号常量 常量是指在程序运行中,其数值不能被改变的量。 常量又可分为直接常量和符号常量。,第2章 C语言的基本数据类型与表达式,2.2 常量与变量,9,120 、 -100、 0; 0120、 072; 0xFFF

6、F、 0x1e、0X28AF,0XED4 ; 120L, 200L ; 长整型常量 3.14、 -3.1、 5.12E-6 ; a 、#、n、101 ; 099、12f、 0xg 、48EA ; 019.5 、1e-08; 实型常量只能用十进制形式表示 2.1E10.2、E-6、6.4E+4.8、E9 ; “changsha“ 、“+?ab“ ; 、p 、ab ;,第2章 C语言的基本数据类型与表达式,1、直接常量:是在程序中直接引用的数据。,请判断这些常量正确与否:,10,2、符号常量 是用标识符来表示一个数据;在程序不能给它赋值。 定义形式: #define 标识符 常量数据 例如: #d

7、efine PI 3.14159 在程序预处理时,凡是出现标识符PI的地方都将用 数据3.14159来替换。 如: 2*2.3*PI 就等价于 2*2.3*3.14159。,第2章 C语言的基本数据类型与表达式,二、 变量 变量是指以标识符为名字,其值可以改变的量。 变量代表计算机内存中的某一存储空间,该存储空间 中存放的数据就是变量的值。 在同一程序块中,变量不能被重复定义。 使用变量时必须“先定义,后使用”。,11,第2章 C语言的基本数据类型与表达式,2、变量初始化 在说明变量的同时给变量一个初始值。,例如,int a=5, b=3; int a=b=c=3; int a,b,c; a=

8、b=c=3; ,12,main( ) int x,y,z,w; /*定义x,y,z,w为整型变量*/ unsigned int k; /*定义k为无符号整型变量*/ x=10;y=-20;k=30; z=x+k;w=y+k; printf(“x+k=%d,y+k=%dn”,z,w); ,第2章 C语言的基本数据类型与表达式,例2-1:,程序运行结果为: x+k=40,y+k=10,13,3、局部变量 C语言程序是由函数组成的,且有且只能有一个main函数。 变量定义可以出现在函数内,亦可出现在函数外或者是函数的参数中。,按照变量定义语句出现的位置,可以分为:,局部变量:在函数内定义; 只在该函

9、数中才能使用。 全局变量:在函数外定义; 从它被定义的位置起,在之后的所有函数中有效。 形式参数:定义为函数的参数; 只在该函数中才能使用。,第2章 C语言的基本数据类型与表达式,14,第2章 C语言的基本数据类型与表达式,在函数内部说明的变量或者在复合语句中定义的变量称为局部变量。其作用范围是其所在的函数或复合语句。,15,第2章 C语言的基本数据类型与表达式,又称全程变量或外部变量,在函数外部说明。其作用范围从它被定义的位置起,在之后的程序段中都是起作用的。,4、全局变量,16,第2章 C语言的基本数据类型与表达式,如果在全局变量定义之前的函数想引用该外部变量,则应该在该函数中用关键字ex

10、tern作“外部变量说明”。,17,int a, b; void swap( ) int t; t = a; a = b; b = t; printf(“swap:a=%d,b=%dn”,a,b); main() printf(“ Enter a,b:”); scanf(“%d,%d”, ,Enter a,b:5,3 swap:a=3,b=5 main:a=3,b=5,第2章 C语言的基本数据类型与表达式,运行结果,18,int a, b; void swap( ) int t; t = a; a = b; b = t; printf(“swap:a=%d,b=%dn”,a,b); main(

11、) printf(“ Enter a,b:”); scanf(“%d,%d”, ,第2章 C语言的基本数据类型与表达式,运行结果,int a,b;,程序在编译时,屏幕将 提示有错误: Undefine symbol a Undefine symbol b,19,int a, b; void swap( ) int t; t = a; a = b; b = t; printf(“swap:a=%d,b=%dn”,a,b); main() printf(“ Enter a,b:”); scanf(“%d,%d”, ,第2章 C语言的基本数据类型与表达式,运行结果,int a,b;,int a=5,

12、b=3;,Enter a,b:5,3 swap:a=3,b=5 main:a=5,b=3,20,按操作功能运算符大致可分为算术运算符、关系运算符、逻辑运算符、按位运算符以及其它运算符如赋值运算符、条件运算符、逗号运算符等。 表达式是由操作数和运算符组成的序列。,第2章 C语言的基本数据类型与表达式,2.3 运算符与表达式,算术运算符 + - * / % 关系运算符 = = = != 逻辑运算符 ! & 位运算符 | & 赋值运算符 = 条件运算符 ?: 逗号运算符 , 指针运算符 * 和 & 求字节数运算符 sizeof 强制类型转换运算符 分量运算符 下标运算符 ,21,一、 算术运算符和算

13、术表达式 1、 运算符 +(加):3+4、 +3 -(减):3-5、 -5 *(乘):3*5 /(除):5/2的值为2;5.0/2的值为2.5; %(取余):5%3的值为2; -5%3的值为-2; 5%(-3)的值为2; -5%(-3)的值为-2; 12.3%3 若a能被b整除,则有:a%b=0,第2章 C语言的基本数据类型与表达式,22,2、算术表达式 用算术运算符和括符将操作数连接起来的式子。 优先级:() *、/、% +、- 结合性:从左至右; 表达式的值: 数值型(int、long、unsigned、double);,例如: 已知: float a=2.0; int b=6,c=3;

14、求解: a*b/c-1.5+a+fabs(-5)=?,第2章 C语言的基本数据类型与表达式,23,float a=2.0; int b =6,c =3; a*b/c -1.5 +a +fabs(-5),12.0/3,5,4.0 - 1.5,2.5 + 97(int),99.5 + 5,104.5(double),第2章 C语言的基本数据类型与表达式,24,3、自增与自减运算符 +i,-i:使用之前使i的值增1(或减1); i+,i-:使用之后使i的值增1(或减1);,等价于 i=i+1;,j=i;i+; 所以i的值为4,j的值为3。,i+;j=i; 所以i的值为4,j的值为4。,例如:,(1) i+; +i; (2) i=3; j=i+; (3) i=3; j=+i;,第2章 C语言的基本数据类型与表达式,25, 结合性:自右至左。 如: i = 2; j = -i+; 等价于:j=-(i+); 即: j=-i;i+; “+”与”-“是同优先级 所以i的值为3,j的值为-2。,第2章 C语言的基本数据类型与表达式, 注意 “+”或“-”自增与自减运算符的使用,不建议使用如下表达式! 如:设i=3,k=(i+)+(i+)+(i+),k=? 如:设i=3,j=4,k=i+j,k=?,26,1、6种关系运算符:= = != 2、关

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

当前位置:首页 > 高等教育 > 大学课件

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