c语言第3章数据类型及表达式.ppt

上传人:max****ui 文档编号:6334445 上传时间:2020-02-23 格式:PPT 页数:27 大小:362.31KB
返回 下载 相关 举报
c语言第3章数据类型及表达式.ppt_第1页
第1页 / 共27页
c语言第3章数据类型及表达式.ppt_第2页
第2页 / 共27页
c语言第3章数据类型及表达式.ppt_第3页
第3页 / 共27页
点击查看更多>>
资源描述
第3章数据类型及表达式 3 1标识符 标识符定义 程序中用于标识常量 变量 函数的字符序列组成 只能由字母 数字 下划线组成 第一个字母必须是字母或下划线大小写有区别不能使用C语言的关键字规则 见名知意不宜混淆 请指出下列标识符的正误 main count count new 5abc if do L 5 who a123 A 123 c r 3 printf 3 2数据类型 C语言的基本数据类型有4种 还有4种构造类型 数组 结构体 struct 共同体 union 枚举 enum 3 3常量 常量定义 程序运行时值不能改变的量 即常数 分类 符号常量 用标识符表示具体值定义格式 一般用大写字母直接常量 直接写出具体值整型常量实型常量字符常量字符串常量 define标识符常量值 语言规定 所有变量在使用前必须先定义 3 4变量 变量是指程序执行过程中 其值可以改变的量 变量有一个名字 称为变量名 用标识符表示 变量的定义格式 如 inta b c floatx y z charch 变量的定义一般写在函数开头 同时定义多个变量用逗号隔开 类型名变量名 变量名 变量名 3 5整型数据 3 5 1整型常量三种表示形式 十进制整数 由数字0 9和正负号表示 如123 456 0八进制整数 由数字0开头 后跟数字0 7表示 如0123 011十六进制整数 由0 x或0X开头 后跟0 9 a f A F表示 如0 x123 0Xff长整型常量 789L 017L 0 x12aL 用l或L引出 3 5整型数据 3 5 2整型变量整型变量用于存放整型数据 根据数值的表示范围整型可以为整型 int 短整型 short 长整型 long 三种 这三种整型都默认为有符号型 signed 有符号型即可以是正数 负数和0 也可以根据需要 将整型指定为无符号型 unsigned 此时整型变量只能存放非负数 上面提到的short long signed unsigned都是一些类型修饰符 用于补充说明变量的特性 3 6浮点型数据 3 6 1浮点型常量两种表示形式 十进制小数形式 必须带小数点如0 123 123 123 0 0 0 123 指数形式 e或E之前必须有数字 指数必须为整数如12 3e3 123E2 1 23e4 e 5 1 2E 3 5实型常量的类型细分 默认为double型 例如3 14就是double类型后面加f或F认为是float型 例如3 14f就是float类型 3 6浮点型数据 3 6 2浮点型变量浮点型分为单精度型 float 和双精度型 double 两种 float型数据占用4个字节 32bits 存储单元 提供的有效数字是6 7位 double型数据占用8个字节 64bits 存储单元 提供的有效数字是15 16位 3 7字符型数据 3 7 1字符常量定义 用单引号括起来的单个字符或转义字符如 a A n 转义字符 反斜线 后跟一个字符或一个代码值 用于表示特殊符号 详情见表2 4 字符常量在存储器中的值就是其ASCII码值 includemain printf 101 x42C n printf Isay Howareyou n printf CProgram n printf Turbo C 运行结果 屏幕显示 ABCIsay Howareyou CProgram Turbo C includemain printf Y b n 运行结果 屏幕显示 3 7字符型数据 3 7 2字符串常量字符串常量定义 用双引号括起来的字符序列如 hello world A 存储 每个字符串尾自动加个 0 作为字符串结束标志注意 字符常量和字符串常量是两个不同的概念 charch ch A 错误 charch ch A 3 7字符型数据 3 7 3字符型变量字符型变量在内存中占一个字节 由于存储的是字符的二进制ASCII码 与整型数据存储方式类似 字符型数据和整型数据可以相互运算 注意 字符串常量不允许赋值给字符型变量 C语言也没有专门的字符串变量 要在内存中存取字符串 只能使用数组或指针 3 8变量的初始化 C语言允许在定义变量时直接对其赋值 main intx y x 10 y 20 main intx 10 y 20 3 9运算符和表达式 3 9 1算术表达式1 算术运算符 1 加法运算符 或表示正值 如3 2 1 2 减法运算符 或表示负值 如3 2 8 3 乘法运算符 如4 5 4 除法运算符 如5 3 5 求余运算符 如5 3C语言规定 两个整数相除的结果整数 小数部分被舍去 例如 7 3的结果值是2不是2 5 而7 0 3的结果是2 5 运算符只能用于整数相除求余 运算结果的符号与被除数相同 除 includemain floatdiv div 1 2 printf f n div 当除号两边都是整型量时 叫做整除 运算结果只保留整数部分 当除号任何一边有实型量时 运算结果是实数 includemain floatdiv div 1 2 printf f n div 运行结果 0 000000 运行结果 0 500000 余 includemain printf d n 3 5 printf d n 5 3 printf d n 3 5 printf d n 5 3 printf d n 3 5 printf d n 5 3 3 0 5 3 5 1 3 2 3 0 5 3 5 1 3 2 3 0 5 3 5 1 3 2 要求两侧均为整型数据 5 5 3 余 includemain intnum scanf d includemain intnum i j scanf d 此程序把输入的两位整数进行十位和个位的互换 例如 输入25 输出52 3 9运算符和表达式 3 自增 自减运算符自增 自减运算符的作用是将变量的值增加1或者减少1 自增运算符是 自减运算符是 只能对变量使用 不能用于常量和表达式作前缀时是先运算 后引用作后缀时是先引用 后运算 i j 3 x i y j i 4 j 4 x 3 y 4 建议 和 语句如非特殊需要 请单独一行使用如 x k 3 9运算符和表达式 3 9 2赋值表达式简单赋值运算符符号 格式 变量标识符 表达式功能 将一个数据 常量或表达式 赋给一个变量复合赋值运算符种类 含义 exp1op exp2 exp1 exp1opexp2 结合方向 自右向左赋值语句左侧必须是变量 不能是常量或表达式赋值的转换规则 使赋值号右边表达式值自动转换成其左边变量的类型 赋值运算符和表达式 a 3 b 4 a b 3 x 2 y a b 3 floatf inti i 10 f i 则f 10 0 inti i 2 56 则i 2 赋值表达式的值与变量值相等 且可嵌套 例 a b c 5a b 5 a 5 c 6 a b 4 c 6 a b 10 c 2 表达式值为5 a b c值为5 b 5 a 5 表达式值11 c 6 a 11 表达式值10 a 10 b 4 c 6 赋值运算符和表达式 例 a 12 a a a a 例 inta 2 a 4 1 a a a a 3 a 264等价于a a a a a a a 0等价于a a a a a a a a 3 3 9运算符和表达式 3 9 3逗号运算符和表达式用逗号将多个表达式连接起来 又称为 顺序求值运算符 整个表达式的值是最后那个逗号之后表达式的值 请求下列表达式的值 3 4 6a a 3 6 3 a a 3 6 3a 3 a 2 a 3a 3 5 a 4 a 3 5 a 4 a 5 6 a 1818 a 318 a 58 a 1560 a 1520 3 10数据类型转换 3 10 1隐式转换整型 实型和字符型数据之间可以混合运算 例如 10 a 1 5 8765 1234 b 不同数据类型之间运算会进行自动类型转换 规则如下 必定的转换 运算对象类型不同时转换的方向 charch inti floatf doubled ch i f d f i double int double double double int double double double 10 a 1 5 8765 1234 b 进行10 a 的运算 将 a 转换成整数97 得到和为107 进行107 1 5的运算 将107转换成double型 得到和为108 500000 进行8765 1234 b 的运算 将 b 转换成double型数98 000000 再与8765 1234相乘 把之前得到的108 500000减去8765 1234 b 的值 就完成了整个表达式的求值 3 10数据类型转换 3 10 2强制类型转换一般形式 类型名 表达式 例 int x y int x y double 3 2 int 3 6说明 强制转换得到所需类型的中间变量 原变量类型 变量值保持不变 includemain floatx inti x 3 6 i int x printf x f i d x i 结果 x 3 600000 i 3
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!