说明: 结合方向:自右向左 优先级: 12 左侧必须是变量,不能是常量或表达式 赋值表达式的值与变量值相等,且可嵌套 赋值转换规则:使赋值号右边表达式值自动转换成其左边变量的类型 例: 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))) 语言程序设计 第2讲 数据描述 C 逗号运算符和表达式 形式:表达式1,表达式2,……表达式n 结合性:从左向右 优先级: 15 逗号表达式的值:等于表达式n的值 用途:常用于循环for语句中 例 a=3*5,a*4 a=3*5,a*4,a+5 例 x=(a=3,6*3) x=a=3,6*a 例 a=1;b=2;c=3; printf(“%d,%d,%d”,a,b,c); printf(“%d,%d,%d”,(a,b,c),b,c); //a=15,表达式值60 //a=15,表达式值20 //赋值表达式,表达式值18,x=18 //逗号表达式,表达式值18,x=3 //1,2,3 //3,2,3 语言程序设计 第2讲 数据描述 C 逗号运算符和表达式 形式:表达式1,表达式2,……表达式n 结合性:从左向右 优先级: 15 逗号表达式的值:等于表达式n的值 用途:常用于循环for语句中 例: /*ch2_6.c*/ #include stdio.h main() { int x,y=7; float z=4; x=(y=y+6,y/z); printf(x=%d\n,x); } 运行结果:x=3 语言程序设计 第2讲 数据描述 C 关系运算符和表达式 关系运算符 种类: = == = != 结合方向:自左向右 优先级别: = = == != 优先级6(高) 优先级7(低) 例 ca+b //c(a+b) ab!=c //(ab)!=c a==bc //a==(bc) a=bc //a=(bc) 关系表达式的值:是逻辑值“真”或“假”,用1和0表示 例 int a=3,b=2,c=1,d,f; ab (ab)==c b+ca d=ab f=abc //表达式值1 //表达式值1 //表达式值0 //d=1 //f=0 语言程序设计 第2讲 数据描述 C 关系运算注意: 例 若a=0; b=0.5; x=0.3; 则 a=x=b的值为 0 例 5278在C中是允许的, 值为 0 例 int i=1, j=7,a; a=i+(j%4!=0); 则a= 2 例 ‘a’0 结果为 ‘A’100 结果为 1 0 语言程序设计 第2讲 数据描述 C 关系运算注意: 例 注意区分“=”与“==” int a=0,b=1; if(a=b) printf(“a equal to b”); else printf(“a not equal to b”); 例 应避免对实数作相等或不等的判断 如 1.0/3.0*3.0==1.0 结果为 可改写为:fabs(1.0/3.0*3.0-1.0)1e-6 0 语言程序设计 第2讲 数据描述 C a b !a !b ab a||b 真 假 真 假 假 假 真 真 逻辑运算符和表达式 逻辑运算符 种类: ! || 逻辑运算真值表 C语言中,运算量: 0表示“假”, 非0表示“真”, 运算结果: 0表示“假”, 1表示“真”, 真 假 假 假 假 假 真 真 假 假 真 真 真 假 真 真 语言程序设计 第2讲 数据描述 C ! (2) (11) || (
您可能关注的文档
最近下载
- 乐购Hymall连锁超市-收银员排班工具使用作业规范.pdf VIP
- 黑龙江省教育学会示范性高中专业委员会2025届高三下学期第一次模拟考试 语文 含答案.docx VIP
- ISPE第五部分试车与确认课件.pptx VIP
- 【2026年春新教材】部编版小学二年级下册道德与法治全册教案(教学设计).docx
- 数学北师大版八年级下册多边形的内角和教学设计.docx VIP
- 守正创新担使命,凝心聚力启新程——校长在2026年春季学期全体教师开学大会上的讲话.docx
- 《体育课程与教学论》全套PPT课件.pptx VIP
- 第一章税收初阶资料.ppt VIP
- 数据接口安全管理制度.docx VIP
- 道路车辆 电气及电子设备的环境条件和试验 第3部分:机械负荷.docx VIP
原创力文档

文档评论(0)