第2章基本数据类型、运算符与表达式_第1页
第2章基本数据类型、运算符与表达式_第2页
第2章基本数据类型、运算符与表达式_第3页
第2章基本数据类型、运算符与表达式_第4页
第2章基本数据类型、运算符与表达式_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、下一讲下一讲1. 一个一个C程序的执行是从程序的执行是从_。A)本程序的本程序的main函数开始,到函数开始,到main函数结束函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的本程序的main函数开始,到本程序文件的最后一个函数结束函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序本程序文件的第一个函数开始,到本程序main函数结束函数结束ABC语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C程 序是什么? 语语言言程程序序设设计计 第第二二章章 基

2、基本本数数据据类类型型C语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C字符型数据是以字符型数据是以ASCII码值存储在计算机中,占用码值存储在计算机中,占用1个字节个字节例如字符例如字符A存放形式:存放形式:0 1 0 0 0 0 0 1例如字符例如字符E存放形式:存放形式:0 1 0 0 0 1 0 1A的的ASCII码值码值65E的的ASCII码值码值69整型数据存储在计算机中,占用整型数据存储在计算机中,占用2个字节个字节例如例如9存放形

3、式:存放形式: 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1最高位是符号位最高位是符号位,其值其值0表示正数表示正数,1表示负数。表示负数。 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1例如例如-9存放形式:存放形式:语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C单精度实型数据存储在计算机中,占用单精度实型数据存储在计算机中,占用4个字节个字节例如例如26.7510=(11010.11)2 =(-1)025 (0.1101011)226.75的存储形式:的存储形式:0 1 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0

4、 0 0 0 0 0 1 0 0 0 0 1 0 1S M E31 30. 8 7 0其中其中S表示数值的正负号,表示数值的正负号,0表示正,表示正,1表示负。表示负。M表示规格化的数值表示规格化的数值,即首位小数不为即首位小数不为0。M确定了数值的精度。确定了数值的精度。E用移码表示指数。用移码表示指数。浮点数的一般表达形式浮点数的一般表达形式(-1)S 2e规格化的尾数规格化的尾数 E= 27 +e -27e27-26.75的存储形式:的存储形式:1 1 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 1语语言言程程序序设

5、设计计 第第二二章章 基基本本数数据据类类型型C 例:判断下列标识符号合法性sum Sum M.D.John day Date 3days student_name #33 lotus_1_2_3 char ab _above $123M.D.John3days#33char$123ab . . 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C# # #define NUM 20 #define PI 3.1415926 运行结果:运行结果:total = 300 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型Cint x, y, z;float radiu

6、s, length, area; char ch;决定分配字节数和数的表示范围合法标识符例: int a = 2, b, c = 4; float data = 3.67; char ch = A; int x = 1, y = 1, z = 1; 编译程序根据变量定义为其分配指定字节的内存单元地址short int a=1, b=-3, c;abc2字节2字节2字节地址地址内存.1-3随机数例1: int student; stadent = 19; /Undefined symbol statent in function main 例2: float a,b,c; c = a % b;

7、/Illegal use of floating point in function main void main ( ) int a, b = 2; float data; a = 1; data = (a + b) * 1.2; printf (“data=%fn”, data);变量定义可执行语句void main ( ) int a, b = 2; a = 1; float data; data = (a + b) * 1.2; printf(“data=%fn”,data);语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 定义整数的符号常量定义整数的符号常量 #d

8、efine NUM1 20 /#define NUM1 20 /十进制数十进制数2020 #define NUM2 020 / #define NUM2 020 /八进制数(十进制八进制数(十进制1616) #define NUM3 0 x2a /#define NUM3 0 x2a /十六进制数(十进制十六进制数(十进制4242)思考题:下列整型常量哪些是非法的?思考题:下列整型常量哪些是非法的? 012012,oX7AoX7A,0000,078078,0 x5Ac0 x5Ac,-0 xFFFF-0 xFFFF,00340034,7B7B。首字符不能首字符不能是字母是字母o o 八进制数中不

9、八进制数中不能有数字能有数字8 8 十进制数中不十进制数中不能有字母能有字母B B 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C低字节低字节高字节高字节低地址低地址高地址高地址符号位符号位 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 低字节低字节高字节高字节低地址低地址高地址高地址符号位符号位 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 低地址低地址高地址高地址 低字节低字节高字节高字节符号位符号位溢出!溢出!溢出!溢出!语语言言程程序序设设计计 第第二二章

