基本数据类型及其运算

上传人:宝路 文档编号:49941892 上传时间:2018-08-05 格式:PPT 页数:41 大小:468.66KB
返回 下载 相关 举报
基本数据类型及其运算_第1页
第1页 / 共41页
基本数据类型及其运算_第2页
第2页 / 共41页
基本数据类型及其运算_第3页
第3页 / 共41页
基本数据类型及其运算_第4页
第4页 / 共41页
基本数据类型及其运算_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《基本数据类型及其运算》由会员分享,可在线阅读,更多相关《基本数据类型及其运算(41页珍藏版)》请在金锄头文库上搜索。

1、1安徽大学计算机教学部计算机程序设计基础第二章 基本数据类型及其运算 学习目标 了解数据类型的一般概念,熟悉 C 语言中的基本 数据类型 熟悉 C 语言中常量与变量的概念,掌握定义常量 与变量的方法 掌握 C 语言中的基本运算 掌握基本的输入输出函数的用法 了解 C 语言操作符的优先级与结合性2安徽大学计算机教学部计算机程序设计基础2.1 C 语言的数据类型 数据类型的一般概念 C 语言数据类型关系图 常 量 整型常量 实型常量 字符型常量与反斜杠字符常量 字符串常量 符号常量3安徽大学计算机教学部计算机程序设计基础数据类型的一般概念 确定了以值为元素的数据集 值的可能范围,即定义域 确定了操

2、作(运算)集 不同数据类型具有不同的操作集,不同数据类型类型间 也可以进行混合运算 规定了值的存储格式 不同类型数据在计算机中存储格式不同,相同类型数据 在不同计算机与编译器下的存储格式也可能不同 数据处理的基本对象 常量与变量,均属于某种数据类型4安徽大学计算机教学部计算机程序设计基础C 语言数据类型关系图5安徽大学计算机教学部计算机程序设计基础整型常量 十进制表示 以数字19开头的09序列,如9、876、55 十六进制表示 以“0x”或“0X”开头的09、A/aF/f序列,如0x55 、0x1F、0x2a 0x5516 = 8510 八进制表示 以0开头的07序列,如055 0558 =

3、4510 ,注意不要与十进制混淆!6安徽大学计算机教学部计算机程序设计基础实型常量 一般形式:小数表示法 由整数部分、小数点与小数部分组成 例:3.1416、2.718281828 指数形式:科学计数法 由尾数部分、字符E/e与指数部分组成 例:3.14e3 = 3.14103、2.7E2 = 2.71027安徽大学计算机教学部计算机程序设计基础字符型常量与反斜杠字符常量 字符型常量 以单引号括起来的单一字符,如A、c 字符常量按照其在字符集(一般为 ASCII)中的 编码值存储并参与运算 反斜杠字符常量 以开头,后跟字符或数字,用于表示一个特定 含义的字符,例如n表示换行字符,称为转义字 符

4、序列 常与普通字符混杂于某个字符串中8安徽大学计算机教学部计算机程序设计基础ASCII 码表0123456789 0000001002003004005006abt 10nvfr016017020021022023 20024025026027030031032033034035 30036037space!“#$% 60?ABCDE 70FGHIJKLMNO 80PQRSTUVWXY 90Z_abc 100defghijklm 110nopqrstuvw 120xyz|1779安徽大学计算机教学部计算机程序设计基础转义序列及其意义转义序列 功能与意义 a响铃 b退格 f换页 n换行 r返回到

5、当前行首 t水平制表键 v垂直制表键 0ASCII码0 字符自身 字符(仅在字符常数中需要) “字符“(仅在字符串常数中需要) ddd“ddd”表示八进制的该字符ASCII码值10安徽大学计算机教学部计算机程序设计基础Tsinghua0字符串常量 字符串:以双引号括起来的一串字符 例:“Tsinghua”、“Programming in C” 字符串的长度:其中的字符数目 长度n,占用n+1字节,最后一个字节存储NULL字符0 例:“Tsinghua”占用9个字节 字符串常量与字符常量不同字符串常量与字符常量不同 字符串至少占用一个字节,为什么?字符串至少占用一个字节,为什么?08411510

6、5110103104117097011安徽大学计算机教学部计算机程序设计基础符号常量 宏定义 #define指令:预处理命令 例:#define PI 3.14 一旦定义,可以代替常量使用 可理解为对常量进行命名 目的与意义 增强程序可读性 使用有意义的名字命名 增强程序的可维护性 将值定义为符号常量,则程序中仅需要修改一次# #include # #define define PIPI 3.14 3.14intint mainmain() () float float r r, , areaarea; ;r r = 3.0; = 3.0;areaarea = = PIPI * * r r *

7、 * r r; ;printfprintf(“%(“%f f”, ”, areaarea); );return 0; return 0; 12安徽大学计算机教学部计算机程序设计基础2.2 数据类型及变量 基本数据类型 变量及变量的定义 变量的初始化13安徽大学计算机教学部计算机程序设计基础基本数据类型 基本数据类型的分类 字符型:char;整型:int;浮点型:float;双精度浮点型 :double;无型:void 基本数据类型的长度(位数)和取值范围与计算机 和 C 编译器有关 整型二进制位数与CPU长度相同;字符单字节;浮点型4 字节;双精度浮点型8字节 修饰符 有符号:signed;无

