c语言问题 复合语句问题

{intx,a=3,b=5;x=a;a=b;b=x;}分号是不是就阻断了前面的运算,也就是不合后面没有联系了,结果是不是x=3,a=5,b=3.。。。... {
int x,a=3,b=5;
x=a;
a=b;
b=x;} 分号是不是就阻断了前面的运算,也就是不合后面没有联系了,结果是不是x=3,a=5,b=3.。。。
展开
 我来答
litfish04
2011-11-12 · TA获得超过317个赞
知道小有建树答主
回答量:356
采纳率:0%
帮助的人:234万
展开全部
你的结果应该是 x=3, a = 5, b = 3.
;的作用代表单语句结束,跟复合语句什么的没关系

但是注意{}内属于一个作用域,出了{},那么x,a,b就不一样了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
头好舞05
2011-11-12 · TA获得超过2099个赞
知道小有建树答主
回答量:797
采纳率:100%
帮助的人:494万
展开全部
x,a,b都是在{一开始就定义了。所以不会影响括号外的x,a,b。
但是在{后,在定义之前的x,a,b的改变会影响括号外。
下面是C++的例子,不知道C里是不是这样处理的。
#include <iostream>
using namespace std;

int main(void)
{
int a=1;
{
a=2;
int a=3;
a=4;
}
cout<< a;
return 0;
}
输出是2
你很仔细,我看好你哦。不过快点学C++了,C好麻烦的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qicaiwuya
2011-11-12 · TA获得超过4212个赞
知道小有建树答主
回答量:1462
采纳率:100%
帮助的人:1212万
展开全部
复合语句是由{}决定的,分号只是说明单条语句的结束
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式