| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 603 人关注过本帖
标题:我可以认为goto是循环语句的基础吗?
只看楼主 加入收藏
yiyue123
Rank: 1
等 级:新手上路
帖 子:37
专家分: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: 9Rank: 9Rank: 9
来 自:江西
等 级:贵宾
威 望:20
帖 子:205
专家分:1179
注 册:2015-7-8
  得分:4 
goto语句更灵活,但是就是因为灵活,所以导致代码不利于阅读。循环语句较goto语句有限制。

126邮箱联系方式:no1xijin@126. com
2018-09-09 21:03
yiyue123
Rank: 1
等 级:新手上路
帖 子:37
专家分: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: 4
等 级:业余侠客
威 望:5
帖 子:124
专家分:212
注 册:2018-6-28
  得分:7 
c有更受限和严谨的while for 循环,代码易读性和代码结构稳定性更高,为了向前兼容而保留了goto语句。

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

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







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

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