使用c语言输出菱形

在c语言环境下使用for循环与'*'字符巧妙输出一个菱形。

工具/原料

  • ubuntu
  • vim+gcc(visual studio)

方法/步骤

  1. 1

    首先,输入预处理指令#include <stdio.h>与函数原型void print(int n)。其中,n表示行数。

  2. 2

    然后,对输入的n进行提前判断,若小于0或为偶数,则结束打印。

  3. 3

    接着对上半个菱形进行输出(包括最长的行)。使用两层循环进行输出,分别控制行数与行内的位置。

  4. 4

    接着对下半个菱形进行输出(包括最长的行)。也使用两层循环进行输出,分别控制行数与行内的位置。

  5. 5

    对n=5与n=7进行输出测试,代码如下。然后编译运行得结果如下。

  6. 6

    后面附上所有的代码与完整代码截图

    以下是所有的代码:#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=7int main(){printf("5\n");print(5);printf("7\n");print(7);return 0;}

  • 发表于 2018-02-08 00:00
  • 阅读 ( 317 )
  • 分类:其他类型

相关问题

0 条评论

请先 登录 后评论