¿Cómo imprimir los contenidos de la matriz horizontalmente?

¿Por qué la ventana de la consola no imprime los contenidos de la matriz de forma horizontal en lugar de vertical?

¿Existe alguna manera de cambiar esto?

¿Cómo puedo mostrar el contenido de mi matriz horizontalmente en lugar de verticalmente con Console.WriteLine() ?

Por ejemplo:

 int[] numbers = new int[100] for(int i; i < 100; i++) { numbers[i] = i; } for (int i; i < 100; i++) { Console.WriteLine(numbers[i]); } 

Probablemente esté utilizando Console.WriteLine para imprimir la matriz.

 int[] array = new int[] { 1, 2, 3 }; foreach(var item in array) { Console.WriteLine(item.ToString()); } 

Si no desea tener cada elemento en una línea separada, use la Console.Write . Console.Write :

 int[] array = new int[] { 1, 2, 3 }; foreach(var item in array) { Console.Write(item.ToString()); } 

o string.Join (en .NET Framework 4 o posterior):

 int[] array = new int[] { 1, 2, 3 }; Console.WriteLine(string.Join(",", array)); 

Yo sugeriría :

 foreach(var item in array) Console.Write("{0}", item); 

Como se escribió anteriormente, excepto que no genera una excepción si un elemento es null .

 Console.Write(string.Join(" ", array)); 

sería perfecto si array es una string[]

Simplemente recorra el conjunto y escriba los elementos en la consola usando Write lugar de WriteLine :

 foreach(var item in array) Console.Write(item.ToString() + " "); 

Siempre que sus artículos no tengan saltos de línea, eso producirá una sola línea.

… o, como dijo Jon Skeet, proporcione un poco más de contexto a su pregunta.

 foreach(var item in array) Console.Write(item.ToString() + "\t"); 
 namespace ReverseString { class Program { static void Main(string[] args) { string stat = "This is an example of code" + "This code has written in C#\n\n"; Console.Write(stat); char[] myArrayofChar = stat.ToCharArray(); Array.Reverse(myArrayofChar); foreach (char myNewChar in myArrayofChar) Console.Write(myNewChar); // Yuo just need to write the function Write instead of WriteLine Console.ReadKey(); } } } 

Esta es la salida

 #C ni nettirw sah edoc sihTedoc fo elpmaxe na si sihT 
  public static void Main(string[] args) { int[] numbers = new int[10]; Console.Write("index "); for (int i = 0; i < numbers.Length; i++) { numbers[i] = i; Console.Write(numbers[i] + " "); } Console.WriteLine(""); Console.WriteLine(""); Console.Write("value "); for (int i = 0; i < numbers.Length; i++) { numbers[i] = numbers.Length - i; Console.Write(numbers[i] + " "); } Console.ReadKey(); } } } 
 int[] n=new int[5]; for (int i = 0; i < 5; i++) { n[i] = i + 100; } foreach (int j in n) { int i = j - 100; Console.WriteLine("Element [{0}]={1}", i, j); i++; } 

Si necesita imprimir bastante una matriz de matrices, algo así podría funcionar http://aaron-hoffman.blogspot.com/2013/11/pretty-print-array-of-arrays-in-net-c.html

 public string PrettyPrintArrayOfArrays(int[][] arrayOfArrays) { if (arrayOfArrays == null) return ""; var prettyArrays = new string[arrayOfArrays.Length]; for (int i = 0; i < arrayOfArrays.Length; i++) { prettyArrays[i] = "[" + String.Join(",", arrayOfArrays[i]) + "]"; } return "[" + String.Join(",", prettyArrays) + "]"; } 

Ejemplo de salida:

 [[2,3]] [[2,3],[5,4,3]] [[2,3],[5,4,3],[8,9]] 

Usar Console.Write solo funciona si el subproceso es el único subproceso que se escribe en la consola, de lo contrario su salida se puede intercalar con otra salida que puede o no insertar nuevas líneas, así como otros caracteres no deseados. Para asegurarse de que su matriz esté impresa intacta, use Console.WriteLine para escribir una cadena. La mayoría de cualquier conjunto de objetos puede imprimirse horizontalmente (según el método ToString () del tipo) utilizando la combinación no genérica disponible antes de .NET 4.0:

  int[] numbers = new int[100]; for(int i= 0; i < 100; i++) { numbers[i] = i; } //For clarity IEnumerable strings = numbers.Select(j=>j.ToString()); string[] stringArray = strings.ToArray(); string output = string.Join(", ", stringArray); Console.WriteLine(output); //OR //For brevity Console.WriteLine(string.Join(", ", numbers.Select(j => j.ToString()).ToArray())); 
 private int[,] MirrorH(int[,] matrix) //the method will return mirror horizintal of matrix { int[,] MirrorHorizintal = new int[4, 4]; for (int i = 0; i < 4; i++) { for (int j = 0; j < 4; j ++) { MirrorHorizintal[i, j] = matrix[i, 3 - j]; } } return MirrorHorizintal; }