2017-08-14 102 views
-2

下面的代码只生成一个直角三角形,我如何将它变成一个等腰三角形?在C3中创建一个等腰三角形

int height = 4; 
string star = ""; 
for (int i = 0; int i < height; i++) 
{ 
    star += "*"; 
    Console.WriteLine(star); 
} 
Console.ReadLine(); 

这只显示一个直角三角形。我试图做的是一个金字塔。

+2

你为什么不显示你的编译代码? –

+0

@ Tim Schmelter我不明白你的意思 –

+0

@ Mong Zhu我的意思是金字塔的正面。 –

回答

3

这里有一个更干净的代码:

int numberoflayer = 4; 
int empty; 
int number; 
for (int i = 1; i <= numberoflayer; i++) 
{ 
    for (empty = 1; empty <= (numberoflayer - i); empty++) 
     Console.Write(" "); 
    for (number = 1; number <= i; number++) 
     Console.Write('*'); 
    for (number = (i - 1); number >= 1; number--) 
     Console.Write('*'); 
    Console.WriteLine(); 
} 
0

肮脏的代码,但是你去

int height = 4; 
string empty = " "; 
String star = ""; 
for(int i = 0; i<height; i++) 
{ 
    star += " *"; 
    empty = empty.Length > 0 ? empty.Remove(0,1) : " "; 
    Console.WriteLine(empty + star); 
} 
Console.ReadLine(); 
1

这吸引你的圣诞树:

int height = 4; 
for (int i = 0; i < height; i++) 
{ 
    int countSpaces = (int)Math.Ceiling((height * 2/2d) - i); 
    int countStars = 1 + (i * 2); 
    string line = new string(' ', countSpaces) + new string('*', countStars); 
    Console.WriteLine(line); 
}