8、符号:unsigned;短型:short;长 型:long 修饰除void之外的其他四种基本数据类型14安徽大学计算机教学部计算机程序设计基础整数的取值范围类型标识符位数最小值最大值 char8128127 unsigned char80255signed char/char8128127int322,147,483,6482,147,483,647 signed int/int322,147,483,6482,147,483,647 unsigned int3204,294,967,295 short int/short1632,76832,767signed short int/short

9、1632,76832,767 unsigned short int16065,535 long int/long322,147,483,6482,147,483,647 signed long int/long322,147,483,6482,147,483,647 unsigned long int3204,294,967,29515安徽大学计算机教学部计算机程序设计基础浮点数与无型数据的取值范围类型标识符位数有效位最小值最大负值最小正值最大值float3273.40e381.18e381.18e383.40e38double64151.80e3082.23e3082.23e3081.80e

10、308long double80191.19e49323.36e49323.36e49321.19e4932 类型标识符位数最小值最大值 void32不确定不确定16安徽大学计算机教学部计算机程序设计基础变量与变量的定义 变量的定义:在程序执行过程中,其值改变的量 与常量的定义不同,常量在程序执行期间不可改变值 系统为每个变量分配合适的存储空间,以存放其值 保存待处理的数据,中间与最终运算结果 变量的四个基本特征:VANT 值(value):在任一时刻,每个变量均具有惟一值 地址(address):每个变量均具有惟一地址,且除非其 生命结束,地址不可更改 名称(name):每个变量具有固定的名

11、称或名字标识 类型(type):每个变量均具有确定的类型,不可更改17安徽大学计算机教学部计算机程序设计基础变量的定义与使用示例# #include intint mainmain() () char char c c; ;intint x x, , y y, , z z; ;unsigned long unsigned long distancedistance; ;float float mm; ;m m = 1.11; = 1.11;mm = 2 * = 2 * mm; ;mm = = mm + 2.2; + 2.2;printfprintf(“%(“%f f n n”, ”, mm);

12、 );return 0; return 0; 定义三个整型变量定义三个整型变量x x, , y y, , z z定义字符变量定义字符变量c c定义无符号长整型变量定义无符号长整型变量distancedistance定义浮点型变量定义浮点型变量mm 对浮点型变量对浮点型变量mm进行赋值进行赋值 计算过程中修改计算过程中修改mm的值的值 再次修改再次修改mm的值的值 输出输出mm的值(计算结果)的值(计算结果)18安徽大学计算机教学部计算机程序设计基础变量的初始化 在定义变量时设定初始值char char c c = c; = c; float float x x, , y y, , z z =

13、4.53; = 4.53; double double a a = 15.5, = 15.5, b b = 2.0; = 2.0;将将z z初始化为初始化为4.534.53,x x, , y y未初始化未初始化将变量将变量c c初始化为初始化为 c c ,ASCIIASCII值值9999a a, , b b均进行初始化均进行初始化 未初始化变量未初始化变量 并不意味空值并不意味空值 保持原先的位序列不变,可以参与运算,但没有保持原先的位序列不变,可以参与运算,但没有 意义,往往导致错误结果意义,往往导致错误结果19安徽大学计算机教学部计算机程序设计基础2.3 运算符与表达式 运算符(操作符)与

14、表达式概述 混合类型数据的运算 赋值语句与赋值表达式 算术运算符与算术表达式 关系运算符与关系表达式 逻辑运算符与逻辑表达式 位运算符 其他运算符与表达式20安徽大学计算机教学部计算机程序设计基础运算符与表达式概述 表达式 由操作符与操作数组成的序列,完成一系列的运 算,得到最终的计算结果 表达式结果的数据类型由参与运算的操作数确定 操作数 常量、变量、函数调用、括号内的子表达式 操作符 种类繁多,意义丰富,功能强大:39个,46种 优先级: 15级21安徽大学计算机教学部计算机程序设计基础操作符及其优先级优先级操作符 15. () 函数调用 +后缀 后缀 14sizeof +前缀 前缀 !

15、+ 23安徽大学计算机教学部计算机程序设计基础赋值语句与赋值表达式 赋值表达式 赋值操作符:优先级较低 赋值表达式的值:赋值操作符赋给目标变量的值 例:while( ( c = getchar() ) != EOF ) /* */ 赋值语句 以分号结束的赋值表达式 格式:变量名 = 表达式;例:b = c + (int)a; 赋值语句对左边变量名或等价的数组元素名实施写操作 右边的表达式结果若与左边的类型不同,则先转换再赋 值,此时可能导致数据精度的损失24安徽大学计算机教学部计算机程序设计基础复合赋值操作符 注意事项 赋值操作符右边的子表达式作为整体参与运算 例: y *= x + 1 等价于 y = y * (x + 1) 复合赋值操作符名称示例等价于+=加赋y += x;y = y + x; =减赋y = x;y = y x;*=乘赋y *= x;y = y * x;/=除赋y /= x;y

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件

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