C语言程序设计基础实验教程第二章数据类型、运算符、表达式、赋课件.ppt
《C语言程序设计基础实验教程第二章数据类型、运算符、表达式、赋课件.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计基础实验教程第二章数据类型、运算符、表达式、赋课件.ppt(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二章 数据类型、运算符、表达式、赋值语句、输入输出1课程名称:语言程序设计课型与教法:讲授学时:2课时授课题目: 第章 数据类型、运算符、表达式、赋值语句、输入输出基本教材:语言程序设计(高等教育出版社)廖雷主编教学目的与要求:通过本章的学习使学生熟悉语言的关键词、标识符、数据类型,掌握字符串常量与字符常量的区别、转义字符的使用、变量的定义。教学重点与难点:数据类型,不同数据类型的使用范围;变量的定义 2 C语言的词法记号语言的词法记号 数据类型数据类型 常量与变量常量与变量 运算符和表达式运算符和表达式 类型转换类型转换 数据输出数据输出 数据输入数据输入第二章 数据类型、运算符、表达式、
2、赋值语句、输入输出第二章 数据类型、运算符、表达式、赋值语句、输入输出3C语言的词法记号C语言编写的程序是由各种不同的词法记号构成词法记号:程序中具有独立含义的不可进一步分割的单位共5类: 关键词 标识符 常量 运算符 分隔符 ( ) * . : = ; #第二章 数据类型、运算符、表达式、赋值语句、输入输出4关键词:C语言中预定义的符号,有固定的含义(32个)用途:存储类别 auto extern register static 类型定义 typedef流程控制 break case continue default do else goto if return switch while f
3、or数据类型 int long short float double char signed unsigned struct union enum void const volatile运算符 sizeof 用户定义的任何名字不得与关键词冲突 准关键词:有固定的含义用途:预处理命令:define endif include ifdef ifndef line undef库系统函数名:scanf、printf等允许准关键词另作它用建议不对这些准关键词另作它用。关键词第二章 数据类型、运算符、表达式、赋值语句、输入输出5关键词用途说明char一个字节长的字符值short短整数int 整数unsig
4、ned数无符号类型,最高位不作符号位long长整数float据单精度实数double双精度实数struct类用于定义结构的关键词union用于定义联合(共用体)的关键词void型空类型,用它定义的对象不具有任何值enum定义枚举类型的关键词signed有符号类型,最高位作符号位const表明这个量在程序执行过程中不可变volatile表明这个量在程序执行过程中可被隐含地改变第二章 数据类型、运算符、表达式、赋值语句、输入输出6关键词用途说明break退出最内层的循环或switch语句caseswitch语句中的情况选择continue 流跳到下一轮循环defaultswitch语句中其余情况标
5、号do程在dowhile循环中的循环起始标记 elseif语句中的另一种选择for控带有初值、测试和增量的一种循环goto转移到标号指定的地方if制语句的条件执行return返回到调用函数switch从所有列出的动作中作出选择while在while和dowhile循环中语句的条件执行第二章 数据类型、运算符、表达式、赋值语句、输入输出7关键词用途说明typedef用于定义同义数据类型auto存自动变量register 储寄存器类型static类静态变量extern别外部变量说明sizeof运算符计算表达式和类型的字节数第二章 数据类型、运算符、表达式、赋值语句、输入输出8定义:用户自行定义的符
6、号,用来标识变量、常量、函数、标号等组成:只能由字母、数字、下划线(_)组成,且第一个字符必须是字母或下划线大小写敏感不能使用关键词长度:最长32个字符命名原则:见名知意不宜混淆 如l与I, o与0常用大写字母表示常量标识符,变量等其他类型标识符用小写字母表示系统内部使用了一些用下划线开头的标识符,建议定义标识符时尽量不用下划线开头,以防止冲突例:判断下列标识符号合法性sum Sum M.D.John day Date 3days student_name #33 lotus_1_2_3 char ab _above $123M.D.John3days#33char$123ab标识符 第二章
7、数据类型、运算符、表达式、赋值语句、输入输出9数据类型总表C数据类型基本类型构造类型指针类型空类型 void定义类型 typedef字符类型 char枚举类型 enum整 型浮点型单精度型 float双精度型 double数组结构 struct联合 union短整型 short长整型 long整型 int数据类型决定:1. 数据占内存字节数2. 数据取值范围3. 其上可进行的操作数据类型第二章 数据类型、运算符、表达式、赋值语句、输入输出10类型符号关键词数的表示范围所占位数整型字符型浮点型有无(signed)int16-3276832767(signed)short16-3276832767
8、(signed)long32-2147483648214748364716unsigned int0655353204294967295unsigned longunsigned short16065535有float323.4e-383.4e38有double641.7e-3081.7e308有char 8 -128127无unsigned char 8 0255说明:数据类型所占字节数随机器硬件不同而不同,上表以IBM PC机为例请看int和unsigned int基本数据类型 第二章 数据类型、运算符、表达式、赋值语句、输入输出11 一般用大写字母 是宏定义预处理命令,不是C语句 整型常
9、量 请点击: 浮点型常量 请点击: 字符常量 请点击: 字符串常量 请点击:如 #define PRICE 30定义:程序运行时其值不能改变的量分类: 符号常量:用标识符代表常量 定义格式: #define 符号常量 常量例 符号常量举例(ch2_1.c)#include #define PRICE 30main() int num,total; num=10; total=num*PRICE; printf(total=%d,total);运行结果:total=300常量 第二章 数据类型、运算符、表达式、赋值语句、输入输出12 三种表示形式: 十进制整数:由数字09和正负号表示.如 327
10、67, 123,-456,0 八进制整数:由数字0开头,后跟数字07表示.如0123,011 十六进制整数:由0 x或0X开头,后跟09,af,AF表示. 如0 x123,0Xff例 12 与 12L 12 为int型 12L 为long int型例 30000 为int型 65536 为long int 型 整型常量的类型 根据其值所在范围确定其数据类型 在整常量后加字母l或L,认为它是long int 型常量问题:0123 = ( )100 x123 = ( )100Xff = ( )1083291255问题:0123 = ( )100 x123 = ( )100Xff = ( )10整型
11、常量(整常数)整型常量(整常数) 第二章 数据类型、运算符、表达式、赋值语句、输入输出13 表示形式: 十进制数形式:(必须有小数点) 如0.123, .123, 123.0, 0.0, 123. 指数形式:(e或E之前必须有数字;指数必须为整数)如12.3e3 ,123E2, 1.23e4 , e-5 , 1.2E-3.5 浮点常量的类型 默认double型 在浮点常量后加字母f或F,认为它是float型浮点常量(实型常量、实数或浮点数)浮点常量(实型常量、实数或浮点数)e-51.2E-3.5 第二章 数据类型、运算符、表达式、赋值语句、输入输出14 定义:用单引号括起来的单个普通字符或转义
12、字符. 字符常量的值:该字符的ASCII码值如 101 -A 012 -n x40 - x61 -a 60 -0 483 -()A-101-x41-65如 a A ? n 101 转义字符:反斜线后面跟一个字符或一个代码值表示例 转义字符举例(ch2_2.c) main() printf(101 x42 Cn); printf(I say:How are you?n); printf(C Programn); printf(Turbo C );运行结果:运行结果:(屏幕显示屏幕显示)A B CI say:”How are you?”C ProgramTurbo C例 main() printf
13、(“Yb=n”); /*ch2_3.c*/ 运行结果:运行结果:屏幕显示:屏幕显示:=打印机输出:打印机输出:字符常量字符常量如 A65, a97, 048, n10 注意:和是不合法的字符常量转义字符及其含义:转义字符含义nvrdddtbf”xhh转义字符含义换行竖向跳格回车单引号3位8进制数代表的字符横向跳格(Tab)退格换行但不回车反斜线双引号2位16进制数代表的字符第二章 数据类型、运算符、表达式、赋值语句、输入输出15 字符常量与字符串常量不同 定义:用双引号(“”)括起来的字符序列 存储:每个字符串尾自动加一个 0 作为字符串结束标志h e l l o 0例 字符串“hello”在
14、内存中6565 0例 a“a”例 空串 “”0字符串常量字符串常量 第二章 数据类型、运算符、表达式、赋值语句、输入输出16概念:其值可以改变的量变量代表某个存储空间及其所存储的数据变量名、变量值和变量的地址 变量名:标识变量的名字,与内存中的某一存储空间相联系 变量值:在这个存储空间中存储的数据 变量的地址:这个存储空间的首地址 在程序中通过变量名来引用变量值赋值:向变量所代表的存储空间传送数据的操作。赋值操作用“=”表示 变量变量例: a=1; a=a+1; b=a;.2字节&c=6300.内存-3变量名变量地址变量值int c第二章 数据类型、运算符、表达式、赋值语句、输入输出17编译程
15、序根据变量定义为其分配指定字节的内存单元.地址int a=1, b=-3,c;abc2字节2字节2字节地址地址.内存1-3随机数概念:其值可以改变的量变量代表某个存储空间及其所存储的数据变量说明的一般格式: ,; 变量初始化:说明时赋初值;可对被说明变量的部分初始化 例: int a,b,c; float data; char ch1; double z;合法标识符例: int a=2,b,c=4; float data=3.67; char ch=A; int x=1,y=1,z=1; 变量的使用:先说明,后使用例 int student; stadent=19; /*Undefined s
16、ymbol stadent in function main*/ 变量说明位置:一般放在函数开头main() int a,b=2; float data; a=1; data=(a+b)*1.2; printf(“data=%fn”,data);变量说明可执行语句main() int a,b=2; a=1; float data; data=(a+b)*1.2; printf(“data=%fn”,data);变量变量决定分配字节数和数的表示范围第二章 数据类型、运算符、表达式、赋值语句、输入输出18一个运算符计算表达式和类型的字节数格式:sizeof(类型标识符或表达式)字符型变量 字符变量
17、存放字符ASCII码 char与int数据间可进行算术运算例 int a; char ch; a=D; /* a=68; */ ch=8+0; /* ch=8; */ ch=E+a-A /* ch=e; */ ch=65; /* ch=A; */没有字符串变量,用字符数组存放sizeofsizeof例 int a,b; float f; a=sizeof(b); /* a=2; */ a=sizeof(float); /* a=4; */ b=sizeof(12L); /* b=4; */第二章 数据类型、运算符、表达式、赋值语句、输入输出19/*ch2_4.c*/ #define PRICE
18、 12.5 main() int num=3; float total; char ch1,ch2=D; total=num*PRICE; ch1=ch2-A+a; printf(“total=%f,ch1=%cn”,total,ch1); 宏定义变量说明输出结果运行结果:total=37.500000, ch1=d例子 第二章 数据类型、运算符、表达式、赋值语句、输入输出20课程名称:语言程序设计课型与教法:讲授学时:2课时授课题目: 第章 数据类型、运算符、表达式、赋值语句、输入输出基本教材:语言程序设计(高等教育出版社)廖雷主编教学目的与要求:通过本章的学习使学生熟悉C语言的运算符和表达
19、式,掌握算术逻辑关系赋值运算符和表达式、位运算、各类数据混合运算、类型转换。 教学难点:运算符的优先级问题、类型转换教学重点:算术逻辑关系赋值运算符和表达式;位运算 第二章 数据类型、运算符、表达式、赋值语句、输入输出21C C运运算算符符算术运算符:算术运算符:+ - + - * * / % + - / % + -关系运算符:关系运算符: = != = !=逻辑运算符:!逻辑运算符:! & |& |位运算符位运算符 : | & | &赋值运算符:赋值运算符:= = 及其复合赋值运算符及其复合赋值运算符条件运算符:条件运算符:?:?:逗号运算符:逗号运算符:, ,指针运算符:指针运算符:* *
20、 & &求字节数求字节数 :sizeofsizeof强制类型转换:(类型)强制类型转换:(类型)分量运算符:分量运算符:. -. -下标运算符:下标运算符:其其 它:它:( )( )等等 运算符和表达式第二章 数据类型、运算符、表达式、赋值语句、输入输出22运算符功能运算符功能与运算量关系与运算量关系要求运算量个数要求运算量个数要求运算量类型要求运算量类型运算符优先级别运算符优先级别一个运算量的两侧有不同的运算符,先执行一个运算量的两侧有不同的运算符,先执行“优先级优先级别别”高的运算高的运算结合方向结合方向一个运算量的两侧有两个相同优先级别的运算符,则一个运算量的两侧有两个相同优先级别的运算
21、符,则按结合方向顺序处理。按结合方向顺序处理。两种:两种:自左向右的结合方向(左结合性)自左向右的结合方向(左结合性)自右向左的结合方向(右结合性)自右向左的结合方向(右结合性)结果的类型结果的类型学习运算符应注意学习运算符应注意第二章 数据类型、运算符、表达式、赋值语句、输入输出23运算符运算符结合性结合性1515( ) - .( ) - .左左1414! + - ! + - - -(负号运算符)(负号运算符) (type) (type) * *(取内容运算符)(取内容运算符) & &(取地址运算符)(取地址运算符) sizeofsizeof右右1313* *(乘法运算符)(乘法运算符) /
22、 %/ %左左1212+ + - -(减法运算符)(减法运算符)左左1111 左左1010 = =左左9 9= != !=左左8 8& &(按位与运算符)(按位与运算符)左左7 7 左左6 6| |左左5 5&左左4 4|左左3 3?:?:右右2 2= += -= = += -= * *= /= %= = |= &= = = ) - * * / % - + - / % - + -(减号)(减号) (14) (13) (12)(14) (13) (12) 说明:说明:两整数相除,结果为整数,舍小数部分;否则为两整数相除,结果为整数,舍小数部分;否则为doubledouble型型% %要求两侧均为
23、整型数据要求两侧均为整型数据例例 5/2 = -5/2.0 =例例 5%2 = -5%2 = 1%10 = 5%1 = 5.5%2算术运算符和算术表达式算术运算符和算术表达式2-2.51-110( )第二章 数据类型、运算符、表达式、赋值语句、输入输出25自增、自减运算符自增、自减运算符+ -+ -作用:使变量值加作用:使变量值加1 1或减或减1 1种类:种类:前置前置 +i,-i (+i,-i (先执行先执行i=i+1i=i+1或或i=i-1i=i-1,再使用,再使用i i值)值)后置后置 i+,i- (i+,i- (先使用先使用i i值值, ,再执行再执行i=i+1i=i+1或或i=i-1
24、i=i-1)例例 j=3; k=+j; j=3; k=j+; a=3; b=5; c=(+a)*b; a=3; b=5; c=(a+)*b; j=j+1; k=j; /k=4,j=4/k=4,j=4k=j; j=j+1; /k=3,j=4/k=3,j=4/c=20,a=4/c=20,a=4/c=15,a=4/c=15,a=4算术运算符和算术表达式算术运算符和算术表达式第二章 数据类型、运算符、表达式、赋值语句、输入输出26说明:说明: + - + - 不能用于常量和表达式不能用于常量和表达式, ,如如5+5+,(a+b)+(a+b)+ + - + - 结合方向:结合方向: 自右向左自右向左 优
25、先级:优先级:- - + - -+ - -* * / % -+ - / % -+ - (14) (13) (12)(14) (13) (12)自增、自减运算符自增、自减运算符+ -+ -作用:使变量值加作用:使变量值加1 1或减或减1 1种类:种类:前置前置 +i, -i (+i, -i (先执行先执行i+1i+1或或i-1i-1,再使用,再使用i i值)值)后置后置 i+,i- (i+,i- (先使用先使用i i值值, ,再执行再执行i+1i+1或或i-1i-1)算术运算符和算术表达式算术运算符和算术表达式第二章 数据类型、运算符、表达式、赋值语句、输入输出27简单赋值运算符简单赋值运算符符
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 基础 实验 教程 第二 数据类型 运算 表达式 课件
限制150内