if与else if不会同时执行啊

dandan澹澹 2011-07-18 09:27:52
if(a[i+1]!=0)
printf("%d",a[i]);
else if(a[i]!=0)
printf("%d",a[i]);

如果a[i+1]!=0 而且a[i]!=0
是不是执行了if就不会执行else if了
否则a[i]岂不是打印了两次
...全文
4572 40 打赏 收藏 转发到动态 举报
写回复
用AI写文章
40 条回复
切换为时间正序
请发表友善的回复…
发表回复
qianwen36 2011-07-22
  • 打赏
  • 举报
回复
楼主好好把流程控制,以及C++中如何支持这些的,好好学习一下,你需要学习的面还很多。基础知识的把握,你首先需要对概念清楚,对语法明确。
另外请多做些上机试验操作。
「已注销」 2011-07-22
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 zhao4zhong1 的回复:]

VC调试时按Alt+8,TC或BC用TD调试,打开汇编窗口看每句C对应的汇编并单步执行一遍不就啥都明白了吗。
(Linux或Unix下应该也可以在用GDB调试时,看每句C对应的汇编并单步执行。)
[/Quote]

你怎么在哪都回复这句话,
这句话都不知道看到过多少遍了。
forhonor123 2011-07-22
  • 打赏
  • 举报
回复 1
if 和 else 不可共存,有 if 就没else.
zhenhai308 2011-07-21
  • 打赏
  • 举报
回复
正解!if 和 else if 只能执行一个!楼主可以调试看一下!![Quote=引用 1 楼 bdmh 的回复:]

是的,if...else结构,只执行第一个符合条件的,后面不会执行
[/Quote]
time_time_time 2011-07-20
  • 打赏
  • 举报
回复
改下啊 看看你的需要
1、a[i]和a[i+1]同时不为0的时候才输出a[i] 那就是if((a[i]!=0)&&(a[i+1])!=0) ...
2、a[i]和a[i+1]有一个不为0的时候才输出a[i] 那就是if((a[i]!=0)||(a[i+1])!=0) ...
qcmr 2011-07-20
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 zhao4zhong1 的回复:]
VC调试时按Alt+8,TC或BC用TD调试,打开汇编窗口看每句C对应的汇编并单步执行一遍不就啥都明白了吗。
(Linux或Unix下应该也可以在用GDB调试时,看每句C对应的汇编并单步执行。)
[/Quote]

看来还是高级语言要记的东西多啊,估计学会了汇编看代码应该很简单吧?
TitanQuest 2011-07-20
  • 打赏
  • 举报
回复
if()
if()
else()

if()
else if()
else()
这样的才有疑问
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 babilife 的回复:]

引用 8 楼 jxiaoshen 的回复:
++
引用 4 楼 kprf2009 的回复:
你可以这样看

if()
{}

else{

if(){}

}



++2
[/Quote]

++
china_ssl 2011-07-20
  • 打赏
  • 举报
回复
如果楼主想一起执行的话可以用switch case不用break就行了
hykhym 2011-07-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bdmh 的回复:]
是的,if...else结构,只执行第一个符合条件的,后面不会执行
[/Quote]正解
奋斗小青年 2011-07-20
  • 打赏
  • 举报
回复
是的,if elseif else 这类是不同的分支。走其中一个。
ningweidong 2011-07-20
  • 打赏
  • 举报
回复
当然不能一块执行了
flysnowhite 2011-07-20
  • 打赏
  • 举报
回复
选择分支结构,当然只会选择其中一个分支进行运行。
自由建客 2011-07-20
  • 打赏
  • 举报
回复 1
书上没说明?哥当年看的都是带流程图的。
aozhi 2011-07-20
  • 打赏
  • 举报
回复
看汇编代码吧。主要看看是如何跳转的。
风之子1 2011-07-20
  • 打赏
  • 举报
回复
顺带说一句,楼主这种东西最好写程序一测就知道了
风之子1 2011-07-20
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ljljlj 的回复:]

引用 1 楼 bdmh 的回复:
是的,if...else结构,只执行第一个符合条件的,后面不会执行

正解。
[/Quote]

+1
interlace2010 2011-07-19
  • 打赏
  • 举报
回复
你自己说的挺对的,满足了if的条件就跳过了else if,如果不满足if的条件才会去看else if的
AnYidan 2011-07-19
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 shanxinbang 的回复:]

自己试一下不就知道了
[/Quote]

为何不试一下?
cnmwpc 2011-07-19
  • 打赏
  • 举报
回复
路過的学習 if ... if else
加载更多回复(18)

69,377

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