c语言for循环如何打印菱形


本文摘自PHP中文网,作者coldplay.xixi,侵删。

c语言for循环打印菱形的方法:使用两个for循环,实现条件判断,代码为【int i,j;for(i=0; i<2*n-1; i++){if(i=n-i-1&&j<n+i) {print('*');}else{..}}】。

c语言for循环打印菱形的方法:

方法一(以循环为主打印)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

#include <stdio.h>

void print(int n)

{

    int i,j;

    for(i=1; i<=n; i++)

    {

        for(j=1; j<=n-i; j++)

        {

            printf(" ");

        }

        for(j=n-i+1; j<n+i; j++)

        {

            printf("*");

        }

        printf("\n");

    }

      

    for(i=n-1; i>=1; i--)

    {

        for(j=1; j<=(n-i); j++)

        {

            printf(" ");

        }

        for(j=n-i+1; j<n+i; j++)

        {

            printf("*");

        }

        printf("\n");

    }

}

  

void main()

{

    int n;

    printf("---------开始打印符号---------\n");

    printf("请输入数字:");

    scanf("%d",&n);

    print(n);

    printf("---------结束打印符号---------\n");    

}

方法二:(两个for,根据条件判断实现)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

#include <stdio.h>

//输出格式

void print(char ch) {

    putchar(ch);

}

//星号

void printstar(int n)

{

    int i,j;    //行,列

    for(i=0; i<2*n-1; i++)

    {

        for(j=0; j<2*n-1; j++)

        {

            if(i<n)

            {

                if(j>=n-i-1&&j<n+i)

                {

                    print('*');

                }

                else

                {

                    print(' ');

                }

            }

            else

            {

                if(j>=i-n+1&&j<3*n-i-2)

                {

                    print('*');

                }

                else 

                {

                    print(' ');

                }

            }

  

        }

        print('\n');

    }

}

  

void main()

{

    int n;

    printf("---------开始打印符号---------\n");

    printf("请输入数字:");

    scanf("%d",&n);

    printstar(n);

    printf("---------结束打印符号---------\n");    

}

说明:(2n-1)―(n-i-1)= n+i

阅读剩余部分

相关阅读 >>

C语言逗号运算符用法是什么?

C语言\n什么意思?

C语言统计字符串中各个字符的个数

C语言中“switch case”语句怎么用?

C语言文件读写函数有哪些?

C语言的基本组成单位是什么

C语言简单数据类型有哪些

C语言指针用法有哪些

C语言数组求和的方法

C语言二进制输出的方法

更多相关阅读请进入《C语言》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...