| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
免费IT实战开发视频教程合集分享千里之行 始于足下
共有 409 人关注过本帖
标题:我可以认为goto是循环语句的基础吗?
只看楼主 加入收藏
yiyue123
Rank: 1
等 级:新手上路
帖 子:26
专家分:5
注 册:2018-6-18
结帖率:100%
  已结贴   问题点数:20  回复次数:11   
我可以认为goto是循环语句的基础吗?
循环的本质就是
判断是否满足条件;
按顺序执行语句,直到条件为假为止;
比如
#include<stdio.h>
int main()               
{
    int n,sum=0;
    for(n=0,n<=10;n++)
        sum+=n;
}

#include<stdio.h>
#include<stdlib.h>
int main(void)
{
    int n=1,sum=0;
    no1:sum+=n;
    if(n<10)
    {    n++;
        goto no1;
    }
    printf("%d\n",sum);
    system("pause");
}
的效果是相同的
我是否可以认为,循环语句是工整的,有序的goto 语句呢?
2018-09-09 13:11
no1xijin
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江西
等 级:版主
威 望:15
帖 子:184
专家分:1056
注 册:2015-7-8
  得分:4 
goto语句更灵活,但是就是因为灵活,所以导致代码不利于阅读。循环语句较goto语句有限制。
2018-09-09 21:03
yiyue123
Rank: 1
等 级:新手上路
帖 子:26
专家分:5
注 册:2018-6-18
  得分:0 
那么循环语句与goto本质上的差异在哪?
2018-09-09 22:20
rui85125
Rank: 1
等 级:新手上路
帖 子:2
专家分:2
注 册:2018-9-10
  得分:0 
它确实是循环用的语句啊
2018-09-10 03:26
Mr_doge
Rank: 2
等 级:论坛游民
威 望:2
帖 子:69
专家分:67
注 册:2018-6-28
  得分:7 
c有更受限和严谨的while for 循环,代码易读性和代码结构稳定性更高,为了向前兼容而保留了goto语句。

[此贴子已经被作者于2018-9-10 13:44编辑过]

2018-09-10 09:22
lin5161678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:10
帖 子:453
专家分:1568
注 册:2011-12-3
  得分:0 
带跳转功能的语句 非常多
总不能都叫做有序goto吧?
break 能跳转
switch-case 能跳转
continue 能跳转
甚至 你 if-else 都有跳转
2018-09-10 09:45
lin5161678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:10
帖 子:453
专家分:1568
注 册:2011-12-3
  得分:0 
回复 5楼 Mr_doge
别乱说 goto 不是原本用在循环的
2018-09-10 09:46
yiyue123
Rank: 1
等 级:新手上路
帖 子:26
专家分:5
注 册:2018-6-18
  得分:0 
break,continue 。goto都能表示出来,我听说goto 是他们的老祖宗
我想问的问题是:goto是否出现在现有的for  while  dowhile之前
或者说现有的跳转,循环是否都是由goto演化而来
2018-09-10 12:36
Mr_doge
Rank: 2
等 级:论坛游民
威 望:2
帖 子:69
专家分:67
注 册:2018-6-28
  得分:0 
回复 7楼 lin5161678
多谢指正,忘了是跳转,而不是专用于循环
2018-09-10 13:44
lin5161678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:10
帖 子:453
专家分:1568
注 册:2011-12-3
  得分:2 
回复 8楼 yiyue123
不是
2018-09-10 15:21







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025688 second(s), 8 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved