java - 如何在 C# 中打印 ASCII 模式但使用 Java 语法?
问题描述
下面的代码是用于模式的a
,感觉一旦我得到a
我就可以得到其他人。
我喜欢array[int].length
Java 中的语法,并且有助于打印如图所示的模式。但我认为 C# 中不存在这样的事情。
class Main {
public static void main(String[] args)
{
char[][] arr = new char[10][10];
int starCount = 10;
for(int i = 0; i < arr.length; i++)
{
for(int j = 0; j < starCount; j++)
{
arr[i][j] = '*';
}
for(int k = starCount; k < arr[i].length; k++)
{
arr[i][k] = '-';
}
starCount--;
}
for(int a = 0; a < arr.length; a++)
{
for(int b = 0; b < arr[a].length; b++)
{
System.out.print(arr[a][b]);
}
System.out.println();
}
}
}
此代码*
以递减的方式打印,但我正在努力解决如何用-
图像中所示的字符替换数组的空元素。
class MainClass {
public static void Main (string[] args)
{
char[ , ] arr = new char[10,10];
int starCount = 10;
for(int i = 0; i < arr.Length; i++)
{
for (int j = 0; j < starCount; j++)
{
arr[i , j] = '*';
}
for (int k = 0; ) //IDK WHAT TO DO TO ASSIGN ARR[I , K] = '-';
starCount--;
}
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
Console.Write(arr[i , j]);
}
Console.WriteLine();
}
}
}
解决方案
您可以使用两个嵌套的 for 循环和一个if else 语句来打印所有这些模式。这是 Java 代码,但我认为它可以很容易地转换为 C#:
int n = 5;
for (int i = -n; i <= n; i++) {
for (int j = -n; j <= n; j++) {
// a) if (i + j <= 0)
// b) if (i + j >= 0)
// c) if (i <= j)
// d) if (Math.abs(i) + Math.abs(j) <= n)
if (i + j <= 0)
System.out.print("*");
else
System.out.print("-");
}
System.out.println();
}
输出(组合):
a) b) c) d)
*********** ----------* *********** -----*-----
**********- ---------** -********** ----***----
*********-- --------*** --********* ---*****---
********--- -------**** ---******** --*******--
*******---- ------***** ----******* -*********-
******----- -----****** -----****** ***********
*****------ ----******* ------***** -*********-
****------- ---******** -------**** --*******--
***-------- --********* --------*** ---*****---
**--------- -********** ---------** ----***----
*---------- *********** ----------* -----*-----
另请参阅:使用循环输出 ASCII 菱形
推荐阅读
- python - 如何在 Python 中使用 psycopg2-binary?
- postgresql - 使用 CTE 时,最好使用 join 或 in() 进行过滤?
- error-handling - 编译器返回错误的各个部分是什么意思?
- sql - 从包含数组元素的 Presto 列中选择值
- python - 在 BeautifulSoup 中处理无限滚动 UI
- theory - 亚当比芭芭拉瘦。道尔顿没有西莉亚那么瘦。亚当比西莉亚瘦
- kotlin - Kotlin 中 IF 比较的空安全性
- python-3.x - 在 Mask R-CNN 中添加多个类
- go - Golang 将接口切片用于函数参数
- javascript - 如何将异步函数值传递给事件处理程序