第2章-数据表示及数据运算-2015讲述.ppt
文本预览下载声明
⑹ #include stdio.h void main() {?int?a=177; printf(%o\n,a); } ⑺ #include stdio.h void main() {?int?a=0 a+=(a=8); printf(%d\n,a); } ⑻ #include stdio.h void main() {?int?a=5,b=4,c=3,d; d=(abc); printf(%d\n,d); }? 四、编程题 ⑴ 输入长方形的长和宽,输出长方形的周长和面积。 ⑵ 输入一个字符,输出其ASCII代码。 ⑶ 输入3个整数,计算并输出它们的平均值。 ⑷ 已知整型变量a、b、c的值,根据以下算式编写程序求y的值。 五、设a和n已定义为整型变量,a=12,求下面表达式运算后a的值。 ⑴ a+=a ⑵ a-=2 ⑶ a*=2+3 ⑷ a/=a+a ⑸ a%=(n%=2),n的值等于5 ⑹ a+=a-=a*=a * 第2章 数据表示及数据运算 C算术表达式的书写形式与数学中表达式的书写形式是有区别的,在使用时要注意以下几点: (1) C表达式中的乘号不能省略。例如: 数学式b2-4ac,相应的C表达式应写成b*b-4*a*c。 (2) C表达式中只能使用系统允许的标识符。例如: 数学式πr2相应的C表达式应写成3.14*r*r。 * 第2章 数据表示及数据运算 (3) C表达式中的内容必须书写在同一行,不允许有分子分母形式,必要时要利用圆括号保证运算的顺序。例如: 数学式相应的C表达式应写(a+b)/(c+d)。 (4) C表达式不允许使用方括号和花括号,只能使用圆括号帮助限定运算顺序。可以使用多层圆括号,但左右括号必须配对,运算时从内层圆括号开始,由内向外依次计算表达式的值。 * 第2章 数据表示及数据运算 3.算术运算符的优先级和结合性 C语言规定了在表达式求值过程中各运算符的优先级和结合性。 (1) 优先级:是指当一个表达式中如果有多个运算符时,则计算是有先后次序的,这种计算的先后次序称为运算符的优先级。 (2) 结合性:是指当一个运算对象两侧的运算符的优先级别相同时,进行运算的结合方向。按“从右向左”的顺序运算,称为右结合性;按“从左向右”的顺序运算,称为左结合性。表2.6中给出了算术运算符的优先级和结合性。 * 第2章 数据表示及数据运算 例2.9 算术运算符/和%举例。程序代码如下: #include stdio.h void main() { int x,y; x=10; y=3; printf(%d\n,x/y); printf(%d\n,x%y); x=1; y=2; printf(%d\n,x/y); printf(%d\n,x%y); } 自增、自减运算符 自增、自减运算符可以用在运算量之前(如++i、--i),称为前置运算;自增、自减运算符可以用在运算量之后(如++i、--i),称为后置运算。 简单规则(以++为例): 前置——先自加,后引用 后置——先引用,后自加 int i=3,j; int i=3,j; j=++i; j=i++; 例2.10 以下程序的输出结果是( )。 #includestdio.h void main () { int i=010,j=10; printf(%d ,++i); printf(%d\n,j- -); } A)11 10 B)9 10 C)010 9 D)10 9 赋值运算符和赋值表达式 1.赋值运算 赋值符号“=”就是赋值运算符,由赋值运算符组成的表达式称为赋值表达式。其一般形式为: 变量名 = 表达式 赋值的含义是指将赋值运算符右边的表达式的值存放到以左边变量名为标识的存储单元中。 说明: (1) 赋值运算符的左边必须是变量,右边的表达式可以是常量、变量或表达式。例如,下面都是合法的赋值表达式: x = 10 y = x+10 y = func() (2) 赋值符号“=”不同于数学中使用的等号,它没有相等的含义。例如x=x+1;的含义是取出变量x中的值加1后,再存入变量x中去。 (3) 在一个赋值表达式中,可以出现多个赋值运算符,结合性是自右至左的。例如,下面是合法的赋值表达式: x = y = z = 0 /* 相当于x = (y = (z = 0))*/
显示全部