10、章 基基本本数数据据类类型型C 低字节低字节高字节高字节低地址低地址高地址高地址 符号位,符号位,表示负表示负 。语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C例:例: int a; int x, y, z; int m = 2, y = -3; 低地址低地址高地址高地址低字节低字节高字节高字节 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 低字节低字节高字节高字节低地址低地址高地址高地址语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第

11、二二章章 基基本本数数据据类类型型C/文件包含文件包含, ,头文件说明头文件说明 /定义符号常量定义符号常量SUMSUM,值为,值为6553565535 /定义两个定义两个intint型变量型变量a a和和b b,b b赋初值赋初值2020 /定义无符号整型变量定义无符号整型变量c c,并赋初值,并赋初值0 xff0 xff /定义长整型变量定义长整型变量D D /对对a a赋值为赋值为SUMSUM,这时,这时a a的值是的值是6553565535 /对对D D赋值为赋值为301301 /以有符号十进制形式(以有符号十进制形式(%d%d)显示)显示a a的值的值 /以有符号十进制形式(以有符号

12、十进制形式(“%d”%d”)显示)显示b b的值的值 /以有符号十进制形式(以有符号十进制形式(%d%d)显示)显示c c的值的值 /以有符号十进制形式(以有符号十进制形式(%d%d)显示)显示D D的值的值 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C abc123.456787123.456787123.456789 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 如 a A ? n 101如 A65, a97, 0

13、48 , n10转义字符转义字符含义含义nvradddtbf“xhh转义字符转义字符含义含义换行垂直制表回车响铃单引号3位8进制数代表的字符水平制表退格换页反斜线双引号2位16进制数代表的字符如 101 -A 012 -n 376 - x61 -a 60 -0 483 -()例:A-101-x41-65 字符串结束标志字符串结束标志00 x41 0 x41 0例: char ch; ch = “A”; 例: char ch; ch = A; 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C语言程序设计 第二章数据描述C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据

14、类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C十进制数十进制数 对应的机器数(补码)对应的机器数(补码) 1 0 0 0 0 0 1 0各位取反+1=126 printf(variable a = %d , a ););语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C ;#define 符号常量名称符号常量名称 常量值常量值 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 正整数或无符号整数

15、的补码:正整数或无符号整数的补码:就是其数的二进制表示。就是其数的二进制表示。 负整数的补码:负整数的补码:就是把其绝对值转换成二进制,在对每一个二进制位都取反就是把其绝对值转换成二进制,在对每一个二进制位都取反之后,再加之后,再加1得到的二进制表现形式。得到的二进制表现形式。补码的符号扩展:补码的符号扩展:就是高位部分全部按符号位填补。就是高位部分全部按符号位填补。例如:例如:用两个字节存储用两个字节存储-123的补码。的补码。(123)10=(01111011)2(-123)10补码补码=(10000101)2即即用一个字节来存储用一个字节来存储-123时,时,符号位符号位是是1;如果用两

16、个字节来存放它,则高位部分再扩展一个字节,且该如果用两个字节来存放它,则高位部分再扩展一个字节,且该字节各位的内容同符号位。字节各位的内容同符号位。因此用两个字节存储因此用两个字节存储-123的补码的形式如下:的补码的形式如下:(-123)10补码补码=(1111111110000101)2语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C (1)、将占用内存字节数较少的数据赋给占用字节数较多变量将占用内存字节数较少的数据赋给占用字节数较多变量时时,系统会自动扩展符号位来填充高位部分。系统会自动扩展符号位来填充高位部分。(2)、将占用内存字节数较多的数据赋给占用字节数较少变量将

