c语言表达式10 3的结果是,C语言程序设计--第3讲运算符与表达式.ppt

C语言程序设计--第3讲运算符与表达式资料

§3.10 逗号运算符和逗号表达式 逗号表达式的一般形式可以扩展为 表达式1,表达式2,表达式3,……,表达式n 它的值为表达式n的值。 逗号运算符是所有运算符中级别最低的 例: ① x=(a=3,6*3) ② x=a=3,6*3 赋值表达式,将一个逗号表达式的值赋给x,x的值等于18 逗号表达式,包括一个赋值表达式和一个算术表达式,x的值为3,整个逗号表达式的值为18。 §3.10 逗号运算符和逗号表达式 注意:并不是任何地方出现的逗号都是作为逗号运算符。例如函数参数也是用逗号来间隔的。 如: 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的值。 void main() { int a, b=322; // 322(d)=1 0100 0010 float x, y=8.88; char c1='k',c2; a=y; printf(“%d\n",a); x=b; printf(“%f\n", x); a=c1; printf(“%d\n",a); c2=b; printf(“%c\n",c2); } 课堂练习 int a=0,b=0,c=0; c=(a-=a-5),(a=b,b+3); printf(“%d,%d,%d\n”,a,b,c); 有以上程序段,输入结果为____? 1) 0,0,-10  2) 0,0,5 3) -10,3,-10 4) 3,3,-10 1)编写程序,列出以下算术表达式并计算输出: 要求: 执行程序后,先提示从键盘中输入a,b和c的值, 输入后,输出 以下表达式,y=23+(a*c-15)/(b+14)= 及y值,  要求y值精确到小数点后两位。 #include "stdio.h" void main() { float a,b,c; printf("input a,b,c="); scanf("%f,%f,%f", &a,&b,&c); printf("y=23+(a*c-15)/(b+14)=%6.2f", 23+(a*c-15)/(b+14)) ; } i++与++i的区别: ++i 先执行i=i+1, 再使用i的值; i++ 先使用i的值, 再执行i=i+1。 例如:设 i=3 ①j= ++i;    i的值先+1,变成4, 再赋给j, j的值为4 ②j=i++; 先将i的值3赋给j, j值为3,然后i=i+1=4 注意: (1)自增运算符(++),自减运算符(--)包含赋值操作,所以只能用于变量,而不能用于常量或表达式。 (2)++和--的结合方向是“自右至左”。 练习:写出下列程序的输出结果 int main() { int a, b, c, k; a=1; b= a++ *(1-a) ; printf("a=%d, b=%d\n", a, b); a=1; b= ++a *(1-a) ; printf("a=%d, b=%d\n", a, b); a=1; k= ( a ++ )+( a++ ); printf("k=%d, a=%d\n",k, a ); } 练习:写出下列程序的输出结果 #include "stdio.h" int main() { int a, b, c, k=2; a=1; b= (c=2) * a++ ; printf("a=%d, b=%d\n", a, b); a=1; b= (1-a) * ++a ; printf("a=%d, b=%d\n", a, b); a=1; k= ( ++ a )+( ++ a ); printf("k=%d, a=%d\n",k,a ); return 0; } (5) 有关表达式使用中的问题说明 ①ANSI C并没有具体规定表达式中的子表达式的求值顺序,允许各编译系统自己安排。 例如:对表达式 b = (1-a) * ++a ; 并不是所有的编译系统都先计算(1-a), 然后 计

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值