c语言打印菱形图案
以下是使用C语言打印菱形图案的示例代码:
#include <stdio.h>
int main() {
int i, j, rows, spaces;
printf("请输入行数:");
scanf("%d", &rows);
spaces = rows - 1;
for (i = 1; i <= rows; i++) {
for (j = 1; j <= spaces; j++) {
printf(" ");
}
spaces--;
for (j = 1; j <= 2 * i - 1; j++) {
printf("*");
}
printf("\n");
}
spaces = 1;
for (i = 1; i <= rows - 1; i++) {
for (j = 1; j <= spaces; j++) {
printf(" ");
}
spaces++;
for (j = 1; j <= 2 * (rows - i) - 1; j++) {
printf("*");
}
printf("\n");
}
return 0;
}
运行该程序后,程序会要求输入行数,然后打印出相应行数的
菱形图案。例如,如果输入行数为5,则输出如下:
*
***
*****
*******
*********
*******
*****
***
*
代码实现的思路是:
- 首先通过 scanf() 函数获取用户输入的行数。
- 然后在第一次循环中依次打印每一行的左侧空格和星号,每行星号个数为 2i-1,其中i为当前行数。
- 第二次循环中依次打印每一行的左侧空格和星号,每行星号个数为 2(rows-i) - 1,其中rows为总行数,i为当前行数。
- 两次循环结束后,打印出完整的菱形图案。
希望这个示例程序能对你有所帮助!
还没有评论,来说两句吧...