C语言-2数据类型、运算符和表达式.pptx_第1页
C语言-2数据类型、运算符和表达式.pptx_第2页
C语言-2数据类型、运算符和表达式.pptx_第3页
C语言-2数据类型、运算符和表达式.pptx_第4页
C语言-2数据类型、运算符和表达式.pptx_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

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

文档简介

主讲教师 :贾月乐 电话第二章第二章 数据类型、运算符和表达式数据类型、运算符和表达式 2 第一章 C语言概述 基本数据类型 2.1 标识符 2.2 常量与变量 2.3 运算符与表达式 2.4 C语言程序设计第一章 C语言概述 SCS-SWPU 数据类型转换 2.5 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU3 2.1 基本数据类型 算法:为解决 一个问题而采 取的方法和 步骤 数据 结构 处理对象 数据 组织形式 数据类型 C语言的数据结构 其实实: 程序=算法+数据结构+程序设计方法+语言工具和环境 程序=算法+数据结构 算法是灵魂 数据结构是加工对象 语言是工具 合适的方法 4 真题真题1 1:下列叙述中错误的是(:下列叙述中错误的是( )【2006.42006.4】 A A)C C语言源程序经编译后生成后缀为语言源程序经编译后生成后缀为. .objobj的目标程序的目标程序 B B)C C程序经过编译、连接步骤之后才能形成一个真正程序经过编译、连接步骤之后才能形成一个真正 可执行的二进制机器指令文件可执行的二进制机器指令文件 C C)用)用C C语言编写的程序称为源程序,它以文本形式存语言编写的程序称为源程序,它以文本形式存 放在一个文本文件中放在一个文本文件中 D D)C C语言中的每条可执行语句和非可执行语句最终都语言中的每条可执行语句和非可执行语句最终都 将被转换成二进制的机器指令将被转换成二进制的机器指令 二级真题练习 计算机科学学院 5 数据属于不同类别 Africa The quick brown fox TRUE 数据 非数值数值 整型非整型 9002.12 999 9/12/2003 2.175 123 Jackie Chan char 数据类型 非数值数值 整型 int short int long int double float 非整型 2.1 2.1 基本数据类型基本数据类型 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU6 整 型 int 字符型 char 实实 型 单单精度型 float 双精度型 double 结结 构 struct 联联 合 union 数 组组 指 针针 * 逻辑逻辑 型 bool 数据类类型 基本数据类类型构造类类型 u类类型修饰饰符 short long signed unsigned 2.1 基本数据类型 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU7 2.1 基本数据类型 32位编译系统下的基本数据类型 char (signed char) unsigned char : 1Byte 0 255 int (signed int) long int(signed long int) unsigned int unsigned long int short int (signed short int): 2Byte -215(215-1) unsigned short int: 2Byte 0(216-1) float : 4Byte -3.4e+38 3.4e+38 double : 8Byte -1.7e+308 1.7e+308 1Byte -128127 4Byte -231(231-1) 4Byte 0(232-1) 8 第一章 C语言概述 基本数据类型 2.1 标识符 2.2 常量与变量 2.3 运算符与表达式 2.4 C语言程序设计第一章 C语言概述 SCS-SWPU 数据类型转换 2.5 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU9 2.2 标识符 标识符(identifier) : 给程序中的实体变量、常量、函数、数组、类型名 文件名等所起的名字。 标识符就是一个名字 C语言规定: 标识符只能由字母、数字和下划线三种字符组成,且第一 个字符必须为字母或下划线。 例如:a1 _a1 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU10 2.2 标识符 v标识符分类: 系统定义标识符 用户自定义标识符: 关键字: 预定义标识符: C语言具有特定含义的标识符,必须用小写 如:int/long/void/for等 系统定义的标识符,如:标准库 函数名、编译预处理命令 用户对其使用的变量、数组、函数等操作对象所命的名字 注意:标识标识 符区分大小写 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU11 2.2 标识符C语言的关键字 关键字:C语言规定具有特定含义的标识符。 关键字必须为小写字母。 由ANSI标准定义的共32个 : auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if whilestatic C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU12 2.2 标识符系统预定义标识符 标准库函数 数学函数:sqrt, fabs, sin, cos, pow等 输入输出函数:scanf, printf, gets,puts等 编译预处理命令 define,include等 库函数名、头文件、编译预处理命令等统称为预定义标识符. 用户定义标识符时,应注意避免和预定义标识符重名.否则原 预定义标识符就失去了原有的作用. 对用户使用的变量、数组、函数等操作对象取的名 字 定义规则: l以字母或下划线开头,由字母、数字和下划线三 种字符组成 l不能定义与32个”关键字”相同的标识符 l建议不使用与”预定义标识符”相同的标识符标 识符 l区分大小写 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU13 2.2 标识符用户自定义标识符 14 真题1:下列叙述中错误的是( ) A A)用户所定义的标识符允许使用关键字)用户所定义的标识符允许使用关键字 B B)用户所定义的标识符应尽量做到)用户所定义的标识符应尽量做到“见名知意见名知意” C C)用户所定义的标识符必须以字母或下划线开头)用户所定义的标识符必须以字母或下划线开头 D D)用户定义的标识符中大、小写字母代表不同标识)用户定义的标识符中大、小写字母代表不同标识 真题2:下列不合法的用户标识符是(下列不合法的用户标识符是( ) A A)j2_KEY Bj2_KEY B)Double Double C C)4d D4d D)_8_8_ 二级真题练习 二级真题练习 下列定义变量的语句中错误的是(下列定义变量的语句中错误的是( ) A A)intint _ _intint; B; B)double double intint_; _; C C)char For; Dchar For; D)float US$;float US$; 可在可在C C程序中用作用户标识符的一组是(程序中用作用户标识符的一组是( ) A A)and Band B)DateDate _2007 y-m-d _2007 y-m-d C C)Hi DHi D)casecase Dr.Tom Bigl Dr.Tom Bigl 计算机科学学院 15 16 第一章 C语言概述 基本数据类型 2.1 标识符 2.2 常量与变量 2.3 运算符与表达式 2.4 C语言程序设计第一章 C语言概述 SCS-SWPU 数据类型转换 2.5 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU17 2.3 常量与变量 ?常量(constants) 在程序中不可被改变变的量。 整型 100,125,-100,0 实型 3.14 , 0.125,-3.789 字符型 a, b,2 字符串 “a”, “ab”, “ 1232” 宏常量 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU18 2.3 常量与变量整型常量(Integer Constants) 十进进制整数: 123 -756 八进进制整数,以0开头头 0123 = (123)8 = (83)10 十六进进制整数,以0x或0X开头头 0x123 = (123)16 = (291)10 表示长整型常量可加后缀:L或l 表示无符号整型常量可加后缀:U或u 实型常量只能用十进制形式表示 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU19 2.3 常量与变量实型常量 u小数形式 如: 15.01 u指数形式 如: 3.5E7或3.5e7 注意事项: u 字母E或e前后必须要有数字 u E或e后边的指数必须为整数 u 整数或小数部分可以省略,但不能同时省略 u 默认为双精度实型常量:如 123.45 u 定义单精度实型常量 123.45f、1e-2F u 定义长双精度型常量 123.45l、 456.78L、1e-2l C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU20 2.3 常量与变量实型常量 v以下表示方法是否正确 ? 0.3 .3 23. 123e4 123e-4 .123e4 3.2e0.5 E5 5e C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU21 由单引号括起的字符(有且只有1个字符) 直接字符表示,如: a, 9, + 转义字符表示 引导导13位八进进制数 如:11 x引导导12位十六进进制数 如:x9 引导导特定字符 如:t n 在内存中,字符数据以ASCII码码存储储 int ch1 = b; char ch2 = 97; C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU22 转义字符 一些特殊字符(无法从键盘输入或者另有它用)用转义 字符表示 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU23 例2:分析下列程序的输出结果: void main() printf(“Thististatbookn“); printf(“This ibs a bookn“); printf(“This is a book.“n“); printf(“142 x62 bn“); 运行结果: This_ _ _ _is_ _ _ _ _ _ a _ _ _ _ _ _ _book(_表示空格) This s a book “This is a book.” b b b C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU24 由一对对双引号括起的字符序列称为为字符串常量。 “How do you do?” “china” 字符串常量以0结结束。 字符串内字符个数任意 c c h h i i n n 00 a a ?字符常量与字符串常量区别 字符常量字符串常量 标志 “ “ 字符个数 1个 任意多个 存储仅存储该字符 存储所有字符及 字符串结束符0 5、 5、“5”有区 别吗别吗 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU25 2.3 常量与变量符号常量 宏常量 也称符号常量 一般采用大写字母表示 #define 标识符 字符串 如:#define N 10 不是语句,而是一种编译预处理命令 宏替换(Macro Substitulition) #include #define PI 3.14159 #define R 5.3 main() printf(“area = %fn“, PI * R * R); printf(“circumference = %fn“, 2 * PI * R); C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU26 2.3 常量与变量const常量 用const修饰定义的变量为常量 const float pi = 3.1425926; 常数、 const常量、宏常量,都可以用来表示一个 永远不会改变的数 #include #define PI 3.14159 const double R = 5.3; main() printf(“area = %fn“, PI * R * R); printf(“circumference = %fn“, 2 * PI * R); C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU27 2.3 常量与变量变量 ?变变量(variable) 在程序中可被改变变的量。 注:C规规定,变变量必须须“先定义义,后使用” 一个变量在内存中占据一定的存储单元。 在该存储单元中存放变量的值。 注意区分变量名和变量值 34int a; a = 3; a = 4; 1、变量的定义 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU28 通过过赋值语赋值语 句赋值赋值 int a; a=3; 通过过初始化方式赋赋初值值 int k=3; ; 如: int i, j, age; 2、变量的赋值 2.3 常量与变量变量 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU29 #include void main() int a=0; char b=0, d=101,e; printf(“%dn“,a); printf(“%d, %cn“,b,b); printf(“%d, %c,bn“,d,d); e=d+32; printf(“%d, %cn“,e,e); %d是输出整型数 据时必须使用的 格式符 %c是输出字符数 据时必须使用的 格式符 2.3 常量与变量程序举例 #include “stdio.h“ /*文件包含*/ #define PI 3.141592653 /*宏定义义*/ void main() float area,length; /*定义实义实 型变变量*/ int radius ; /*定义义整型变变量*/ scanf(“%d“, area = PI * radius * radius; length = 2 * PI * radius; printf(“area = %ftlength = %fn“,area,length); 例2 分析下列程序完成的功能 %f是输出实型数 据时必须使用的格 式符 2.3 常量与变量程序举例 31 第一章 C语言概述 基本数据类型 2.1 标识符 2.2 常量与变量 2.3 运算符与表达式 2.4 C语言程序设计第一章 C语言概述 SCS-SWPU 数据类型转换 2.5 32 运算符分类 按照运算对象的个数: 单目运算符 双目运算符 三目运算符 按照功能: 赋值运算符 算术运算符 自加、自减运算符 逗号运算符 逻辑运算符 位运算符 关系运算符等 1.4 C的运算符 33 常用运算符优先级 圆括号() 下标 结构体成员运算符 - 单目运算符(! + - - x=i+; printf(“i=%d,x=%dn”,i,x); j=5; y=+j; printf(“j=%d,y=%dn”,j,y); 程序运行结果: i=6,x=5 j=6,y=6 #include void main() int a=3,b=5,c; c=(+a)*b; printf(“a=%d,c=%dn”,a,c); a=3; c=(a+)*b; printf(“a=%d,c=%dn”,a,c); 程序运行结果: a=4,c=20 a=4,c=15 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU37 2.4.2 自加、自减运算符 2.4.3 赋值运算符和赋值表达式 1赋值运算符:“ = ” (赋值) 右结合性 2. 复合赋值运算符:(“=”之前加上其他运算符) “+=” 加赋值运算符 “-=” 减赋值运算符 “*=” 乘赋值运算符 “/=” 除赋值运算符 “%=” 模赋值运算符 3. 赋值表达式: 变量=运算表达式 将x*=看作 x=x*() ,其余类推。 例1:c=b*=a+3;按自右向左原则,相当于三步 a+3 b=b*(a+3) c=b int k = 3,m = 3, n = 3; int k = m = n = 3; 正确 错误错误 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU39 例:int a=12; 问:a+=a-=a*=a 之后,a 的 值是多少? 解: a=a*a=144; a=a-a=144-144=0; a=a+a=0+0=0 2.4.3 赋值运算符和赋值表达式 C语言程序设计第二章 数据类型、运算符和表达式 SCS-SWPU40 2.4.4 关系运算符和关系表达式 1. 关系运算符: u种类( 6种): (大于) = =(等于)、 =(大于等于)、 !=(不等于) u 优先级: (从高到低) ( 、 = ) (高) ( = = 、 != ) (低) u结合性:自左向右 运算结果:“真(1)”或“假(0) cab 等效于 c(ab) ab=c 等效于(ab)=c a=bc 等效于a=(bc) a=bc 等效于a=(bc) n注意区分“”与“” 2. 关系表达式: u用关系运算符连接起来的任意合法表达式 41 1.逻辑逻辑 运算符种类类: 则执则执 行表达式(m=5=A a=b=c=1; m=a-|!b|-c; printf(“%dn“,m); a=b=c=1; n=a= =b?b-:-b; printf(“%dn“,n); printf(“%dn“,sizeof(b); printf(“%d,%d,%d,%d,%dn“,11%-3, -11%3, 11/3, 11/-3, -11/3); 2.4 运

温馨提示

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

最新文档

评论

0/150

提交评论