问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言goto语句如何使用?

发布网友 发布时间:2022-04-28 13:05

我来回答

5个回答

热心网友 时间:2023-05-04 06:24

goto语句使用:

1、C#语言中

using System;

using static System.Console;

class Program

{

public static Int32 Main(String[]args){

int n=0;

WriteLine("input a string:\n");

loop:if(Read()!='\r'){

n++;

goto loop;

}

WriteLine("{0}",n);

return 0;

}

}

2、C语言中

统计从键盘输入一行字符的个数。

#include<stdio.h>

int n=0;

int main(void){

printf("input a string:");

loop:if(getchar()!='\n'){

n++;

goto loop;

}

printf("output:%d\n",n);

}

例如输入:abcdefghijklmnopqrstuvwxyz

然后回车Enter

输出:26

本例用if语句和goto语句构成循环结构。当输入字符不为'\n'时即执行n++进行计数。

然后转移至if语句循环执行,直至输入字符为'\n'才停止循环。

3、汇编语言中

goto语句与汇编语言里面的jmp指令相同,(无条件转移)

1+2+3........+8+9+10

NASM描述:

mov ax,1

mov bx,0

start:add bx,ax

inc ax

cmp ax,11;比较指令

jzend;零转移

jmp start

end:

;

;start:end:是标号

Pascal

格式goto<标号>;

其中标号需要申请,在程序开头写label<标号1>,<标号2>,……;

其中,标号必须为四位以内的正整数。

在该段落内还需要有<标号>:语句表示将要转向的方向。

4、delphi中

//Goto语句用在跳转行号,可以跳转到当前结构层内任意位置.

//必须在声明处用label关键字声明行号.

//由于Goto语句会破坏程序的结构,不推荐使用.

var

a,b:Integer;

label

X,Y;

begin

if a>b then

goto X

else

goto Y;

X:

WriteLn('a>b');

Y:

WriteLn('b>a');

end;

扩展资料:

goto语句无条件转移语句,其一般格式如下:goto语句标号;其中语句标号是按标识符规定书写的符号,放在某一语句行的前面,标号后加冒号(:)。语句标号起标识语句的作用,与goto语句配合使用。

如:label:i++;

loop:while(x<7);

goto:loop

C语言不*程序中使用标号的次数,但各标号不得重名。goto语句的语义是改变程序流向,转去执行语句标号所标识的语句。

goto语句通常与条件语句配合使用。可用来实现条件转移,构成循环,跳出循环体等功能。

但是,在结构化程序设计中一般不主张使用goto语句,以免造成程序流程的混乱,使理解和调试程序都产生困难。

参考资料来源:

百度百科——goto语句

热心网友 时间:2023-05-04 06:25

goto语句也称为无条件转移语句,其一般格式如下: goto 语句标号; 

其中语句标号是按标识符规定书写的符号, 放在某一语句行的前面,标号后加冒号(:)。语句标号起标识语句的作用,与goto 语句配合使用。

#include"stdio.h"
int main(void)
{
    int n=0;
    printf("input a string :\n");
    loop: if(getchar()!='\n')
        {
            n++;
            goto loop;
        }
    printf("%d",n);
}

goto语句在上例中的作用就是当接收用户输入的字符不是回车符的时候就跳转到if语句进行判断用户输入的字符,也就是说如果用户输入回车,那么就输入结束,转而执行printf("%d",n);

热心网友 时间:2023-05-04 06:25

要回到哪里,就在哪里加个标号,例如:

label1: /* <----- 这里加个标号, goto 语句就可以转到这里了 */
switch(i){
case 1:ex(0);goto label1; /* 有 goto 就不需要 break 了 */

另,使用goto语句需要加特殊的抬头。

热心网友 时间:2023-05-04 06:26

goto只能函数内部跳,当然不能跳到另一个函数或者跳到另一个C文件
goto会破坏程序的结构性,所以能不用尽量别用。

热心网友 时间:2023-05-04 06:27

goto的用法前面已经有人回答了,我就不重复了。
原则上是最好不要用,因为程序要讲究结构性、可读性,goto语句会破坏这点。
但万事不是绝对的,什么时候应该用goto语句呢?
只有在程序做的很大,有动一下痛全身的感觉时,但只要加个goto语句却能省下很多时间和麻烦,这时用goto语句比较好。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
ef英语哪个好 EF英孚英语培训怎么样? 英孚英语好不好 EF英孚教育到底好不好 大佬们,麦芒7和荣耀10那个值得入手?2500以下的机子还有啥好推荐的么... 介绍几款2500元以前的手机 像素一定要高 其他的不做要求 近期想入手一部安卓手机,价格2200到2500左右…买HTC desire Z还是 三星... 笔记本忘记开机密码怎么办急死了 笔记本电脑屏幕开机锁忘记密码 怎么办?急死了 华硕笔记本电脑开机密码忘记了怎样找回?系统是Windows 7旗舰版... 梦到自己看见一个人被另一人杀掉是什么意思 对方注销了还能看到他的朋友圈吗? 做梦梦见一个人被杀死了然后皮被扒了下来放在家旁边的路上好吓人是什么征兆 注销后朋友圈还在吗微信好注销了一个小时。显示我已经被他删除不是她的好友了。但是我点开她的朋友_百度问一问 梦见一个人被别人杀了还剩下半边尸体是什么意思 梦见一个人被杀,头割掉挂在木头上 我刚刚注销了微信账号。为什么我另一个微信账号还能看到这个账号的朋友圈,也还能发送消息? 梦,中看见另人两人杀死了一个人 干虾仁和绿豆芽能不能一起炒着吃呢? 梦见一个被另外一个人杀死是何意??? 明虾和绿豆芽可以一起吃吗 注销之前朋友圈动态如何保留? 梦见一个人被杀,死后却狠狠的瞪着我,另一个已死的人突然朝我扑来,掐着我的脖子,这说明了什么 绿豆芽和虾子和小葱一起煮吗? 绿豆芽真的简简单单的炒就可以很好吃了吗?有诀窍吗? 注销了朋友圈怎么办? word2016怎么降低页眉虚线位置? word 2010里面如何调整页眉虚线和页面上方的距离,变大或者缩小? 虾和绿豆芽可以同时食用吗 芽菜炒虾仁怎么做? 做梦梦见别人被杀 c语言中 go to语句的使用方法 梦见有人被杀 梦见一个人被人杀了手被剁下来了装在鸡的身体里? C语言中的GOTO语句怎么用 梦见一个人被杀了,身上都是血 狼牙土豆条是怎么做的 c语言goto语句用法 狼牙土豆条的做法有哪些? c语言goto语句 C语言GO TO语句怎么用 c语言goto语句是什么意思 c语言中goto语句是什么意思 C语言goto语句的用法 C语言 goto语句? 一个关于C语言goto语句的问题 亲哥,怎样用css将下边的自动填充到空白处,在线等。。。同时天涯沦落人,css是一条不归路 狼牙土豆这么做,有哪些配料 梦见捡回家猪耳朵? 梦见买的排骨,猪蹄,还有猪肘子,生的