C语言程序 if 和 else 中间 加个 语句 就会 出错 为什么

 我来答
风若远去何人留
推荐于2017-11-13 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450107
专业C/C++软件开发

向TA提问 私信TA
展开全部

一般这种问题是少加了大括号

比如

if(A)
    aaa();
else ....

这样的. 

如果改成

if(A)
    aaa();
    bbb();
else ....

就会出错.

解决方式为

if(A)
{
    aaa();
    bbb();
}
else ....
ice_maru
2011-09-06 · TA获得超过154个赞
知道小有建树答主
回答量:251
采纳率:0%
帮助的人:259万
展开全部
比如:
if(x>0)
y = 1;
else
y =2;
这样是没问题的。
下面是错的
if(x>0)
y = 1;
z = 3; //在这多一句会出问题,因为它把if else固定语法结构隔断了,else不能单独用
else
y =2;
正确写法:
if(x>0){
y = 1;
z = 3;
}
else
y =2;
追问
if 可以单独使用吗
追答
if可以单独用
如果对语言不熟的话,最好像楼上说的,不要省掉括号。
但是也要知道,如果没有括号,不管是那个控制结构,记住分号标记是一句的结束。
括号相当于一个语句块,即是一句。

for(i=0;i<3;i++)
for(j=0;j<5;j++)
x = i+j;
y = y + x;
//y = ?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户95013
2011-09-06
知道答主
回答量:26
采纳率:0%
帮助的人:4.3万
展开全部
if和else是配套使用的,if后只能接一句或不接语句,同时要加逗号,然后才能到else,所以if后不能接多个语句,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
沧海雄风2009
2011-09-06 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8525
采纳率:79%
帮助的人:2762万
展开全部
你把if else 之间的大括号给省略了?
不要省略这些括号 这个是很不好的习惯
在百度上见到有70%的人都不屑大括号
真是让人十分失望
if ()
{

}
else
{

}
追问
if ()
{

}
printf("加我会出错\n");
else
{

}
追答
if ()
{
//内容都是加在大括号之间的
}
else
{
//内容都是加在大括号之间是
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tiandejian
2011-09-06 · TA获得超过107个赞
知道答主
回答量:61
采纳率:0%
帮助的人:51.4万
展开全部
if (条件) {
条件成立则执行
} else {
条件不成立则执行
}
/*这是C语言不是BASIC,加语句要加(括){号} ~~~*/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式