循环语句之goto语句使用学习笔记

if语句和goto语句
goto语句是无条件转向语句,它的一般形式是:
goto 语句标号;
语句标号是一个标示符。
c程序中的任何一个语句都可以有一个语句标号,其一般形式是:
语句标号:语句
goto语句的执行:无条件的转到语句标号后面的语句处执行。用goto语句可以与if语句一起构成循环结构。
if语句和goto语句构成的当型循环
loop:if(表达式)

语句
goto loop;
在这里插入图片描述
实验例程:在这里插入图片描述
定义一个位变量SWITCH_S3=P3∧0也就是S3按键连接单片机P3端口的第0号管脚。然后进入到main函数while(1)循环。P1=0x0f连接P1端口管脚的4个灯D4.D5.D6.D7熄灭,然后进入到由if语句和goto语句构成的当型循环。然后进行if后面语句的判断,按键是否按下,如果被按下则成立,然后执行语句P1=0xf0所有的灯都亮,然后执行goto loop,回到loop:if继续判断,如果按键没被按下,就跳出循环,执行P1=0x0f,执行完再执行由if语句和goto语句构成的当型循环。
编译,烧录,当按下按键S3四个灯全亮,没被按下四个灯全熄。
if语句和goto语句构成直到循环
loop:

语句
if(表达式)goto loop:

在这里插入图片描述
先执行后判断。
实验例程
在这里插入图片描述
一开始给P1赋值0xf0让4个灯都点亮,循环语句中给P1赋值0x0f让四个灯都熄灭,然后判断,按键按下就执行P1=0x0f让4个灯熄灭,然后再继续判断按键是否按下,如果按下了继续执行loop后的P1=0x0f,再进行判断,如果没按下就执行P1=0x0f让四个灯都点亮,再执行熄灭,再判断。
一直按下一直熄灭,一直未按下就一直执行点亮熄灭点亮熄灭…
最后结果发现,一直未按下,却一直点亮并没有点亮熄灭的交替是因为单片机程序运行得很快,这个交替过程人眼无法分辨出来,所以看起来是一直亮的,但亮度会比平常的亮度低。
编译烧录实验结果和预期一样。

发布了25 篇原创文章 · 获赞 8 · 访问量 1975

猜你喜欢

转载自blog.csdn.net/hltx666/article/details/104267597