C语言中if和goto的用法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言中if和goto的用法

C语言中,if是一个条件语句,用法 ??if(条件表达式) 语句 如果满足括号里面表达式,表示逻辑为真于是执行后面的语句,否则不执行(表达式为真则此表达式的值不为0,为假则为0,也就是说,如果括号里面不是一个判断表达式,你填了一个不是0的数字或其他,表示条件永远为真,一定执行后面的语句,反之,你填了一个0,则永远不会执行后面的语句)。 if后面的语句如果多于一句,可以放在{}里面作为复合语句, 例: ??????int a=2,b=1; ??????if(ab) coutabendl;??????//21 ,表达式ab为真,于是执行后面的语句,输出ab??这几个字符。 goto 是转向语句,按其英文含义就可理解 用法???标号: 语句; ???????...................... ???????goto 标号;??????????? 或者???goto 标号; ???????..................... ???????标号: 语句; 标号和goto必须包括处于同一个函数内??标号的写法跟变量名一样不能和关键词相同,后面必须带冒号 当程序执行到goto这个语句时,程序就转跳到标号后面的语句去了 例 ???????int x=1; ???????biaohao: ???????x=x+1; ???????if(x100) ???????goto biaohao; ???????coutx=100endl;???//当x小于100,执行if 后面的goto语句,于是转跳到biaohao处执行biaohao后面的语句x=x+1,接着if语句,如此反复。。。。。。,直到x=100 if语句括号表达式为假不执行后面的goto语句,于是跳过执行cout语句输出x=100这几个字符。 C中goto语句的用法个人觉得goto用在内层循环中比较合适,用break只能跳出内层循环,而goto可以直接跳出最外层循环,在合理的地方使用就可以了。 #include stdio.h #include stdlib.h int main() { ??? int i, j; ??? for (j = 0; j 3; j++) { ??????? for (i = 0; i 10; i++) { ??????????? printf(j: %d, i: %d\n, j, i); ??????????? if (i == 3) goto last; ??????? } ??? } ??? last: printf(This is the last line\n); ??? return 0; } 摘抄了几段别人对goto的评价: 1.不要频繁的使用goto,过多的使用goto语句,会使程序象面条一样乱成一锅粥。 ? ? 在C++语言中使用goto语句会跳过构造函数和析构函数的执行。 ? 2.goto语句最好是少用点,这个东东对你的程序不是很好, ? ? ? ? ? ? 上面有一种情况可以用到这个,跳出多重循环。 3.goto语句通常不用, 主要因为它将使程序层次不清,且不易读,但在多层嵌套退出时,用goto语句则比较合理. 4.有時候用goto語句,一眼就看清楚了程序的意圖,可用那些對應的循環break語句等實現的語句段,要想老半天才搞清楚程序意圖。還是不要刪除goto 的好,而且現在對goto做了不少限制,只要不濫用goto就好。? 5.世间万物就没有绝对的事情,每样东西都有它存在的理由,有它存在的特定场合,goto也是这样,从一般的程序流程来说,它破坏了清晰的程序结构,会让代码晦涩难懂,另外尤其重要的是,现今的编译器一般会对一个顺序的程序块进行优化,而goto会打乱当前的执行顺序,造成已经被预取到的指令全部废除,代价比较大。但是另一方面,goto的好处在于,它可以避免重复的代码输入,这一点在比较核心的代码中非常普遍,尤其是对出错代码的处理…

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档