首页>计算机>软件水平考试>复习指导>正文
计算机软件水平考试:程序员之程序设计知识点(一)

www.zige365.com 2010-6-23 13:42:28 点击:发送给好友 和学友门交流一下 收藏到我的会员中心

  六个关系运算符中,运算符(<、<=、>、>=)的优先级高于运算符(==,!=)。如表达式X>y==Cy)==(C<d)。

  另外,为便于描述两个复杂算式的比较,关系运算符的优先级低于算术运算符的优先级。

  设有i=1,j=2,k=3,则表达式i>j的值为“假”,即表达式的值为0;表达式i==k>j的值为“真”,即表达式的值为1(先计算k>j,其值为1,等于i);i+j<K的值为“假”,即表达式

  的值为0。

  关系运算符的结合方向是自左至右。仍设i=1,j=2,k=3,则表达式k>j>i的值为0(先计算k>j,其值为1,再计算1>1,结果为0)。

  3.逻辑运算符

  用于逻辑运算的逻辑运算符有三个:

  &&(逻辑与)、||(逻辑或)、!(逻辑非)

  其中运算符“&&”和“||”是双目运算符,要求有两个整型或字符型的运算对象,用于连接多个判定条件,构成更复杂的条件判定;运算符“!”是单目运算符,用于描述对给定条件的否定判定。

  逻辑运算产生的结果也只能是1或0。 1表示逻辑运算结果为“真”;用0表示运算结果为“假”。

  在判定一个运算对象的值为“真”或“假”时,以运算对象的值不等于零为“真”,运算对象的值等于0为“假”。

  逻辑运算符中,按优先级排列为:逻辑非运算符!的优先级高于逻辑与运算符&&,逻辑与运算符&&的优先级高于逻辑或运算符||。另外,&&和||的优先级低于关系运算符的优先级;!的优先级高于算术运算符的优先级。逻辑运算符||和&&的结合方向是自左至右,而逻辑运算符!的结合方向是自有至左。

  需要特别指出的是,“逻辑与”和“逻辑或”运算符分别有以下性质:

  a&&b,仅当a为0时,不管b为何值(实际上不再计算b),结果为0。

  a||b,仅当 a为 1时,不管 b为何值(实际上不再计算 b),结果为1。

  上述性质就是说,对于表达式a&&b,仅当子表达式a为非零时,才计算子表达式b;对于表达式a||b,仅当子表达式a为0时,才计算子表达式b。在具体编写程序时,也应利用以上性质。对于两个条件的逻辑与,如当条件1不成立情况下,条件2的值没有意义或不可计算时,逻辑表达式应写成:

  条件l&&条件2

  避免在条件1不成立情况下,计算条件2。如有条件:y/x>2且 x!=0,应写成: x!=0 && y/x>2

  当X为0时,不会计算y/X。而写成:

  y/X>2 && X!=0

  是不正确的,因为当 X为0时,不能计算y/X。对于逻辑或也有类似情况。

  由于上述性质,在计算连续的逻辑与和逻辑或运算时,实际上不分优先级,而是顺序从左至右计算。在计算逻辑与运算时,若有左运算对象的值为0,则不再继续计算逻辑与运算,并立即以0为逻辑与运算的结果;在计算逻辑或运算时,若有左运算对象的值为1,则不再继续计算逻辑或运算,并立即以1为逻辑或运算的结果。在顺序计算逻辑表达式的过程中,一旦确定了表达式的最终结果,就不再继续计算。

4.赋值运算符

  赋值运算的最简单形式是

  变量=表达式

  其中“=”是赋值运算符。赋值运算的执行过程是:

  (l)先计算赋值运算符右端的表达式;

  (2)如表达式的类型与赋值运算符左边的变量类型不同(仅限于基本类型),将表达式值的类型自动转换成变量的类型;

  (3)将求得的值赋给变量,即存储到由变量所占的内存中。

  简单地说,计算表达式的值,将该值赋给变量。

  赋值运算也有结果,经赋值运算后,赋值表达式具有赋值后赋位运算符左边变量同样的类型和值。因赋位运算有值,所以可以进一步参与运算,特别是可以再赋植给其它变量。赋值运算符的结合性是‘边有至左”的,当连续有多个赋值运算时,则从右至左逐个赋值。如有变量定义:

  int k; double x;

本新闻共10页,当前在第7页  1  2  3  4  5  6  7  8  9  10  

我要投稿 新闻来源: 编辑: 作者:
相关新闻