Arduino 串口输出菱形图案:宏定义、for 循环实现

本文将使用 Arduino 的串口通信功能,通过宏定义和 for 循环,输出一个由星号组成的菱形图案。

考察点

  • 宏定义
  • for 循环
  • 串口输出

代码

#define MAX_STAR 7 //最大星数为7,即菱形最宽处的星数
#define MID_STAR 4 //中间行的星数为4,即菱形最高处的星数

void setup() {
  Serial.begin(9600);
  while (!Serial); //等待串口连接
}

void loop() {
  for (int i = 1; i <= MAX_STAR; i += 2) { //输出上半部分菱形
    for (int j = 0; j < (MAX_STAR - i) / 2; j++) {
      Serial.print(' '); //先输出空格
    }
    for (int j = 0; j < i; j++) {
      Serial.print('*'); //再输出星号
    }
    Serial.println(); //换行
  }
  for (int i = MAX_STAR - 2; i >= 1; i -= 2) { //输出下半部分菱形
    for (int j = 0; j < (MAX_STAR - i) / 2; j++) {
      Serial.print(' '); //先输出空格
    }
    for (int j = 0; j < i; j++) {
      Serial.print('*'); //再输出星号
    }
    Serial.println(); //换行
  }
  delay(1000); //延时1秒
}

串口通信截图

image.png

代码解析:

  • 宏定义: 使用 #define 指令定义了两个宏常量 MAX_STARMID_STAR,方便代码修改和阅读。
  • 输出上半部分菱形: 循环遍历 MAX_STAR 的奇数,控制每行星号的个数,并使用空格进行对齐。
  • 输出下半部分菱形: 与上半部分类似,只是循环遍历的顺序相反。
  • 串口通信: 使用 Serial.begin(9600) 初始化串口,并使用 Serial.printSerial.println 函数将字符输出到串口。

通过该程序,您将学习如何使用 Arduino 的串口通信功能,结合宏定义和 for 循环,输出各种图形图案。您可以尝试修改代码,输出更多形状的图案,例如三角形、正方形等。

Arduino 串口输出菱形图案:宏定义、for 循环实现

原文地址: https://www.cveoy.top/t/topic/mP5P 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录