




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据及其表示方法 数据的基本运算 基本输入输出 第二章基本程序设计 编制程序之前 首先要具备一些基础知识 程序主要描述 以上三个问题是程序设计的最基本问题 2 2数据类型 数据是对客观事物特征的符号化表示 客观事物不同 表示的方法也不同 人数用整数表示 圆面积用小数表示 灯的状态用开关表示 信件要用文字表示 计算机的处理方法也不同 因此根据程序处理的数据对象 应规定数据的类型 数据类型不同时 数据的外部表示方式和内部存储方式不同 表示的范围和精度不同 对数据的处理方式不同 C语言的数据类型 数据类型 基本类型 构造类型 数组结构体struct联合union枚举型enum 指针类型 空类型void 整型int字符型char实型 浮点型 单精度float双精度double 基本数据类型所占内存的字节数和取值范围见p20表2 1 2 2常量 Constant 及其类型 常量的概念 在程序中不能改变的量 常量的类型由数据的外部表现形式确定 不占用内存 程序运行时直接出现在运算器中 常量的外部形式及其确定的类型 整型常量 根据数表示的范围可以有长整型和一般整型 用来表示十进制 八进制 十六进制整数 其中八进制 十六进制不能有符号 进制表示举例范围字节数十进制2304 32768 327672八进制044000 0177777 65535 2十六进制0 xaa000 x0000 0 xffff 65535 2 进制表示举例范围字节数十进制 21234l 231 231 14八进制04400l0 0377777777774十六进制0 xaa00L0 x0000 0 xffffffff4 一般整型的表示 长整型的表示 实型常量 只有十进制 实型 浮点型 常量 具有一定精度的量 两种表示方法 小数表示法 一个小数点 符号和至少一位数字 2 01 0 11113 15 指数表示法 规则 ne m表示n 10 m 小数部分 整型常量或小数形式表示的实型常量 指数部分 两位整数 n决定精度 m决定范围 两种表示法一般精度为7位 取值范围为10 38 10 38 当超过范围时称为 溢出 1 23e20 123456E 3 1e 70 123e 4 123 0123 456 100000000 0000123 123123 456 1070 123 10 4 小数法 指数法 字符常量 单引号 定界的一个字符 表示ASCII字符集 见p316 中的一个字符 字符有一个整型值 即该字符的ASCII码值 如 a 字符串常量 双引号 定界的字符序列 以字符的ASCII码值的二进制形式存放于内存 系统会在最后一个字符后加NULL 0 ASCII码值为0 标志字符串的结束 如 Iamastudent HEFEI hello 内存 注意 a 和 a 的区别 a a 97 内存 内存 符号常量 用一个标识符代表一个常量 如 definePI3 14159在第五章函数5 7编译预处理 一节中详细论述 2 3变量 Variable 及其类型 变量的概念在程序中可以改变的量 变量特征 变量有名 用标识符命名 变量有类型 变量有地址 变量对应于内存中某一地址下的几个单元 变量名为引用变量的标志 变量的类型确定变量在内存中所占单元的数量 变量的地址通过运算符 获得 内存 inta a变量的引用标志 a对应a的地址 整型变量占两个内存单元 变量必须先说明后使用 说明的目的是确定变量的名字和类型 变量的定义 说明 格式 type变量名表 类型说明符 包括基本类型说明和修饰说明 基本类型 int char float double 修饰类型 unsigned signed long short inta b c 2 3 2整型变量 有符号整型变量说明 内存中以二进制补码形式表示 见p23例 说明符字节数范围int 整型 2 32768 32767 p25图2 4 short int 短整型 2 32768 32767long int 长整型 4 2147483648 2147483647 例 shorta b c inte f g long qs num 用 分隔的多个变量名 注意 超过整型范围 数据溢出l2 2 c 见p26图2 7 char float 无符号整型变量说明 2 3 3字符型变量 说明符字节数范围char1 128 127unsignedchar10 255 例 charc1 c2 c1 a c2 b 注 字符型和整型之间数据可以通用 把一个字符放到一个变量中 实际上是把该字符的ASICC值放到内存单元中 c1 c2 01100001 01100010 97 98 A 10 101 c1 65 10 65 97 237 说明符字节数范围unsigned int 20 65535unsignedshort20 65535unsignedlong40 4294967295 例 unsignedd e f 例1 例2 见p27例2 3l2 3 c 2 3 4实型变量 内存中以指数形式存储 见P26图2 8 说明符字节数范围精度float410 38 10 387位double810 308 10 30816位 实型变量包含精度和范围两个概念 超过精度位数后的数值不确定 floata a 1 2345678910 超过范围溢出 Overflow 超出精度部分 不准确 floata b c a 1 234e 20 b 2 345e 21 c a b 超出1038 溢出 例 floatx y doublea b 当运算结果大于10 38称为上溢 系统出错 当运算结果小于10 38称为下溢 当0处理 2 4运算符与表达式 程序重要的一点是对数据按照算法进行处理 运算 C语言运算功能强大 提供了多种运算符 数据通过运算符连接的式子称为表达式 表达式根据运算对象 常量 变量 数组 函数 及运算关系得到一个值 运算符的种类 按功能 1 算术运算符 2 关系运算符 3 逻辑运算符 4 赋值运算符 5 逗号运算符 6 条件运算符 7 指针运算符 8 位操作运算符 注意 表达式的运算方向 结合性 运算符的优先级别 数据类型的转换 按运算对象的个数 1 单目运算符 2 双目运算符 3 三目运算符 2 4 1算术运算符和算术表达式 功能 完成各种类型数据的加 减 乘 除及求余数运算 双目算术运算 两个运算对象参加的运算 只能对整型或字符型数据运算 余数符号与被除数相同 注意 乘号不能省略 11 5 1 11 5 例 5 2 0 2 500000而 5 2 2 自加 自减运算 单目运算 说明 只能用于变量运算且对象只能是一个变量 前置是先自加 减 后运算 后置则是先运算 后自加 减 2 Error inti x i 5 x i x i i i 1 i 5 x i i i 1 x i 算术表达式用算术运算符和括号将运算对象连接起来 符合C规则的式子 例 见p30例2 5 例 inti x y i 5 x i x i y i 运算结果 x 5 y 7 i 7 自加 减 运算具有右结合性 2 4 2赋值运算符和赋值表达式 1 简单赋值运算符和表达式 格式 变量 表达式 将表达式的值赋给变量 例2 intb b 3 2 说明后赋值 说明 是赋值运算符 动词 赋值运算的左值只能是变量 a a 2 iCount a 5 b 8 a 2 a Error inta 2 5 2 a 赋值号两边类型应该一致 如不一致 以变量类型转换 赋值运算具有右结合性 A 5 c 6 例1 inta 2 说明语句中赋值 2 复合赋值运算符 说明 运算对象的左值只能是一个变量 a 2 5 Error 运算的对象 必须是整型 例 a a a a a a a a a a a 12 144 132 a 132 a a 132 132 132 264 运算具有右结合性 a 12 2 4 3变量赋值和类型转换 1 变量赋值对变量说明的同时给变量赋值 初始化例如 inta 3 b 5 c 6 floatx 3 2 y 0 75 2 赋值过程中变量类型的转换 1 自动转换 赋值号两边类型不同 转换原则 就左不就右 inta floatb b 2 3 0 b0 0 a 5 0 2 0 2 5 a2 将数据或计算结果存入变量 变量赋值例如 intx y z x 17 y 6 z x y 运算对象类型不同 转换原则 就长不就短 以保证不降低精度为原则 char int long double float 2 16 0 15 0 double float double 运算时可以实行类型的强制转换 格式 类型说明符 表达式 例如 float a int x y 2 强制类型转换 先将低等类型转换为高等类型后再进行运算 运算结果取高等类型 等级原则如下 注 无论是自动转换还是强制转换 只对当前表达式起作用 临时性转换 不会改变说明语句定义的变量类型 main floatx 3 6 inti i int x printf x f i d n x i 输出结果 X 3 600000 i 3 运算的优先级 表达式的运算是分步骤进行的 当一个表达式中出现多种运算时 存在优
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年呼吸内科呼吸系统疾病筛查考试答案及解析
- 民族团结创建课件
- 2025年皮肤科疾病诊断与治疗学习问答答案及解析
- 2025年康复理疗技术操作评估答案及解析
- 民族内涵课件
- 2025年肿瘤科学病理解读讨论答案及解析
- 2025年麻醉学临床技能操作模拟考试答案及解析
- 2025年消化内科病例分析训练总结卷答案及解析
- 2025年危重病房监护常规操作考核答案及解析
- 变间隙密封液压缸:间隙精准测量与唇边疲劳寿命的深度剖析
- 2024年中国农业银行秋季校园招聘考试真题及答案
- 乡村医生药品管理培训
- 医院培训课件:《危重病人心电监测》
- 医院规培合同范本
- 银行贷款电子合同电子版(2025年版)
- 非物质文化遗产微短剧叙事策略与文化传承路径研究
- 胫腓骨骨折内固定术手术配合
- 隔物灸技术课件完整版
- 标本的安全运送
- 2025版员工试用期延长协议书
- 学生床上用品、学生校服供货服务保障方案
评论
0/150
提交评论