2143|13

68

帖子

1

资源

一粒金砂(中级)

C语言问题

 
  1. while(1)
  2. {
  3.          if(条件1)
  4.                {
  5.                    A语句段;
  6.                 }
  7.           else if(条件2)
  8.                {
  9.                   B语句段;
  10.                }
  11. }
复制代码
如题,如果这样写的话,是否就可以实现 若满足条件1就执行A ;满足2就执行B ;若判断完条件2不满足继续判断条件1   ?
或者是想达到这种效果有没有别的写法?
谢谢~

回复

745

帖子

2

资源

纯净的硅(中级)

代码如下:
  1. while(1)
  2. {
  3.          if(条件1 || !条件2)
  4.          {
  5.                A语句段;
  6.           }
  7.           else if(条件2)
  8.           {
  9.                B语句段;
  10.           }
  11. }
复制代码

同学,你的C语言基础还不到位,好好看看书吧。另外你发帖的位置错了,应该在嵌入式系统的编程基础里面发帖

点评

第一眼就看到你的代码是不对的!!!!  详情 回复 发表于 2017-1-16 15:11
一看书就困星人,hhhhha  详情 回复 发表于 2017-1-12 10:02
个人签名亚里士缺德

回复

68

帖子

1

资源

一粒金砂(中级)

汤权 发表于 2017-1-12 09:58
代码如下:

同学,你的C语言基础还不到位,好好看看书吧。另外你发帖的位置错了,应该在嵌入式系统 ...

一看书就困星人,hhhhha

回复

1万

帖子

15

资源

版主

本帖最后由 ddllxxrr 于 2017-1-12 12:38 编辑

后边加else然后再判断就可以表达如果不是A也不是B,然后怎么样
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr

回复

11

帖子

0

资源

一粒金砂(中级)

本帖最后由 徕泽[ladder] 于 2017-1-12 14:05 编辑

1.这句好语法就不对是编译不了的。
2.如果想实现  : 若满足条件1就执行A ;满足2就执行B
else if 改成 if就行了

技术问题多多交流,我是电子爱好者 徕泽
技术问题讨论可以加我微信:WM13804014772(二维码头像)
                                       

回复

3652

帖子

11

资源

五彩晶圆(高级)

else if(条件2)改成 if(条件2),就可以了。否则,第一个条件的满足,就不执行第二个。好好看看基础吧。。。。

回复

57

帖子

0

资源

一粒金砂(中级)

汤权 发表于 2017-1-12 09:58
代码如下:

同学,你的C语言基础还不到位,好好看看书吧。另外你发帖的位置错了,应该在嵌入式系统 ...

第一眼就看到你的代码是不对的!!!!

点评

请赐教  详情 回复 发表于 2017-1-16 15:56
个人签名今天天气不错

回复

745

帖子

2

资源

纯净的硅(中级)

daen_lin 发表于 2017-1-16 15:11
第一眼就看到你的代码是不对的!!!!

请赐教

点评

根据要求可得(条件1)、(条件2) 互斥;可得(!条件2)是应该包含(条件1) ; if(条件1 || !条件2) 就是 if(!条件2 ), 那你的代码就成了 while(1) { if(!条件2 ) { A  详情 回复 发表于 2017-2-10 19:51
楼主的代码就是楼主的思路,是你考虑多了。  详情 回复 发表于 2017-1-16 16:02
个人签名亚里士缺德

回复

5861

帖子

209

资源

版主


楼主的代码就是楼主的思路,是你考虑多了。

点评

啊?我不知道发生了什么、、、、 没事 我写的代码不对的话可以不看的,只是我想的不同而已  详情 回复 发表于 2017-1-16 16:06
个人签名

EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,上班摸鱼场,释放压力好地方!商家勿入!加群暗号:喵


回复

745

帖子

2

资源

纯净的硅(中级)

lcofjp 发表于 2017-1-16 16:02
楼主的代码就是楼主的思路,是你考虑多了。

啊?我不知道发生了什么、、、、 没事  我写的代码不对的话可以不看的,只是我想的不同而已
个人签名亚里士缺德

回复

57

帖子

0

资源

一粒金砂(中级)



根据要求可得(条件1)、(条件2) 互斥;可得(!条件2)是应该包含(条件1) ;

  if(条件1 || !条件2) 就是 if(!条件2 ),
那你的代码就成了
while(1)
{
         if(!条件2 )
         {
               A语句段;
          }
          else if(条件2)
          {
               B语句段;
          }
}

点评

呵呵  详情 回复 发表于 2017-2-10 20:00
个人签名今天天气不错

回复

745

帖子

2

资源

纯净的硅(中级)

daen_lin 发表于 2017-2-10 19:51
根据要求可得(条件1)、(条件2) 互斥;可得(!条件2)是应该包含(条件1) ;

  if(条件1 || !条件2)  ...

呵呵
个人签名亚里士缺德

回复

98

帖子

0

资源

一粒金砂(中级)

根据楼主的思路,这个是一个条件,如果这个条件成立,执行A,不成立,执行B。
如果是多个条件,如果条件A成立,执行条件A对应的语句,.....对号入座即可。
个人签名

More information,please add the weibo ID :_Tang辉,chat number :951141617


回复

617

帖子

103

资源

纯净的硅(中级)

楼主这样写,需要有个前提,条件1与条件2是不是互斥条件?也就是两个条件有没有可能同时成立。
假如两个条件是互斥条件,那么你这样写,完全没有问题,可以实现你要的功能;
如果两个条件不是互斥条件,有可能同时成立,那么你这样写的话,就是说条件1的优先级高。

(“若判断完条件2不满足继续判断条件1”,这个当然是实现了。因为判完条件2后,此轮循环结束,下一轮循环开始后自然就是继续判断条件1)

如果两个条件有可能同时成立时,并且都要执行的话。那么写成两个if语句,各执行各的。

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

关闭
站长推荐上一条 1/5 下一条

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表