首页考试吧论坛Exam8视线考试商城网络课程模拟考试考友录实用文档求职招聘论文下载
2013中考
法律硕士
2013高考
MBA考试
2013考研
MPA考试
在职研
中科院
考研培训 自学考试 成人高考
四 六 级
GRE考试
攻硕英语
零起点日语
职称英语
口译笔译
申硕英语
零起点韩语
商务英语
日语等级
GMAT考试
公共英语
职称日语
新概念英语
专四专八
博思考试
零起点英语
托福考试
托业考试
零起点法语
雅思考试
成人英语三级
零起点德语
等级考试
华为认证
水平考试
Java认证
职称计算机 微软认证 思科认证 Oracle认证 Linux认证
公 务 员
导游考试
物 流 师
出版资格
单 证 员
报 关 员
外 销 员
价格鉴证
网络编辑
驾 驶 员
报检员
法律顾问
管理咨询
企业培训
社会工作者
银行从业
教师资格
营养师
保险从业
普 通 话
证券从业
跟 单 员
秘书资格
电子商务
期货考试
国际商务
心理咨询
营 销 师
司法考试
国际货运代理人
人力资源管理师
广告师职业水平
卫生资格 执业医师 执业药师 执业护士
会计从业资格
基金从业资格
统计从业资格
经济师
精算师
统计师
会计职称
法律顾问
ACCA考试
注册会计师
资产评估师
审计师考试
高级会计师
注册税务师
国际内审师
理财规划师
美国注册会计师
一级建造师
安全工程师
设备监理师
公路监理师
公路造价师
二级建造师
招标师考试
物业管理师
电气工程师
建筑师考试
造价工程师
注册测绘师
质量工程师
岩土工程师
造价员考试
注册计量师
环保工程师
化工工程师
咨询工程师
结构工程师
城市规划师
材料员考试
监理工程师
房地产估价
土地估价师
安全评价师
房地产经纪人
投资项目管理师
环境影响评价师
土地登记代理人
缤纷校园 实用文档 英语学习 作文大全 求职招聘 论文下载 访谈|游戏
计算机等级考试
您现在的位置: 考试吧(Exam8.com) > 计算机等级考试 > 计算机二级 > C语言 > 复习资料 > 正文

2013年计算机等考二级《C语言》复习笔记第二章第6节

