c#高手请进,高分回报!

题目:编程输出正方形、长方形和三角形
1.由用户选择输出哪个形状
2.用户给出某个形状的大小,如正方形的边长、长方形的长和宽、三角形的高度或边长(需有一定的长度限制)
3.用户选择用什么符号来画,默认为“*”
4.用户选择输出实心还是空心图形
要求可以调试成功的,并且是全部代码..因为作业过多想高手帮忙,小弟感激不尽了.一天之内可以完成的追加分数.
最好有注释..谢谢..

第1个回答  2008-10-06
//帮上面的完整了一些东西

using System;
using System.Collections.Generic;
using System.Text;

namespace 题目测试
{
class Program
{
static void Main(string[] args)
{
Start:
Console.WriteLine("请选择要生成的图形:");
Console.WriteLine(" 1.正方形");
Console.WriteLine(" 2.长方形");
Console.WriteLine(" 3.三角形");
string Style = Console.ReadLine();
if (Style != "1" && Style != "2" && Style != "3")
{
Console.WriteLine("输入错误!");
goto Start;
}
else
{
//调用处理方法
Draw dr = new Draw();
dr.Draw_Image(Style);
goto Start;
}
}

}
public class Draw
{
public void Draw_Image(string types)
{
switch (types)
{
case "1": Draw_Condition("1"); break;
case "2": Draw_Condition("2"); break;
case "3": Draw_triangle(); break;
}
}
private void Draw_Condition(string types)
{
int with=0 ;
int Long=0;
string W, L, sign, style;
if (types == "1")
{
A:
Console.Write("请输入正方形边长:");
W = Convert.ToString(Console.ReadLine());
if (W != "")
{
if (IsNumeric(W))
{
if (Convert.ToInt16(W) > 1 && Convert.ToInt16(W) < 21)
{
with = Convert.ToInt16(W);
}
else
{
Console.WriteLine("输入错误,超出范围,请确定边长在2~20范围之中!");
goto A;
}
}
else
{
Console.WriteLine("输入错误!");
goto A;
}

}
else
{
Console.WriteLine("输入错误!");
goto A;
}
Console.WriteLine("");
B:
Console.Write("请输入绘制图形的符号(回车为默认符号 *):");
sign = Convert.ToString(Console.ReadLine());
if (sign == "")
{
sign = "*";
}
if (sign.Length > 1)
{
Console.Write("绘制图形的符号不要超过一个字符,请重新输入!");
goto B;
}
Console.WriteLine("");
C:
Console.WriteLine("请选择输出图案是空心还是实心(默认为实心):");
Console.WriteLine(" 1.实心");
Console.WriteLine(" 2.空心");
style = Console.ReadLine();
if (style != "1" && style !="2" && style != "")
{
Console.WriteLine("输入错误,请重输!");
goto C;
}
if (style == "1" || style == "")
{
style = "solid";
}
Draw_Square_Oblong(with, with, style, sign);

}
else
{
D:
Console.Write("请输入长方形宽:");
W = Convert.ToString(Console.ReadLine());
if (W != "")
{
if (IsNumeric(W))
{
if (Convert.ToInt16(W) > 1 && Convert.ToInt16(W) < 21)
{
with = Convert.ToInt16(W);
}
else
{
Console.WriteLine("输入错误,超出范围,请确定边长在2~20范围之中!");
goto D;
}
}
else
{
Console.WriteLine("输入错误!");
goto D;
}
}
else
{
Console.WriteLine("输入错误!");
goto D;
}
Console.WriteLine("");
E:
Console.Write("请输入长方形高:");
W = Convert.ToString(Console.ReadLine());
if (W != "")
{
if (IsNumeric(W))
{
if (Convert.ToInt16(W) > 1 && Convert.ToInt16(W) < 21)
{
Long = Convert.ToInt16(W);
}
else
{
Console.WriteLine("输入错误,超出范围,请确定边长在2~20范围之中!");
goto E;
}
}
else
{
Console.WriteLine("输入错误!");
goto E;
}
}
else
{
Console.WriteLine("输入错误!");
goto E;
}
Console.WriteLine("");
F:
Console.Write("请输入绘制图形的符号(回车为默认符号 *):");
sign = Convert.ToString(Console.ReadLine());
if (sign == "")
{
sign = "*";
}
if (sign.Length > 1)
{
Console.Write("绘制图形的符号不要超过一个字符,请重新输入!");
Console.WriteLine("");
goto F;
}
Console.WriteLine("");
G:
Console.WriteLine("请选择输出图案是空心还是实心(默认为实心):");
Console.WriteLine(" 1.实心");
Console.WriteLine(" 2.空心");
style = Console.ReadLine();
if (style != "1" && style != "2" && style != "")
{
Console.WriteLine("输入错误,请重输!");
goto G;
}
if (style == "1" || style == "")
{
style = "solid";
}
Draw_Square_Oblong(with, Long, style, sign);
}
}
private void Draw_triangle()
{
int With = 10;
string W;
string style, sign;
H:
Console.Write("请输入三角形的边长:");
W = Console.ReadLine();
if (W != "")
{
if (IsNumeric(W))
{
if (Convert.ToInt16(W) > 1 && Convert.ToInt16(W) < 21)
{
With = Convert.ToInt16(W);
}
else
{
Console.WriteLine("输入错误,超出范围,请确定边长在2~20范围之中!");
goto H;
}
}
else
{
Console.WriteLine("输入错误!");
goto H;
}
}
else
{
Console.WriteLine("输入错误!");
goto H;
}
Console.WriteLine("");
I:
Console.Write("请输入绘制图形的符号(回车为默认符号 *):");
sign = Console.ReadLine();
if (sign == "")
{
sign = "*";
}
if (sign.Length > 1)
{
Console.Write("绘制图形的符号不要超过一个字符,请重新输入!");
Console.WriteLine("");
goto I;
}
Console.WriteLine("");
J:
Console.WriteLine("请选择输出图案是空心还是实心(回车为默认实心):");
Console.WriteLine(" 1.实心");
Console.WriteLine(" 2.空心");
style = Console.ReadLine();
if (style != "1" && style != "2" && style != "")
{
Console.WriteLine("输入错误,请重输!");
goto J;
}
if (style == "1" || style == "")
{
style = "solid";
}
Draw_Triangle(With, style, sign);
}
/// <summary>
/// 绘制长方形正方形
/// </summary>
/// <param name="Long">长</param>
/// <param name="With">高</param>
/// <param name="Style">类型 solid为实心 任意值为空心</param>
/// <param name="sign">图案</param>
public void Draw_Square_Oblong(int Long, int With, string Style, string sign)
{
if (Style == "solid")
{
for (int W = 0; W < With; W++)
{
Console.Write(" " + sign);
for (int L = 1; L < Long; L++)
{
Console.Write(" " + sign);
}
Console.WriteLine("");
}
}
else
{
for (int w = 0; w < With; w++)
{
Console.Write(" " + sign);
for (int l = 1; l < Long-1 ; l++)
{
if (w == 0 || w == With - 1)
{
Console.Write(" " + sign);
}
else
{
Console.Write(" ");
}
}
Console.Write(" " + sign);
Console.WriteLine("");
}
}
}
private bool IsNumeric(string str)
{
if (str==null || str.Length==0)
return false;
foreach(char c in str)
{
if (!Char.IsNumber(c))
{
return false;
}
}
return true;
}

/// <summary>
/// 等腰三角形绘制
/// </summary>
/// <param name="Sidecar">边长</param>
public void Draw_Triangle(int Sidecar, string style, string sign)
{
if (style != "solid")
{
for (int i = 0; i < Sidecar; i++)
{
for (int t = Sidecar - 1 - i; t > 0; t--)
{
Console.Write(" ");
}

Console.Write(sign);
for (int p = 0; p < i - 1; p++)
{
if (i > 0 && i < Sidecar - 1)
{
Console.Write(" ");
}
if (i == Sidecar - 1)
{
Console.Write(" "+sign);
}

}
if (i != 0)
{
Console.Write(" "+sign);
}
Console.WriteLine("");
}

}
else
{
for (int i = 1; i < Sidecar; i++)
{
for (int t = Sidecar - 1 - i; t > 0; t--)
{
Console.Write(" ");
}
for (int p = 0; p < i - 1; p++)
{
Console.Write(" "+sign);
}
Console.WriteLine("");
}
}
}
}
}
第2个回答  推荐于2016-07-01
//刚好今天没事,做完啦.控制台应用程序
//注释下午给你写
using System;
using System.Collections.Generic;
using System.Text;

