双向流水灯for循环代码
时间: 2024-05-25 11:09:00 浏览: 17
双向流水灯可以用两个循环分别控制两个方向的LED灯的亮灭,循环中使用延时函数来控制灯的亮灭时间。以下是一个示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
#define LED_NUM 8 //LED灯数量
int main()
{
int i, j;
int led[LED_NUM] = {0}; //初始化LED状态,0表示灭,1表示亮
int direction = 1; //方向标志,1表示向右,-1表示向左
while (1)
{
for (i = 0; i < LED_NUM; i++)
{
if (led[i] == 1)
{
printf("*"); //输出亮的LED灯
}
else
{
printf("-"); //输出灭的LED灯
}
}
printf("\n");
for (j = 0; j < LED_NUM; j++)
{
if (led[j] == 1)
{
led[j] = 0; //将亮的LED灯熄灭
if (j == LED_NUM - 1)
{
direction = -1; //如果到达最右边,改变方向向左
}
else
{
led[j + 1] = 1; //将下一个LED灯点亮
}
}
}
for (j = LED_NUM - 1; j >= 0; j--)
{
if (led[j] == 1)
{
led[j] = 0; //将亮的LED灯熄灭
if (j == 0)
{
direction = 1; //如果到达最左边,改变方向向右
}
else
{
led[j - 1] = 1; //将上一个LED灯点亮
}
}
}
Sleep(200); //延时200ms
system("cls"); //清屏
}
return 0;
}
```
在这个代码中,我们使用了一个长度为8的数组来表示8个LED灯的状态,使用两个for循环分别控制两个方向的LED灯的亮灭,使用延时函数Sleep()来控制流水灯的速度,并使用system("cls")来清屏。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)