C语言的特殊循环你知道吗?
·第一种goto语句。直接看第四行是声明一个goto语句的跳转名称,名称自己随便定义,后面用的是冒号。然后程序继续执行下面的语句,执行到第8行条件只要成立就会重新跳回第四行的位置。这里第八行写的判断语句其实就是让循环结束的条件,可以暂停思考一下这个结果是怎么来的。注意:goto语句如果不写if语句去限制执行次数那么就会变成一个死循环。
·第二种循环方式函数递归调用。递归调用其实就是函数自己调用自己。首先第2行到第8行是一个递归函数,然后看第10行main函数,11行到13行是让用户输入一个数字,然后输入的值赋值给变量a。14行的printf结尾我调用的递归函数,并把a传递过去了。此时的a是一个实参我们也称为实际参数。
然后代码会执行第2行,第二行函数后面的int n是一个形式参数,也可以叫做形参。如果此时我输入的值a为4传递过来n也是4。然后第三行的判断语句是n是否等于0或者n是否等于1,显然不等于,则执行了else后面的语句return表示程序结束了,但是此时没完全结束。
继续调用了自己并且把n的值不断的往下减1,直到第三行的条件满足之后就会返回一个确定值给前面调用的函数。不理解的同学可以暂停看一下这张图,最终结果是24。
今天又比昨天又多学了点东西,你离成功不远了。