【C语言及程序设计】项目1-32-(5)&(6):输出小星星

问题描述:https://blog.csdn.net/sxhelijian/article/details/44158317

输出小星星(5)

 1 #include "stdafx.h"
 2 
 3 int main()
 4 {
 5     int x, x1;
 6     scanf_s("%d", &x);
 7     x1 = x;
 8     
 9     //输出第1行(特殊行)
10     for (int i = 0; i < x - 1; i++)
11     {
12         printf(" ");
13     }
14     printf("*");
15     printf("\n");
16 
17     //输出第2至x-1行
18     for (int i = 1; i < x - 1; i++)
19     {
20         //输出i行第1组空格
21         for (int i = 1; i < x1 -1 ; i++)
22         {
23             printf(" ");
24         }
25         x1--;
26 
27         //输出i行第1个*
28         printf("*");
29 
30         //输出i行第2组空格
31         for (int j = 1; j <= 2*i - 1 ; j++)
32         {
33             printf(" ");
34         }
35         
36         //输出i行第2个*
37         printf("*");
38 
39         //换行
40         printf("\n");
41 
42     }
43 
44     //输出第x行(特殊行)
45     for (int i = 0; i < 2*x - 1; i++)
46     {
47         printf("*");
48     }
49     printf("\n");
50 
51     return 0;
52 }

结果

输出小星星(6)

 1 int main()
 2 {
 3     int x, x1, x2;
 4     scanf_s("%d", &x);
 5     x1 = x;
 6     x2 = x - 1;
 7 
 8     //输入等腰三角形上半部(含中线)
 9     for (int i = 1; i <= x; i++)
10     {
11         //输出i行空格部分
12         for (int i = 0; i < x1 - 1; i++)
13         {
14             printf(" ");
15         }
16         x1--;
17 
18         //输出i行*部分
19         for (int j = 0; j < 2*i - 1; j++)
20         {
21             printf("*");
22         }
23 
24         //换行
25         printf("\n");
26     }
27 
28     //输入等腰三角形下半部
29     for (int i = 1; i <= x - 1; i++)
30     {
31         //输出i行空格部分
32         for (int j = 0; j < i; j++)
33         {
34             printf(" ");
35         }
36 
37         //输出i行*部分
38         for (int i = 0; i < 2*x2 - 1; i++)
39         {
40             printf("*");
41         }
42         x2--;
43 
44         //换行
45         printf("\n");
46     }
47     
48 
49     return 0;
50 }

结果

感想:

写“伪代码”可以增加code的可读性;

猜你喜欢

转载自www.cnblogs.com/miyazakehime/p/9127464.html