Что сделать чтобы выводилась буква "ё" после "е"? using System; namespace test { class Program { static void Main(string[] args) { int i, n = 32; char[] ch = new char[n]; for (i = 0; i < n; i++) { ch[i] = Convert.ToChar('а' + i); Console.Write(ch[i]); Console.Write(" "); } } } } C# using System; namespace test { class Program { static void Main(string[] args) { int i, n = 32; char[] ch = new char[n]; for (i = 0; i < n; i++) { ch[i] = Convert.ToChar('а' + i); Console.Write(ch[i]); Console.Write(" "); } } } }
В таком виде как ты написал - никак: юникод номер буквы ё - U+0451 и соответственно она дальше чем я - U+044f Если напишешь зачем тебе это нужно, то можем подумать над аккуратным решением
JMS_inactive5224951, Для себя я бы сделал так (если это будет использоваться именно как char[], поэтому я и спросил зачем нужно): using System; using System.Linq; public class Program { private static readonly char[] RussianAlphabetLowercaseLetters = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя".ToArray(); public static void Main(string[] args) { foreach (var letter in RussianAlphabetLowercaseLetters) { Console.Write(letter); Console.Write(" "); } } } C# using System; using System.Linq; public class Program { private static readonly char[] RussianAlphabetLowercaseLetters = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя".ToArray(); public static void Main(string[] args) { foreach (var letter in RussianAlphabetLowercaseLetters) { Console.Write(letter); Console.Write(" "); } } } потому что если нужно просто перебрать буквы, то будет еще проще private const string RussianAlphabetLowercaseLetters = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"; C# private const string RussianAlphabetLowercaseLetters = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя";
Как заметил vtlstolyarov , буква ё в юникоде расположена дальше, чем буква я. Если говорить в десятичной системе, то код е - 1077, код я - 1103, а код ё - 1105. Если хочешь сохранить свой принцип с перебором, то можно замутить такой костылёк: class Program { static void Main(string[] args) { int i, n = 32; char[] ch = new char[n]; for (i = 0; i < n; i++) { ch[i] = Convert.ToChar('а' + i); if(ch[i] == 'е') { Console.Write("е ё"); } else { Console.Write(ch[i]); } Console.Write(" "); } } } C# class Program { static void Main(string[] args) { int i, n = 32; char[] ch = new char[n]; for (i = 0; i < n; i++) { ch[i] = Convert.ToChar('а' + i); if(ch[i] == 'е') { Console.Write("е ё"); } else { Console.Write(ch[i]); } Console.Write(" "); } } }