Главная arrow Язык программирования C# arrow C# Полное руководство Герберт Шилдт arrow Массивы строк C# Полное руководство Герберт Шилдт

Массивы строк C# Полное руководство Герберт Шилдт

Аналогично данным любого другого типа, строки могут быть организованы в массивы. Ниже приведен соответствующий пример.

// Продемонстрировать строковые массивы.

using System;

class StringArrays {
   static void Main() {
      string [ ] str = { "Это", "очень", "простой", "тест." };

      Console.WriteLine("Исходный массив: ");
      for (int i=0; i < str. Length; i++)
         Console.Write(str [i] + " ");
      Console.WriteLine("\n");

      // Изменить строку.
      str [1] = "тоже";
      str [3] = "до предела тест!";

      Console.WriteLine("Видоизмененный массив: ");
      for (int i=0; i < str.Length; i++)

      Console. Write (str [i] + " ");
   }
}


Вот какой результат дает выполнение приведенного выше кода:
   Исходный массив:
   Это очень простой тест.
   Видоизмененный массив:
   Это тоже простой до предела тест!

Рассмотрим более интересный пример. В приведенной ниже программе целое число выводится словами. Например, число 19 выводится словами “один девять”.

// Вывести отдельные цифры целого числа словами.

using System;

class ConvertDigitsToWords {
   static void Main() {
      int num;
      int nextdigit;
      int numdigits;
      int [ ] n = new int[20];

      string [ ] digits = { "нуль", "один", "два",
                                  "три", "четыре", "пять",
                                  "шесть", "семь", "восемь",
                                  "девять" };

      num = 1908;

      Console.WriteLine("Число: " + num);

      Console.Write("Число словами: ");

      nextdigit = 0;
      numdigits = 0;

      // Получить отдельные цифры и сохранить их
      //в массиве n. .Эти цифры сохраняются в
      // обратном порядке.
      do {
         nextdigit = num % 10;
     n[numdigits] = nextdigit;
     numdigits++;
     num = num / 10;
      } while(num > 0) ; numdigits—;

      // Вывести полученные слова.
      for ( ; numdigits >= 0; numdigits —)
         Console.Write(digits[n[numdigits]] + " ");

      Console.WriteLine();
   }
}


Выполнение этой программы приводит к следующему результату:
   Число: 1908
   Число словами: один девять нуль восемь

В данной программе использован массив строк digits для хранения словесных эквивалентов цифр от 0 до 9. По ходу выполнения программы целое число преобразуется в слова. Для этого сначала получаются отдельные цифры числа, а затем они сохраняются в обратном порядке следования в массиве п типа int. После этого выполняется циклический опрос массива п в обратно