main() {int a=100,x=10.y=20,ok1=5,ok2=0; if (x<y) if(y!=10) if(!ok1) a=;else if(ok2) a=0;

a=-1;printf("%d\n",a);}求解释几个if语句的关系最好是一一对应的能让我这个菜鸟明白啊谢谢啊... a=-1;
printf("%d\n",a);}
求解释几个if语句的关系最好是一一对应的 能让我这个菜鸟明白啊谢谢啊
展开
 我来答
创作者C6IfsHQskK
2019-05-31 · TA获得超过3万个赞
知道大有可为答主
回答量:1.2万
采纳率:30%
帮助的人:813万
展开全部
if是条件,if()里面是判别,当里面为真,也就是值为1的话就执行,否则不执行,你ok1=5,那么在条件语句里值就为1,(真)如果为0的话就是假!!!
!是逻辑非,ok1=5(在if里就是1,意为真),!ok1意思就是ok1=0(在if里就是假)
所以不执行!!!!
结果应该是-1
sun_siliang
推荐于2016-03-01 · TA获得超过2.6万个赞
知道大有可为答主
回答量:9913
采纳率:100%
帮助的人:4886万
展开全部
//语言有严格的语法,楼主写错了不少。
//建议改正程序,再理解。
#include<stdio.h>
void main()
{
int a=100,x=10,y=20,ok1=5,ok2=0; //x=10后面应该是逗号。
if (x<y) //这个表达式不成立,直接跳到a=-1执行。
if(y!=10)
if(!ok1)
a=1; //a=后面没有值!!!
else if(ok2)
a=0;
a=-1;
printf("%d\n",a);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
star3158088
2011-06-20 · 超过24用户采纳过TA的回答
知道答主
回答量:97
采纳率:0%
帮助的人:62.1万
展开全部
else是和他上面最近一个IF配对的,首先是判断x是不是小与y,小于y时在判断Y是不是等于10,这里显然是不等于1的,即满足,再判断(!ok1),为真时执行a=;(!ok1)为假,执行a=0。 你只要了解ELSE是和离他最近一个if配对,这个思路就相当明白了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
纲祺瑞0h4
2015-10-25 · TA获得超过1万个赞
知道大有可为答主
回答量:956
采纳率:0%
帮助的人:597万
展开全部
//语言有严格的语法。
//建议改正程序,再理解。
#include<stdio.h>
void main()
{
int a=100,x=10,y=20,ok1=5,ok2=0; //x=10后面应该是逗号。
if (x<y) //这个表达式不成立,直接跳到a=-1执行。
if(y!=10)
if(!ok1)
a=1; //a=后面没有值。
else if(ok2)
a=0;
a=-1;
printf("%d\n",a);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
创作者vnia1SulLr
2019-02-20 · TA获得超过3万个赞
知道大有可为答主
回答量:1.2万
采纳率:32%
帮助的人:741万
展开全部
//语言有严格的语法,楼主写错了不少。
//建议改正程序,再理解。
#include<stdio.h>
void
main()
{
int
a=100,x=10,y=20,ok1=5,ok2=0;
//x=10后面应该是逗号。
if
(x<y)
//这个表达式不成立,直接跳到a=-1执行。
if(y!=10)
if(!ok1)
a=1;
//a=后面没有值!!!
else
if(ok2)
a=0;
a=-1;
printf("%d\n",a);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式