2015-07-05 3 views
-5

Я использую Programmr.com, чтобы улучшить свои навыки. У меня проблема с этим упражнением.Программа "Reverse Array" C#

Вопрос:

Написать программу, которая принимает данные 10 элементов в массиве и обратные элементы в массиве без использования какого-либо другой массива.

Пример: 1. Если пользователь дает ввод 1,2,3,4,5,5,4,7,3,6, то вывод должен быть в таком формате: 6 3 7 4 5 5 4 3 2 1

2.Если пользователь дает вход 25,23,, 26,12,45,65,58,24,27,13, то выход должен быть в следующем формате: 27 24 13 58 65 45 12 26 23 25

Примечание. Убедитесь, что выходной формат аналогичен приведенному выше примеру.

Мой код:

using System; 
class ReverseArray{ 
    static void Main(string[] args){ 

     int[] arr = new int[10]; 

     for(int i =0;i<10;i++) 
     { 
      Console.WriteLine("Enter the array elements["+i+"]:"); 
      arr[i]=int.Parse(Console.ReadLine()); 
     } 
      //write your logic here 

     for(int i = arr.Length-1; i >= 0; i--) 
     { 
      Console.Write(arr[i] + " "); 
     } 
      //end 

     for(int i =0;i<10;i++) 
     { 
     Console.Write(arr[i]+" "); 
     } 
} 
} 

Programmr не проходит задачу и написать, что есть неопределенные ошибки. Я также попробовал метод Array.Reverse.

+2

Какой вопрос? Упражнения по программированию - это не вопросы. – LVBen

+0

@ LVBen Где моя вина? Я не могу найти ошибку. –

+0

Ввод не ясен. Входит ли вход в запятую? Вы не обращаетесь с ними каким-либо образом. – grovesNL

ответ

0

Использование Linq обратный метод и string.join

Вы можете:

Using System.Linq; 

Console.WriteLine(String.Join(" ", arr.Reverse())); 

Это будет возмещена массив и распечатать список разделенных пробелами в консоли

+0

Это было бы слишком мучительно медленным для любого реального использования в критических ситуациях. – Krythic

+0

Конечно, производительность не является приоритетом в этом случае, максимальный размер его массива равен 10 – BhavO

Смежные вопросы