多语言展示
当前在线:480今日阅读:167今日分享:16

c语言入门:[13]循环语句介绍goto

让计算机打印输出50个星号以我们现在的知识,第一种方法我们可以printf('**************************************************');第二中方法我们可以printf('*');printf('*');......重复50次我们看起来第一种方式简单一些,但如果是500000个星号呢?第二种方法就是重复地执行printf('*');这行代码,如果我们学会了让让程序重复执行的命令那就简单多了,这节要学习的goto语句就是做这个用的,请看下面的代码:int main(){ printf('一个循环语句的例子\n'); mark:printf('*'); goto mark; printf('hello\n');}我们在printf('*);这句的前面做了一个标记,给一句c代码做标记的方法是标记名加冒号的形式,标记名你可以随便起但要符合'字母数字下划线组成不能以数字开头'的规则,例如这里我就起了个mark作为标记名。goto这个关键字你可以理解成跳转到的意思,那么程序的第三行goto mark;就可以翻译成跳转到标记为mark的地方执行。我们分析下程序的执行过程:执行printf('一个循环语句的例子\n');标记第二行的开始位置位置,起名为mark。执行printf('*');跳转到mark位置。执行printf('*);跳转到mark位置。执行printf('*);跳转到mark位置。执行printf('*);......这样就达到了重复执行printf('*);的目的,你可以运行下程序试试,你会发现程序一直在输出星号,实际上printf('hello\n');这句是得不到执行机会的,因为程序一直在重复执行printf('*);这句。我们怎样才能控制重复执行的次数呢,这就需要我们用一个变量来计数,请看下面的例子:知识补充:int i=0; 相当于 int i; i=0; 两步操作,这是一种简写方式,注意这句话要写在前面因为c语言要求定义变量的语句要写在开头的位置。 i=i+1;把i的值取出来加1后再存回到i变量里,实现了i变量里的值增加1的运算例子代码:int main(){ int i=0; printf('一个循环语句的例子\n'); mark:printf('*'); i=i+1;//这个i变量就像一个能查数的人一样,每执行一次printf('*');i的值就加1 if(i<10)//这样当i数到10的时候,if条件为假不执行goto,循环就结束了。 { goto mark; } printf('hello\n');}上面的例子用了一个变量i和一个if判断达到了控制循环次数的目的。这里重复执行的代码为printf('*');i=i+1;if(i<10);每重复执行一次i的值都不一样,所以if(i<10)才可能不成立,循环才能退出。我们可以认为i是控制这个循环的变量,i<10是循环的条件,
推荐信息