




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章 数据类型及表达式 3.1 标识符 标识符 定义:程序中用于标识常量、变量、函数的字符序列 组成: 只能由字母、数字、下划线组成,第一个字母必须是字母或下划线 大小写有区别 不能使用C语言的关键字 规则: 见名知意 不宜混淆 请指出下列标识符的正误: count、!count、new、5abc、if、do、L_5、who、a123、_A、 _123、c#、r-3、printf 变量命名的注意事项: 编译系统将大写字母和小写字母认为是两个不同的字符。 建议变量名的长度最好不要超过8个字符。 在选择变量名和其它标识符时,应注意做到“见名知意”,即选有含 意的英文单词 (或其缩写)作标识符。 要求对所有用到的变量作强制定义,也就是“先定义,后使用” 。 例:判断下列标识符号合法性 sum Sum M.D.John day Date 3days student_name #33 lotus_1_2_3 char ab _above $123 3.2 数据类型 C语言的基本数据类型有4种: 数据类类型长长度 int(整型) float(单单精度浮点型) double(双精度浮点型) char(字符型) 4Byte16bit 4Byte=32bit 8Byte=64bit 1Byte=8bit 还有4种构造类型: 数组、结构体(struct)、共同体(union)、枚举(enum) 3.3 常量 常量 定义:程序运行时值不能改变的量,即常数。 分类: 符号常量:用标识符表示具体值 定义格式: 一般用大写字母 直接常量:直接写出具体值 整型常量 实型常量 字符常量 字符串常量 #define 标识符 常量值 语言规定: 所有变量在使用前必须先定义 3.4 变量 变量是指程序执行过程中,其值可以改变的量。变量 有一个名字,称为变量名,用标识符表示。 变量的定义格式: 如:int a,b,c; float x,y,z; char ch; 变量的定义一般写在函数开头,同时定义多个变量用逗 号隔开。 类型名 变量名,变量名,.,变量名; 编译程序根据变量定义为其 分配指定字节的内存单元 . 地址 int a=1, b=-3,c; a b c 2字节 2字节 2字节 地址 地址 . 内存 1 -3 随机数 变量 概念:其值可以改变的量 变量名与变量值 变量定义的一般格式: 数据类型 变量1,变量2,变量n; * / % -+ - (2) (3) (4) i=j=3; x=i+; y=+j; i: 4 j: 4 x: 3 y: 4 建议:+和-语句如非特 殊需要,请单独一行使用 如: x+; -k; 自增、自减运算符 例 -i+ -(i+) i=3; printf(“%d”,-i+); /-3 例 j+k; (j+)+k; 例 -i+ i=3; printf(“%d”,-i+); 例 j=3; k=+j; j=3; k=j+; j=3; printf(“%d”,+j); j=3; printf(“%d”,j+); a=3;b=5;c=(+a)*b; a=3;b=5;c=(a+)*b; /k=4,j=4 /k=3,j=4 /4 /3 /c=20,a=4 /c=15,a=4 3.9 运算符和表达式 3.9.2 赋值表达式 简单赋值运算符 符号:= 格式:变量标识符=表达式 功能:将一个数据(常量或表达式)赋给一个变量 复合赋值运算符 种类:+= -= *= /= %= = = b=4; a=b; 3=x-2*y; a+b=3; float f; int i; i=10; f=i; 则f=10.0 int i; i=2.56; 则i=2 说明: 结合方向:自右向左 优先级: 14 左侧必须是变量, 不能是常量或表达式 赋值表达式的值与变量值相等,且可嵌套 赋值转换规则:使赋值号右边表达式值自动转换成其左边 变量的类型 例 3=x-2*y; a+b=3; 例 float f; int i; i=10; f=i; 则 f=10.0 例 int i; i=2.56; /结果i=2; 例: a=b=c=5 a=(b=5) a=5+(c=6) a=(b=4)+(c=6) a=(b=10)/(c=2) /a=-264 等价于a=a+(a=a-(a*a) /a=0 等价于a=a+(a=a*(a=a-(a=a*3) v赋值表达式的值与变量值相等, v且可嵌套 例:a=b=c=5 a=(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 例: int a=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,6 a=(a=3,6*3) a=a=3,6*3 a=3,a+=2,a+3 a=3*5,a*4 (a=3*5,a*4),a+5 6 a=18 18 a=3 18 a=5 8 a=15 60 a=15 20 3.10 数据类型转换 3.10.1 隐式转换 整型、实型和字符型数据之间可以混合运算。例如: 10 + a + 1.5 - 8765.1234 * b 不同数据类型之间运算会进行自动类型转换,规则如下: int char,short unsigned long double float 低 高 必定的转换 运算对象类型不 同时转换的方向 char ch; int i; float f; double d; ch / i + f * d - ( f + i ) double intdoubledouble double intdoubledouble 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 说明:强制转换得到所需类型的中间变量,原变量类型、 变量值保持不变 较高类型向较低类型 转换时可能发生 精度损失问题 #include main() float x; int i; x=3.6; i=(int)x; printf(“x=%f,i=%d”,x,i); 结果:x=3.600000,i=3 练习 1、以下合法的实型常数是: A. 5E2.0 B. E-3 C. 2E0 D. 1.3E 2.选出哪组为合法的用户标识符: A. void define WORD B. A3_b3 _123 IF C. for -abccase D. 2aD0sizeof C B: case, sizeof, for是关键字, 2a非法,IF大写 语 言 程 序 设 计 C 练习 3、选出合法的关键字: A、VAR B、cher C、integer D、 default 4、合法的用户标识符组: A. for -
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 鱼泡师傅考试试题及答案
- 颅脑创伤考试题及答案
- 加法减法面试题及答案
- 信访局考试试题及答案
- 2025年广元市消防员招录考试笔试试题(含答案)
- 2025年广安市岳池县农业技术助理岗招聘考试笔试试题(含答案)
- 栓绳安全知识培训内容课件
- 2025年度“全国安全生产月”《安全知识》考试题库(含答案)
- 护理质量试题及答案
- 应急管理知识练习题(附答案)
- 2025年文物保护工程从业资格考试(责任工程师·近现代重要史迹及代表性建筑)历年参考题库含答案详解(5套)
- 社保补助协议书范本
- 2025年调度持证上岗证考试题库
- 小区物业薪酬制度方案(3篇)
- 2025年计算机一级考试题库操作题及答案
- 高血压防治指南
- 2025反洗钱知识试题题库及参考答案
- 高中心理健康教学课件
- 演艺管理专业考试2025年试卷及答案
- 砂型铸造安全培训
- 2025暑期期末教师大会上校长在师德师风会讲话-:师德师风建设是我们一生的修行
评论
0/150
提交评论