c语言输出菱形
使用c语言,在gcc+vim上,输出一个用*表示的菱形。
操作方法
- 01
首先,输入预处理指令#include <stdio.h>与函数原型void print(int n)。 其中,n表示行数。
- 02
然后,对输入的n进行提前判断,若小于0或为偶数,则结束打印。
- 03
接着对上半个菱形进行输出(包括最长的行)。使用两层循环进行输出,分别控制行数与行内的位置。
- 04
接着对下半个菱形进行输出(包括最长的行)。也使用两层循环进行输出,分别控制行数与行内的位置。
- 05
对n=5与n=7进行输出测试,代码如下。
- 06
编译运行后的结果如下
- 07
以下是所有的代码: #include <stdio.h> void print(int n) { //判断n是否符合正奇数的要求 if(n < 0 || n % 2 == 0) //不符合则直接退出 return; //对上半个菱形输出 int i = 1,j = 1; //i控制行数 for(i = 1; i <= (n + 1) / 2; i++) { //j控制每一行的位置 //输出空格 for(j = 1; j <= (n+1)/2 - i; j++) printf(" "); //输出* for(j = 1; j <= 2 * i - 1; j++) printf("*"); //输出换行 printf("\n"); } //输出下一半 //i控制行数 for(i = 1; i <= n/2; i++) { //j控制每一行的位置 //输出空格 for(j = 1; j <= i; j++) printf(" "); //输出* for(j = 1; j <= n -2 * i; j++) printf("*"); //输出换行 printf("\n"); } } //测试函数,测试n=5和n=7 int main() { printf("5\n"); print(5); printf("7\n"); print(7); return 0; }