




已阅读5页,还剩72页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
模块2数据类型与运算规则 程序设计方法 C C 2 本模块主要内容 C C 语言概述基本数据类型和运算规则 3 C C 语言的产生 C C 语言概述 C语言发展过程产生背景产生过程时间 1972 1973地点 美国贝尔实验室目的 UNIX操作系统设计人 Ken Thompson和Dennis M Ritchie 4 C C 语言的产生 C C 语言概述 标准C标准C K R合著 TheCProgrammingLanguage ANSIC 1983年87ANSIC 1987年1990年国际标准的ANSIC 5 C C 语言的产生 C 是从C语言发展演变而来的 首先是一个更好的C引入了类的机制 最初的C 被称为 带类的C 1983年正式取名为C 从1989年开始C 语言的标准化工作于1994年制定了ANSIC 标准草案于1998年11月被国际标准化组织 ISO 批准为国际标准 成为目前的C C C 语言概述 6 C的特点 C C 语言概述 简洁 灵活仅有32个关键字语法限制不太严格运算符表达能力强运算符丰富数据结构丰富允许访问物理地址结构化目标代码质量高 程序执行效率高可移植性好 增加使用难度注意其负面影响 7 C 的特点 全面兼容C它保持了C的简洁 高效和接近汇编语言等特点对C的类型系统进行了改革和扩充C 也支持面向过程的程序设计 不是一个纯正的面向对象的语言支持面向对象的方法 C C 语言概述 8 C程序实例 例2 1 gf2 1 c includevoidmain printf Hello n printf WelcometoC 运行结果 Hello Welcometoc C C 语言概述 第一行用 括起来的是程序的注释 main为函数名 程序从这里开始运行 为语句括号 其中包含C语言的语句 9 C 程序实例 例2 1 gf2 1 cpp includeusingnamespacestd voidmain cout Hello n cout WelcometoC 运行结果 Hello Welcometoc C C 语言概述 10 intmax x y intx y intz if x y z x elsez y return z voidmain 找a b中最大的数 inta b c 定义变量 scanf d d 输出C的值 定义max函数 定义x y变量 判断 返回z值 C程序实例 例2 2 11 main 主函数说明 变量定义 主函数体 执行语句组 子函数名1 参数 子函数说明 变量定义 子函数体 执行语句组 子函数名2 参数 子函数说明 变量定义 子函数体 执行语句组 C程序的结构规则 12 C程序由一个或多个函数构成 其中有且仅有一个主函数每个函数由说明部分和函数体组成函数体由若干语句组成 每个语句由分号结束一行可以写多个语句 一个语句可以写多行C程序从main函数开始执行 通过函数名调用用 可以对C程序的任何部分作注释 C程序的结构规则 13 共26页第13页 C语言的基本组成 基本字符集C语言编程中可以使用的字符 ASCII字符集 数字 0123456789字母 abc zABC Z运算符 特殊符号 下划线 空格回车 r 换行 n 制表符 t 其它转义字符 14 共26页第14页 关键字C语言中由系统特殊定义的32个具有特定含义的标识符 不允许用户作为自定义标识符 autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedvoidvolatilewhile C语言的基本组成 15 标识符的构成规则 以大写字母 小写字母或下划线 开始 可以由以大写字母 小写字母 下划线 或数字0 9组成 大写字母和小写字母代表不同的标识符 C C 语言概述 16 数据类型 Page16 数据类型和运算规则 C C 语言的数据类型有 数据类型 指针类型 空类型 无值类型 void 基本类型 构造类型 17 1 常量 在程序运行中 其值保持不变的量称为常量 整型常量100 125 100 0实型常量3 14 0 125 3 789字符常量 a b 2 字符串常量 Beijing 常量的表示方法 数值常量 字符常量 数据类型 常量与变量 18 2 符号常量 当常量本身是一个较长的字符序列 且在程序中重复出现 就可以用指定的标识符来表示这个常量 即为符号常量 define标识符常量 definePAI3 1416 defineW Windows98 数据类型 常量与变量 19 补充 信息的存储单位 位 bit 度量数据的最小单位 表示一位二进制信息 字节 byte 由八位二进制数字组成 1byte 8bit K字节1K 1024byteM字节1M 1024KG字节1G 1024M 20 3 变量 在程序运行过程中 其值可改变的量称为变量 有关变量的规定 变量通过变量名标识 变量名和内存中的存储单元相对应 程序中通过变量名来存 取存储单元 变量必须先定义 后使用 变量 数据类型 常量与变量 21 1 变量命名规则同标识符由字母或下划线开头的字母 数字 下划线序列 2 不能用系统中的关键字作为变量名3 变量名中区分大小写字母 NAMEname表示两个不同的标识符 变量名的规定 标识符通常采用小写字母 数据类型 常量与变量 22 数据类型 常量与变量 include definePRICE30voidmain intnum total floatv r h num 10 total num PRICE cout total endl r 2 5 h 3 2 v 3 14159 r r h printf v f n v Page22 数据类型和运算规则 23 数据类型 整型数据 数据类型和运算规则 整型常量的不同数制表示方法10进制 0 98进制 0 7 以0开头16进制 0 9 A F a f 以0 x或0X开头例如 100 8 0 010 024 0 x38 0X1F 1 整型常量 整型常量的类型根据值大小默认类型在常量后面加l或L 表示longint型例如 123L 0L 432l都是longint型常量 24 数据类型 整型数据 2 整型变量 25 include definePRICE30voidmain intnum total floatv r h num 10 total num PRICE cout total endl r 2 5 h 3 2 v 3 14159 r r h printf v f n v 数据类型 整型数据 整型常量 整型变量 数据类型和运算规则 26 整型变量的定义 例如 inti j longk m unsignedintx y C和C 中的所有变量必须先定义后使用 格式 类型说明符变量列表 数据类型 整型数据 27 int型数的表示范围 存储长度16位二进制 2B 0111111111111111 1000000000000000 最小数 215 32768 例 215 1 32767 最大数 215的补码 数据类型 整型数据 28 1 实型常量 两种表示形式 小数指数 0 1233e 3 实型常量只能用十进制形式表示 不能用八进制和十六进制表示 1e3 1 8e 3 123e 6 1e 3e5 1e 3 2 e e 03 数据类型 实型数据 29 2 实型变量 数据类型 实型数据 30 include definePRICE30voidmain intnum total floatv r h num 10 total num PRICE cout total endl r 2 5 h 3 2 v 3 14159 r r h printf v f v 数据类型 实型数据 实型常量 实型变量 缺省为double型后缀F 或f 为float型后缀L 或l 为longdouble型 数据类型和运算规则 31 1 字符型常量 用单引号括起的单个字符 a A 1 abc a 转义字符 以 开头的特殊字符称为转义字符 数据类型 字符型数据 2020 1 1 32 补充 字符的编码表示 计算机除了进行数值计算外 还要处理各种非数值信息 主要有字符 声音 图像等 用0 1两种状态来存储各种各样的信息 统称之为编码 ASCII码 键盘信息交换码 AmericanStandardCodeforInformationInterchange 在计算机发展过程中 众多厂商采用不同的技术标准进行编码 后来美国国家标准局制订了一套标准化信息交换码 AmericaStandardCodeforInformationInterchange 就是现在广泛使用的ASCII码 ASCII码由7位二进制组成 对英文大小写字母 阿拉伯数字 常用运算符号以及一些控制字符进行编码 33 字符的编码表示 续 ASCII码的编码规律 ASCII码用7位编码 8位表示 最高位0 34 转义字符 n换行 b退格 t横向跳格 r回车 反斜杠 单引号 dddddd表示1到3位八进制数字 xhhhh表示1到2位十六进制数字 例 因为 60 8 48 10 60 代表ASCII码为48的字符 0 同理 105 代表ASCII码字符 E x61 代表ASCII码字符 a 数据类型 字符型数据 35 定义形式chara b 占存储空间一个字节存储一个字符 2 字符型变量 includevoidmain charc c c printf c c 运行结果 c 题目中有几个c 哪些是等价的 数据类型 字符型数据 36 a 的ASCII值为97 内存中存储形式 01100001 在ASCII范围以内 整型数据与字符型数据可以通用 字符型数据的存储格式 ASCII码字符 a A 1 存储为 97 65 49 首页 上页 下页 节 末页 结束 数据类型 字符型数据 37 voidmain chara b c intd a 5 b 60 c A d 1089 printf a cb cc dd c n a b c d printf a db d n a b d c 输出字符 d 输出整数 数据类型 字符型数据 38 字符数据的使用方法字符数据和整型数据之间可以运算 字符数据与整型数据可以互相赋值 字符串常量例 CHINA a a 所以 charc c a Page38 数据类型 字符型数据 数据类型和运算规则 39 数据类型 布尔型数据 布尔型变量的说明 例 boolflag 布尔型数据的取值 只有false和true两个值 数据类型和运算规则 40 数据类型 变量初始化 例 inta 3 doublef 3 56 charc a Page40 数据类型和运算规则 41 运算符与运算规则 学习运算符应掌握的要点 运算符的种类与功能运算符与运算分量的关系运算符的优先级和结合性 个数 类型 A B a b a b 目 关系 不同类型的变量 所占存储空间 数的范围 有效位和允许的操作不同 单目运算双目运算三目运算 42 运算符与运算规则 续 优先级 运算符的执行顺序a 3 5 9 优先级 结合性 两个相同优先级运算符的运算顺序左结合 从左向右 3 5 7 右结合 从右向左 a b 7 a b 7 a a 运算结果的类型 5 8结果为整型 13 a 100结果为逻辑型 0 43 算术运算符与算术表达式 基本算术运算符 若整数相除 结果取整 取余 操作数为整数 优先级与结合性先乘除 后加减 同级自左至右 自增 自减 例 i j Page43 数据类型和运算规则 44 算术运算符与算术表达式 Page44 数据类型和运算规则 两个整数相除 商取整数10 3 3 1 2 0 1 0 2 0 5 求余运算的对象必须是整型10 3 1 10 3 1 10 3 1 45 算术运算符与算术表达式 数据类型和运算规则 i i 先使用i的值运算 然后i再加 减 1 i i i先加 减 1 再使用变量i的值 只能用于变量 整型 字符型 指针型 不能用于表达式和常量 i k 3 i 3 j 4 m 1 i n 1 j 结果 m 4 i 4n 6 j 5 优先级 高于算术运算符结合性 从右向左 46 赋值运算符和赋值表达式简单的赋值运算符 Page46 数据类型和运算规则 计算表达式的值并转换成左边变量类型后赋给该变量 变量 表达式 3 a b a b a b 优先级 比算术运算低结合性 右结合 47 赋值运算符和赋值表达式复合的赋值运算符 有10种复合运算符 例a 3等价于a a 3x y 8等价于x x y 8 数据类型和运算规则 48 赋值运算符和赋值表达式 赋值表达式举例 a 5表达式值为5a b c 5表达式值为5 a b c均为5a 5 c 6 表达式值为11 a为11 c为6a b 4 c 6 表达式值为10 a为10 b为4 c为6a b 10 c 2 表达式值为5 a为5 b为10 c为2a a a a相当于a a a a a a Page48 数据类型和运算规则 49 逗号运算和逗号表达式 格式表达式1 表达式2求解顺序及结果先求解1 再求解2 最终结果为表达式2的值 Page49 数据类型和运算规则 优先级 逗号运算符的优先级最低 结合性 从左向右 50 逗号运算和逗号表达式 Page50 数据类型和运算规则 X a 4 5 a 6 a X X a 4 5 a 6a X 20 26 20 20 51 关系运算与关系表达式 关系运算是比较简单的一种逻辑运算 优先次序为 优先级相同 高 优先级相同 低 关系表达式是一种最简单的逻辑表达式其结果类型为逻辑值 值只能为true或false 例如 a b c a b x y 3 数据类型和运算规则 52 关系运算与关系表达式 数据类型和运算规则 结合性 左结合 优先级 低于算术运算符 高于赋值运算符 的优先级低于其余四个 53 关系运算与关系表达式 数据类型和运算规则 关系表达式的结果是一个逻辑值 1 真 0 假 inti 1 j 7 a b 1 a i j 4 0 i 0 b 1 2 如 1 2 1 5 18 90 int 2 5 2 5 结果 a 1i 1 用关系运算符连接的表达式 54 补充 基本逻辑运算 1 逻辑加 或 两个条件中只要有一个成立 结果就成立 有真值表 ABC000011101111 逻辑运算与逻辑表达式 数据类型和运算规则 55 2 逻辑乘 与 两个条件都个成立结果才成立 有真值表 ABC000010100111 补充 基本逻辑运算 56 与原逻辑状态相反 4 异或 两逻辑变量相同时为0不同时为1 有真值表 ABC000011101110 有真值表 AC0110 补充 基本逻辑运算 57 逻辑运算与逻辑表达式 逻辑运算符 非 与 或 优先次序 高 低逻辑表达式例如 a b x y 其结果类型为逻辑值 值只能为true或false 数据类型和运算规则 58 逻辑运算与逻辑表达式 数据类型和运算规则 优先级 的优先级高于所有算术运算符 和 的优先级低于关系运算符 结合性 右结合 和 左结合 59 逻辑运算与逻辑表达式 数据类型和运算规则 inta 5 b 7 c 4 d 3 x x a b c d d a 逻辑表达式的结果是一个逻辑值 1 真 0 假 用逻辑运算符连接起来的表达式 a 5 b 7 c d 3 结果 x 0 60 逻辑运算与逻辑表达式 数据类型和运算规则 注意 在逻辑表达式中 如果 左边为0 则 右边表达式不再计算如果 的左边为1 则 右边表达式不再计算 已知 a 1 b 2 c 3 d 4 m 1 n 1执行 m a b m n c d 0 1 3 4 61 条件运算符与条件表达式 一般形式表达式1 表达式2 表达式3表达式1必须是逻辑类型执行顺序先求解表达式1若表达式1的值为true 则求解表达式2 表达式2的值为最终结果若表达式1的值为false 则求解表达式3 表达式3的值为最终结果例 x a b a b 数据类型和运算规则 62 条件运算符与条件表达式 注意 条件运算符优级高于赋值运算符 低于逻辑运算符例 x a b a b 数据类型和运算规则 63 sizeof运算符 语法形式sizeof 类型名 或sizeof 表达式 结果值 类型名 所指定的类型或 表达式 的结果类型所占的字节数 例 sizeof short sizeof x 数据类型和运算规则 64 位运算 按位与 运算规则将两个运算量的每一个位进行逻辑与操作举例 计算3 53 000000115 000001013 5 00000001 数据类型和运算规则 65 位运算 按位或 运算规则将两个运算量的每一个位进行逻辑或操作举例 计算3 53 000000115 000001013 5 00000111 数据类型和运算规则 66 位运算 按位异或 运算规则两个操作数进行异或 若对应位相同 则结果该位为0若对应位不同 则结果该位为1举例 计算071 052071 00111001052 00101010071 052 00010011 数据类型和运算规则 67 位运算 取反 单目运算符 对一个二进制数按位取反 例 025 0000000000010101 025 1111111111101010 数据类型和运算规则 68 位运算 移位 左移运算 右移后 低位 舍弃高位 无符号数 补0有符号数 补 符号位 数据类型和运算规则 69 a 1111 1000 8补码 b a 2 1111 1110 8 22 2补码 a 0000 1000 8补码 b a 2 0000 0010 8 22 2补码 位运算 移位
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 哈希表在数据结构中的应用解析
- Linux系统安装报告
- 北京移动DSMP系统异地容灾平台建设项目的风险管理:策略与实践
- 北京地铁盾构近距离下穿既有地铁的风险防控与实践探索
- 功能化金纳米粒子:生物流体中半胱氨酸和高半胱氨酸的精准识别探索
- 生物医药企业经济类合同临床试验与成果转化协议
- 2025版司法局《移送执行申请书》民事类法律文书(空白模板)
- 临近地下室施工方案
- 深沟槽全是石方施工方案
- 咨询年度方案范文
- 2022中国神经外科重症患者营养治疗专家共识(全文)
- 双绞线链路测试报告
- 高级财务管理(第三版)第02章-财务估价模型概览
- 人教版(新起点)英语六年级上Unit 1《In China》单元测试卷
- GB∕T 34662-2017 电气设备 可接触热表面的温度指南
- 中频电疗法课件
- CNAS和CMA需要编制的表单
- 高档写字楼物业管理工作手册房地产2020
- 医院窗口服务礼仪培训PPT课件(最新)
- 干货最全的主族元素发现史(每族一篇,成系列,共8篇)
- 35KV线路工程强制性条文执行计划
评论
0/150
提交评论