鱼C论坛

 找回密码
 立即注册
查看: 2218|回复: 10

[已解决]看不懂这段代码了,求大佬解释

[复制链接]
发表于 2021-6-7 13:02:07 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <stdio .h>
main()
{
     int x =1,y =0;
     if(!x)y++;              /*当x≠0时y++?*/
     else if (x==0)   /*若x=0继续运行*/
             if(x)y+=2;   /*若x为1时运行y+=2??*/
             else y+=3;               
      printf(''%d\n'',y);
}

最佳答案
2021-6-7 13:30:42
本帖最后由 肖-肖 于 2021-6-7 13:36 编辑

所有解释全在注释中了

注意的地方也写上了
#include <stdio.h>
int main()
{
     int x=0,y=0;
     if(!x)
        y++;              /*当x=0时y++ 注意这里执行后else if那里虽然也满足条件但是不会执行最后结果y是1*/
     else if (x == 0)     
             if(x)        
                y+=2;   /*若x为1时运行y+=2?答案是不会因为else if (x==0)这个条件不满足哦~~~~*/
             else
                y+=3;   //总结-->x=0 会执行y++ y由原来的0变成1 如果x=1那么什么都不执行 y还是0
      printf("%d\n",y);

      return 0;
}

其实注释中写的都是逻辑上需要注意的,你代码中写的等于不对 还有stdio.h 点左边多个空格

还有应该加上int --》变成int main() 和 return 0

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-7 13:08:53 From FishC Mobile | 显示全部楼层
这样代码,我给它定义,废柴,没有研究意义
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-7 13:30:42 | 显示全部楼层    本楼为最佳答案   
本帖最后由 肖-肖 于 2021-6-7 13:36 编辑

所有解释全在注释中了

注意的地方也写上了
#include <stdio.h>
int main()
{
     int x=0,y=0;
     if(!x)
        y++;              /*当x=0时y++ 注意这里执行后else if那里虽然也满足条件但是不会执行最后结果y是1*/
     else if (x == 0)     
             if(x)        
                y+=2;   /*若x为1时运行y+=2?答案是不会因为else if (x==0)这个条件不满足哦~~~~*/
             else
                y+=3;   //总结-->x=0 会执行y++ y由原来的0变成1 如果x=1那么什么都不执行 y还是0
      printf("%d\n",y);

      return 0;
}

其实注释中写的都是逻辑上需要注意的,你代码中写的等于不对 还有stdio.h 点左边多个空格

还有应该加上int --》变成int main() 和 return 0

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-7 16:02:28 From FishC Mobile | 显示全部楼层
肖-肖 发表于 2021-6-7 13:30
所有解释全在注释中了

注意的地方也写上了

我是照着书上习题拿手机打出来的
这句话''答案是不会因为else if (x==0)这个条件不满足哦''怎么理解?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-7 16:04:06 | 显示全部楼层
小菜鸡溜溜达 发表于 2021-6-7 16:02
我是照着书上习题拿手机打出来的
这句话''答案是不会因为else if (x==0)这个条件不满足哦''怎么理解?

因为x为1的时候,x==0条件不满足
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-7 16:04:35 From FishC Mobile | 显示全部楼层
肖-肖 发表于 2021-6-7 13:30
所有解释全在注释中了

注意的地方也写上了

还能写int main()?
我在看书期末复习,书里代码没看见有int main()这样式的,清一色main()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-7 16:05:15 | 显示全部楼层
小菜鸡溜溜达 发表于 2021-6-7 16:04
还能写int main()?
我在看书期末复习,书里代码没看见有int main()这样式的,清一色main()


嗯 一般都写int main()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-7 16:07:29 From FishC Mobile | 显示全部楼层
肖-肖 发表于 2021-6-7 16:04
因为x为1的时候,x==0条件不满足

对啊,即使x等于0的时候这段代码都不会被执行,然后我觉得代码有那一段很多余,我还以为我理解错了,明白您意思了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-7 16:09:44 | 显示全部楼层
小菜鸡溜溜达 发表于 2021-6-7 16:07
对啊,即使x等于0的时候这段代码都不会被执行,然后我觉得代码有那一段很多余,我还以为我理解错了,明白 ...

嗯 嗯
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-7 17:18:50 From FishC Mobile | 显示全部楼层
小菜鸡溜溜达 发表于 2021-6-7 16:04
还能写int main()?
我在看书期末复习,书里代码没看见有int main()这样式的,清一色main()

main()这是相当古董的写法了
以致于现在有种说法,凡是看到这样写法的资料或视频,都可以扔掉了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-7 17:52:26 From FishC Mobile | 显示全部楼层
wp231957 发表于 2021-6-7 17:18
main()这是相当古董的写法了
以致于现在有种说法,凡是看到这样写法的资料或视频,都可以扔掉了

大学教材上全是main()
[捂脸]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-21 12:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表