来源:考试吧Exam8.com) 2012-10-30 9:07:38 考试吧:中国教育培训第一门户 模拟考场

  算术表达式

  是由算术运算符和括号连接起来的式子, 以下是算术表达式的例子:

  a+b (a*2)/c (x+r)*8-(a+b)/7 ++i sin(x)+sin(y) (++i)-(j++)+(k--)

  赋值运算符和赋值表达式

  简单赋值运算符和表达式,简单赋值运算符记为“=”。由“= ”连接的式子称为赋值表达式。其一般形式为: 变量=表达式 例如:

  x=a+b

  w=sin(a)+sin(b)

  y=i+++--j 赋值表达式的功能是计算表达式的值再赋予左边的变量。赋值运算符具有右结合性。因此

  a=b=c=5

  可理解为:

  a=(b=(c=5))

  在其它高级语言中,赋值构成了一个语句,称为赋值语句。 而在C中,把“=”定义为运算符,从而组成赋值表达式。 凡是表达式可以出现的地方均可出现赋值表达式。例如,式子x=(a=5)+(b=8)是合法的。它的意义是把5赋予a,8赋予b,再把a,b相加,和赋予x ,故x应等于13。

  在C语言中也可以组成赋值语句,按照C语言规定, 任何表达式在其未尾加上分号就构成为语句。因此如x=8;a=b=c=5;都是赋值语句,在前面各例中我们已大量使用过了。

  如果赋值运算符两边的数据类型不相同, 系统将自动进行类型转换,即把赋值号右边的类型换成左边的类型。具体规定如下:

  1.实型赋予整型,舍去小数部分。前面的例2.9已经说明了这种情况。

  2.整型赋予实型,数值不变,但将以浮点形式存放, 即增加小数部分(小数部分的值为0)。

  3.字符型赋予整型,由于字符型为一个字节, 而整型为二个字节,故将字符的ASCII码值放到整型量的低八位中,高八位为0。

  4.整型赋予字符型,只把低八位赋予字符量。

  void main(){

  int a,b=322;

  float x,y=8.88;

  char c1='k',c2;

  a=y;

  x=b;

  a=c1;

  c2=b;

  printf("%d,%f,%d,%c",a,x,a,c2);

  }

  int a,b=322;

  float x,y=8.88;

  char c1='k',c2;

  printf("%d,%f,%d,%c",a=y,x=b,a=c1,c2=b);

  本例表明了上述赋值运算中类型转换的规则。a为整型,赋予实型量y值888后只取整数8.x为实型,赋予整型量b值322,后增加了小数部分。字符型量c1赋予a变为整型,整型量b赋予c2 后取其低八位成为字符型(b的低八位为01000010,即十进制66,按ASCII码对应于字符B)。

  复合赋值符及表达式

  在赋值符"="之前加上其它二目运算符可构成复合赋值符。如:

  +=,-=,*=,/=,%=,《=,》=,&=,^=,|=. 构成复合赋值表达式的一般形式为: 变量 双目运算符=表达式 它等效于 变量=变量 运算符 表达式 例如: a+=5 等价于a=a+5 x*=y+7 等价于x=x*(y+7) r%=p 等价于r=r%p

  复合赋值符这种写法,对初学者可能不习惯, 但十分有利于编译处理,能提高编译效率并产生质量较高的目标代码。逗号运算符和逗号表达式在

  逗号运算符

  C语言中逗号“,”也是一种运算符,称为逗号运算符。 其功能是把两个表达式连接起来组成一个表达式, 称为逗号表达式。

  其一般形式为: 表达式1,表达式2 其求值过程是分别求两个表达式的值,并以表达式2的值作为整个逗号表达式的值。

  void main(){

  int a=2,b=4,c=6,x,y;

  x=a+b,y=b+c;

  printf("y=%d,x=%d",y,x);

  }

  a<--2,b<--4,c<--6,x<--0,y<--0

  x<--a+b,y<---b+c

  本例中,y等于整个逗号表达式的值,也就是表达式2的值,x是第一个表达式的值。对于逗号表达式还要说明两点:

  1.逗号表达式一般形式中的表达式1和表达式2 也可以又是逗号表达式。例如: 表达式1,(表达式2,表达式3) 形成了嵌套情形。因此可以把逗号表达式扩展为以下形式: 表达式1,表达式2,…表达式n 整个逗号表达式的值等于表达式n的值。

  2.程序中使用逗号表达式,通常是要分别求逗号表达式内各表达式的值,并不一定要求整个逗号表达式的值。

  3.并不是在所有出现逗号的地方都组成逗号表达式,如在变量说明中,函数参数表中逗号只是用作各变量之间的间隔符。

  [Practice] //arithmeticint a,b,c;

  float d;

  a=11;

  b=235;

  c=a+b-a*b;

  d=(float)c/(float)a;

  a=c/a;'Vtable

  a,2,0

  b,2,0

  c,2,0

  d,4,0.0

  of Vtable

  'Vupdate

  1,0;2,0;3,0

  4,0.0

  1,11

  2,235

  3,-2339

  4,-212.636368

  1,-212

  of Vupdate

  of Practice

  [Practice] //1int a,b,c1,c2;

  a=25;

  b=3243;

  c1=b/a;

  c2=b%a;'Vtable

  a,2,0

  b,2,0

  c1,2,0

  c2,2,0

  of Vtable

  'Vupdate

  1,0;2,0;3,0;4,0

  1,25

  2,3243

  3,129

  4,18

  of Vupdate

  of Practice

  [Practice] //1int a,b,c;

  a=25;

  b=40;

  c=a+b,c+35;'Vtable

  a,2,0

  b,2,0

  c,2,0

  of Vtable

  'Vupdate

  1,0;2,0;3,0

  1,25

  2,40

  3,65

  of Vupdate

  of Practice

1 2  下一页

  编辑推荐:

  2012年9月计算机等级考试成绩查询短信提醒

  2013年上半年计算机等级考试报名时间预测

  2012年计算机等级考试二级VB重点知识汇总

文章搜索
版权声明:如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。