首页 > 编程知识 正文

c语言x=y=10,C语言x=y2

时间:2024-03-25 09:50:05 阅读:332803 作者:WWBL

本文目录一览:

#include Main( ) { int x=10,y=10; printf(“%d,%d,%d,%dn”,x--,x,--y,y); }

10 10 9 10

x--,x,--y,y这四个参数对于printf来说是同时调用的,不存在先后关系

x-- 是先调用x,然后再做减法 就是10

x 的值就是10

--y 是先做减法 再调用 就是9

y 的值就是10

C语言 x,y,z=10 和 x=y=z=10 那个对?

如果是声明的话

int x,y,z=10;这样没错,只不过z是声明的同时初始化了,但单独拿出来使用算错

x=y=z=10,在赋值中是对的,但声明中初始化不允许这样做,单独拿出来应该算对(前提是x,y,z都已经声明)

那很抱歉的说,你们老师错了,实践是检验真理的唯一标准:

#includeiostream

using namespace std;

int main()

{

int a=b=c=10;

return 0;

}

1adf.cpp

1c:usersliujq007documentsvisual studio 2008projectsccccccadf.cpp(5) : error C2065: “b”: 未声明的标识符

1c:usersliujq007documentsvisual studio 2008projectsccccccadf.cpp(5) : error C2065: “c”: 未声明的标识符

C语言 结果是什么 为什么 main() {int x=10,y=10,i; for(i=0;x

输出为:10 10 9 1

main()

{

int x=10,y=10,i; 第1轮 | 第2轮 | 第三轮

for(i=0;x8;y=++i) x==10 y==10 | x==9 y==1 | 88不成立,

printf("%d %d ",x--,y);输出10,10 然后x==9 | 输出9 1然后x==8| 所以循环终止

}

c语言 void main() { int x=10, y=10; x+=++x;

x+=++x;

等价于:++x; x+=x;

取用x前先自增,x变为11,再执行x=x+x。于是11+11=22

y+=y++;

等价于:y+=y; y++;

这是先运算后y再自增。y=10+10=20,然后再增1,变为21。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。