您好,欢迎访问三七文档
C语言中的跳转语句c语言有4个跳转语句return、goto、break、continue。其中return、goto可以应用到程序的任何地方,break、continue和循环语句一起使用。1、returnreturn用于从函数返回,使执行的函数返回到函数的调用点。return的一般形式是:return表达式其中表达式就是函数返回的值。函数使用return的次数不受限制,但是当函数遇到第一个return的时候,函数停止执行,返回到函数的调用点。声明为void型的函数不能包括代值的return语句。例如递归函数:intdigui(intnum);voidmain(void){intnum=0;intfac=0;printf(inputanumber\n);scanf(%d,&num);fac=digui(num);printf(%d\'sfactorialis%d\n,num,fac);getch();}intdigui(intnum){if(num==1)return1;elsereturnnum*digui(num-1);}程序执行结果是:inputanumber55'sfactorialis120我们可以看到main函数是void类型,不需要return语句。而digui函数是需要return的。在递归函数中我们有两个return。if(num==1)return1;这条语句是递归函数的终结。2、goto基本上已经不再使用goto语句了。基本形式:goto标签;标签:我们使用goto构造一个循环,例如:intmain(void){inti=0;Electrics:printf(%d,i);i++;if(i10)gotoElectrics;getch();}3、break在循环中break终止循环,也就是跳出循环。执行循环下边的语句。在switch中终止一个case。例如:intmain(void){intt=0;for(;t=10;t++){if(t==9)break;printf(%d,t);}printf(\n);printf(helloc!);getch();}程序结果:012345678helloc!当执行到t==9的时候,退出循环,执行printf(\n);语句。所以没有输出10。当是嵌套的多层循环,break只是退出最内层的循环。intmain(void){intt=0;for(;t=2;t++){intj=0;for(;j5;j++){if(j2)break;printf(jis%d\n,j);}printf(tis%d\n,t);}printf(\n);printf(helloc!);getch();}程序结果:jis0jis1jis2tis0jis0jis1jis2tis1jis0jis1jis2tis2从程序结果可以看出,break每次都是终止内层循环。和外层循环没有关系。helloc!4、continue简单的说就是跳过剩余代码,执行下一个循环。例如:intmain(void){intt=0;for(;t=10;t++){if(t==9)continue;printf(%d,t);}printf(\n);printf(helloc!);getch();}将上面的程序中break改成continue,我们看看结果。01234567810helloc!当t==9的时候,程序没有执行下面的输出语句,直接到t++;执行下一个循环。所以没有输出9,但是输出了10。
本文标题:C语言中的跳转语句
链接地址:https://www.777doc.com/doc-7028697 .html