c语言ch2什么意思,ch2-3C语言的语法.ppt

轻松一刻,学校开学点名,有一个班主任别出心裁,对学生说:“我念学号,你们自己报一下名字,这样大家就认识了,好不好?” “001号!” 一个女生站起来:“报告老师,我姓张,我叫张德开。” “002号!” “报告老师,我是张德开的孪生弟弟,我叫张不开。” “这是谁给你们起的名?” “是我爸,他是卖钳子的。”老师赶紧喝了口水。 “003号!” “报告老师,我姓区(这个字念”欧”)我叫区夜(哦也),这是我妈给我取的名,她说生我的时候刚好打爆了一个电脑游戏。”老师的心脏有点不舒服了。 “004号!” “老师,我姓苟,叫苟不理。” “你老爸是开包子铺的吧?!” “老师,您真聪明!”老师已经有点站不稳了。,“005号!” “我姓蒯(读快,发第三声).叫蒯货。” “你别告诉我你老爸是开货栈的。” “老师,你可真老土了,我老爸是拉皮条的。”老师的嘴角已经渗出了血。 006号!” “老师,你去死!” “什么?你说什么?!” “我是说我姓倪,叫倪去寺。我老妈是个信佛的人,我的名字有意思吧?” “有意思,有意思。”老师快哭出来了。 “007号!” “老师,下回说。” “为什么要下回说,你现在就说!” “不是的啦!老师,我姓夏,叫夏汇烁,我老爸是个说评书的。”老师已经感到天旋地转了。 “008号!” “我姓梅,叫梅良心。” “009号!” “我姓吴,叫吴晴。” “010号!” “我姓毛,叫毛蓉蓉。”………… 老师仰天长哮:“天啊,我碰上了一群什么学生啊!”老师口喷鲜血,倒地气绝.,回顾上次课,重要知识点: 2.5 字符型数据 2.6 各类数值型数据间的混合运算 2.7 算术运算符和算术表达式,1.在C语言中要求参加运算的数必须是整数的运算符是( ) A. / B. ! C. % D.==,C,复习题,2.已知ch是字符型变量,下面正确的赋值语句是( ) A、ch=‘123’ B、ch=‘xfff’ C、ch=‘\08’ D、ch=’\\’,D,复习题,复习题,3.下列符号不符合标识符规则的是( ) A. 11/3 B. 11.0/3 C. (float)11/3 D. (int)(11.0/3+0.5),D,复习题,4.下面语句的执行结果( ) #include void main() { int i=-19,j=i%-4; printf(“%d\n“,j); },-3,%结果与被除数的符号一致,复习题,5.设y为int型变量,描述“ Y是偶数”的表达式是,( y%2==0 ),,复习题,6.以下选项中与 k=n++完全等价的表达式为( ) A.k=n,n=n+1 B.n=n+1,k=n C.k=++n D.k+=n+1,A,复习题,7. int i=6,j;则执行语句j=(++i)+(i++)后,j的值( ) A.4 B.14 C.13 D.15,B,,8.设 a=2,b=3,x=3.5,y=2.5; 计算(float)(a+b)/2+(int)x%(int)y/4,2.500000,编程题,9.编写一个程序,将用户输入的大写字母转成小写字母,#include void main() { char c,ch; printf(“输入一个大写字母:“); scanf(“%c“, },本次课主要内容,2.8 赋值运算符与赋值表达式 2.9 逗号运算符与逗号表达式 2.10 本章小结,2.8 赋值运算符和赋值表达式,简单赋值运算符“=” 作用:将一个数据赋给一个变量,“=”左边只能是变量,不能是常量或表达式,例 3=x-2*y; a+b=3;,例 a=3; a=(a+b)*c,A)i为整型变量,执行“i=3.56”的结果是,B)将23赋给float变量f,即执行f=23,结果是,C)将23赋给double型变量d,即执行d=23,结果是,D)float f; double d=123.456789e100; f=d;,赋值运算中要注意的问题,3,23.00000,溢出,课堂练习题,1.若变量a是int类型,并执行了语句:a=‘A’+1.6;则正确的叙述是( ) A. a的值是字符C B. a的值是浮点型 C.不允许字符型和浮点型相加 D. a的值是字符A的ASCII值加上1,D,课堂练习题,2.已知字母A的ASCII码为65,且C2为字符型,则执行语句C2=‘A’+’6’-’3’;后,C2的值为( ) A. D B. 68 C.不确定的值 D. C,A,在赋值符“=”之前加上其他运算符,可以构成复 合的运算符。 例如: a+=3 等价于 a=a+3 x*=y+8 等价于 x=x*(y+8) x%=3 等价于 x=x%3,注意:如果b是包含若干项的表达式,则相当于它有括号。 如: ① x %= y+3 ② x %= (y+3) |__↑ ③ x = x %(y+3)(不要错写成x=x%y+3),凡是二元(二目)运算符,都可以与赋值符一起组合成复合赋值符。,复合的赋值运算符,赋值表达式 定义:由赋值运算符将一个变量和一个表达式连接起来的式子,叫赋值表达式。 一般形式: ,对赋值表达式求解的过程是: ①求赋值运算符右侧的“表达式”的值; ②赋给赋值运算符左侧的变量。 例如: 赋值表达式“a=3*5”的值为15,执行表达式后,变量a的值也是15。,例如: “a=5”是一个赋值表达式,赋值表达式中的“表达式”,又可以是一个赋值表达式。 例如: a=(b=5),分析:括弧内的“b=5”是一个赋值表达式,它的值等于5。执行表达式“a=(b=5)”相当于执行“b=5”和“a=b”两个赋值表达式。 赋值运算符按照“自右而左”的结合顺序,因此,“(b=5)”外面的括弧可以不要,即“a=(b=5)”和“a=b=5”等价。,结合方向:自右向左 优先级: 14,例: 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,//表达式值5,a=5,b=10,c=2,赋值表达式也可以包含复合的赋值运算符。 如:a+=a-=a*a //a的初值为12,分析:此赋值表达式的求解步骤如下∶ ① 先进行“a-=a*a”的运算, 它相当于a=a-a*a,a的值为12-144=-132。 ②再进行“a+=-132”的运算,相当于a=a+(-132),a的值为-132-132=-264。,分析:如果b的值为3, 则输出a的值(也是表达式a=b的值)为3。在一个语句中完成了赋值和输出双重功能。,将赋值表达式作为表达式的一种,使赋值操作不仅可以出现在赋值语句中,而且可以以表达式形式出现在其他语句(如输出语句、循环语句等)中。 如:printf(“%d“,a=b);,练一练,例:定义a为整型变量,且设其初值为10,则表达式a+=a-=a*=a的值是( ) A.10 B.0 C.100 D.-10,B,下列代码的执行结果,#include void main() { int a=3; printf(“%d\n“,a+=a-=a*a); },-12,2.9 逗号运算符和逗号表达式,逗号运算符:将两个表达式连接起来,又称为“顺序求值运算符” 如:3+5,6+8,一般形式: 表达式1,表达式2,求解过程:先求解表达式1,再求解表达式2。 整个逗号表达式的值是表达式2的值。,逗号表达式 的值为14,例:a=3*5,a*4,分析:逗号运算符是C语言所有运算符中级别最低的运算符, 因此应先求解a=3*5。,a的值为15,然后求解a*4,得60。整个逗号表达式的值为60。,一个逗号表达式又可以与另一个表达式组成一个新的逗号表达式 如:(a=3*5,a*4),a+5,逗号表达式的一般形式可以扩展为 表达式1,表达式2,表达式3,……,表达式n 它的值为表达式n的值。,注意:并不是任何地方出现的逗号都是作为逗号运算符。例如函数参数也是用逗号来间隔的。 如: printf(“%d,%d,%d”,a,b,c);,a,b,c并不是一个逗号表达式,它是printf函数的3个参数,printf(“%d,%d,%d”,(a,b,c),b,c),(a,b,c)是一个逗号表达式,它的值等于c的值。,例: a=1;b=2;c=3; printf(“%d,%d,%d”,a,b,c); printf(“%d,%d,%d”,(a,b,c),b,c);,练一练,已知int x,则使用逗号表达式(x=4*5,x*5),x+25的结果是( ),变量x的值是( ) A.20 B.100 C.45 D.表达式不合法,C,A,2.10 本章小结,常量是在程序中不能被更改的值;而变量在程序中可以被更改的,通过变量可以引用存储在内存中的数据; C语言中的基本数据类型包括整型、单精度浮点型、双精度浮点型和字符型; 整型分为短整型、整型、长整型,每种整型又可分为有符号型和无符号型;,总结 2,单精度浮点型和双精度浮点型变量可以存储实数,但双精度型取值范围要比单精度型大的多; 字符型变量可以存储单个字符,其值是该字符的ASCII 码; 算术运算符提供运算功能,包括+、-、*、/、%、++和--。,,

展开阅读全文

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值