17、占用内存字节数较多的数据赋给占用字节数较少变量时时,系统会自动截断高位部分。此时会出现数据溢出或截断。系统会自动截断高位部分。此时会出现数据溢出或截断。 移码与补码的关系是移码与补码的关系是符号位互为反码符号位互为反码 即数据即数据X的的移码移码 =数据数据X的的补码符号位取反补码符号位取反(1)、13为为8进制数进制数。(2)、 X12为为16进制数进制数。语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C C运运算算符符算术运算符:(算术运算符:(+ - + - * * / % + - / % + -)关系运

18、算符:(关系运算符:( = != = !=)逻辑运算符:(!逻辑运算符:(! & |& |)位运算符位运算符 :(:( | & | &)赋值运算符:(赋值运算符:(= = 及其扩展)及其扩展)条件运算符:(条件运算符:(?:?:)逗号运算符:(逗号运算符:(, ,)指针运算符:(指针运算符:(* * & &)求字节数求字节数 :(:(sizeofsizeof)强制类型转换:(类型)强制类型转换:(类型)分量运算符:(分量运算符:(. -. -)下标运算符:(下标运算符:()其它其它 :(:(( ) -( ) -)语语言言程程序序设设计计 第第二二

19、章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 。 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 高高低低 /k=4,j=4/k=4,j=4/k=3,j=4/k=3,j=4/4/4/3/

20、3/c=20,a=4/c=20,a=4/c=15,a=4/c=15,a=4语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据

21、据类类型型C a b & b 10 | x -10、!x & !y 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 。 /a=15,/a=15,表达式值表达式值6060/a=15,/a=15,表达式值表达式值2020/赋值表达式,表达式值赋值表达式,表达式值1818,x=18x=18/逗号表达式逗号表达式, ,表达式值表达式值18,x=318,x=3/1,2,3/1,2,3/3,2,3/3,2,3语语言言程程序序设设计计 第第

22、二二章章 基基本本数数据据类类型型C sizeof 10L 其值也是其值也是4 4 unsigned long a = 2; sizeof (a) 其值也是其值也是4 4 语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C2语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C void main ( ) int i, sum; sum = 0; for (i = 1; i = 100; i+) if (i % 2 = = 0) sum += i; printf (sum = %d, sum);语语言言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C语语言

23、言程程序序设设计计 第第二二章章 基基本本数数据据类类型型C 【】【】【】 语语言言程程序序设设计计 课课堂堂练练习习第第二二章章 基基本本数数据据类类型型CAABC语语言言程程序序设设计计 课课堂堂练练习习第第二二章章 基基本本数数据据类类型型C5.变量是在程序运行过程中 它的三要素是可以改变的类型、名称和值。6.以下选项中合法的常量是?以下选项中合法的常量是?DA)Internet B)E_3 C)02x D)0 xfeL7.以下选项中合法的赋值表达式是?以下选项中合法的赋值表达式是?Cd=8+a+f=d+6 B)d=(a+8)+ + A) C) d=(8+e,e+ +,d+9) D)d=

24、7+e+ + =d+7 DC8.main( )int x=5,y=3;float f;f=x/y;printf(“f=%fn”,f);则程序的输出结果是?则程序的输出结果是?f=1.000000语语言言程程序序设设计计 课课堂堂练练习习第第二二章章 基基本本数数据据类类型型CA6.0D语语言言程程序序设设计计 课课堂堂练练习习第第二二章章 基基本本数数据据类类型型CBC语语言言程程序序设设计计 课课堂堂练练习习第第二二章章 基基本本数数据据类类型型C14.main()int x=4,y;float k=4,z;clrscr( );printf(%dn,-x*-x*-x);x=4;y=-x*-x

25、*-x;printf(y=%dn,y);z=-k*-k*-k;printf(z=%fn,z);+x*+x:x为浮点型为浮点型:从左向右计算。:从左向右计算。x为整型为整型:在:在输出函数中输出函数中,从左,从左向右计算;向右计算;在输出函数外在输出函数外,先连,先连续减两次,然后乘积。续减两次,然后乘积。输出结果:输出结果:6Y=1Z=6.000000语语言言程程序序设设计计 课课堂堂练练习习第第二二章章 基基本本数数据据类类型型CB8语语言言程程序序设设计计 课课堂堂练练习习第第二二章章 基基本本数数据据类类型型Cmain()int x=0,z,y=z=-1; x=x-z-y; printf(x=%dn,x); 输出结果是:17.以下各程序的输出结果是:main()int x=0,z,y=z=-1; x+=z-y; printf(x=%dn,x); 输出结果是:main()int x=0,z,y=z=-1; x=-x-z-y; printf(x=%dn,x); 输出结果是:main()int x=0,z,y=z=-1; /* x*=-y-z-x; */ x=-y-z-x; /* x+=-y-z-x; */ printf(x=%dn,x); 输出结果是:main()int x=0,z,y=z=-1;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论