namespace 题目测试
{
class Program
{
static void Main(string[] args)
{
Start:
Console.WriteLine("请选择要生成的图形:");
Console.WriteLine(" 1.正方形");
Console.WriteLine(" 2.长方形");
Console.WriteLine(" 3.三角形");
string Style = Console.ReadLine();
if (Style != "1" && Style != "2" && Style != "3")
{
Console.WriteLine("输入错误!");
goto Start;
}
else
{
//调用处理方法
Draw dr = new Draw();
dr.Draw_Image(Style);
goto Start;
}
}

}
public class Draw
{
public void Draw_Image(string types)
{
switch (types)
{
case "1": Draw_Condition("1"); break;
case "2": Draw_Condition("2"); break;
case "3": Draw_triangle(); break;
}
}
private void Draw_Condition(string types)
{
int with = 10, Long = 10;
string W, L, sign, style;
if (types == "1")
{
Console.Write("请输入正方形边长(回车为默认图形长度):");
W = Convert.ToString(Console.ReadLine());
if (W != "")
{
with = Convert.ToInt16(W);
}
Console.WriteLine("");
Console.Write("请输入绘制图形的符号(回车为默认符号 *):");
sign = Convert.ToString(Console.ReadLine());
if (sign == "")
{
sign = "*";
}
Console.WriteLine("");
Console.WriteLine("请选择输出图案是空心还是实心(默认为实心):");
Console.WriteLine(" 1.实心");
Console.WriteLine(" 2.空心");
style = Console.ReadLine();
if (style == "1" || style == "")
{
style = "solid";
}
Draw_Square_Oblong(with, Long, style, sign);

}
else
{
with = 20; Long = 10;
Console.Write("请输入长方形宽(回车为默认图形长度):");
W = Convert.ToString(Console.ReadLine());
if (W != "")
{
with = Convert.ToInt16(W);
}
Console.WriteLine("");
Console.Write("请输入长方形高(回车为默认图形长度):");
W = Convert.ToString(Console.ReadLine());
if (W != "")
{
Long = Convert.ToInt16(W);
}
Console.WriteLine("");
Console.Write("请输入绘制图形的符号(回车为默认符号 *):");
sign = Convert.ToString(Console.ReadLine());
if (sign == "")
{
sign = "*";
}
Console.WriteLine("");
Console.WriteLine("请选择输出图案是空心还是实心(默认为实心):");
Console.WriteLine(" 1.实心");
Console.WriteLine(" 2.空心");
style = Console.ReadLine();
if (style == "1" || style == "")
{
style = "solid";
}
Draw_Square_Oblong(with, Long, style, sign);
}
}
private void Draw_triangle()
{
int With = 10;
string W;
string style, sign;
Console.Write("请输入三角形的边长(回车为默认长度):");
W = Console.ReadLine();
if (W != "")
{
With = Convert.ToInt16(W);
}
Console.WriteLine("");
Console.Write("请输入绘制图形的符号(回车为默认符号 *):");
sign = Console.ReadLine();
if (sign == "")
{
sign = "*";
}
Console.WriteLine("");
Console.WriteLine("请选择输出图案是空心还是实心(回车为默认实心):");
Console.WriteLine(" 1.实心");
Console.WriteLine(" 2.空心");
style = Console.ReadLine();
if (style == "1" || style == "")
{
style = "solid";
}
Draw_Triangle(With, style, sign);
}
/// <summary>
/// 绘制长方形正方形
/// </summary>
/// <param name="Long">长</param>
/// <param name="With">高</param>
/// <param name="Style">类型 solid为实心 任意值为空心</param>
/// <param name="sign">图案</param>
public void Draw_Square_Oblong(int Long, int With, string Style, string sign)
{
if (Style == "solid")
{
for (int W = 0; W < With; W++)
{
Console.Write(" " + sign);
for (int L = 1; L < Long; L++)
{
Console.Write(" " + sign);
}
Console.WriteLine("");
}
}
else
{
for (int w = 0; w < With; w++)
{
Console.Write(" " + sign);
for (int l = 1; l < Long - 1; l++)
{
if (w == 0 || w == With - 1)
{
Console.Write(" " + sign);
}
else
{
Console.Write(" ");
}
}
Console.Write(" " + sign);
Console.WriteLine("");
}
}
}
/// <summary>
/// 等腰三角形绘制
/// </summary>
/// <param name="Sidecar">边长</param>
public void Draw_Triangle(int Sidecar, string style, string sign)
{
if (style != "solid")
{
for (int i = 0; i < Sidecar; i++)
{
for (int t = Sidecar - 1 - i; t > 0; t--)
{
Console.Write(" ");
}

Console.Write(sign);
for (int p = 0; p < i * 2 - 1; p++)
{
if (i > 0 && i < Sidecar - 1)
{
Console.Write(" ");
}
if (i == Sidecar - 1)
{
Console.Write(sign);
}

}
if (i != 0)
{
Console.Write(sign);
}
Console.WriteLine("");
}

}
else
{
for (int i = 1; i < Sidecar; i++)
{
for (int t = Sidecar - 1 - i; t > 0; t--)
{
Console.Write(" ");
}
for (int p = 0; p < i * 2 - 1; p++)
{
Console.Write(sign);
}
Console.WriteLine("");
}
}
}
}
}本回答被提问者采纳
第3个回答  2008-10-06
被人抢了
相似回答