У меня есть код на C#. Я пытаюсь создать список имен столбцов в электронной таблице. В электронной таблице ячейки перечислены слева направо, начиная с буквы «А» и переходя к чему-то вроде «ABC». Я пытаюсь динамически генерировать имена ячеек в списке:C# - Создание списка таблиц Имена столбцов
var cells = new List<string>();
for (var i=1; i<=5; i++)
{
for (var j = 0; j < 26; j++)
{
var column = "";
for (var k=0; k < i; k++)
{
char letter = Convert.ToChar(j + (int)'A');
column = column + letter;
}
cells.Add(column);
}
}
К сожалению, мой подход не работает. Как только я прохожу мимо «Z», я сразу вижу «AA», «BB», «CC», ... Его еще не перебирает алфавит. Что я делаю не так? Я продолжаю смотреть на него, и это выглядит правильно для меня. Любая помощь приветствуется.
Логика, как представляется, «столько раз, сколько' k' цикл выполняется, добавить текущую букву», которая могла бы объяснить его Это не совсем понятно, что вы ожидаете от выхода? AA AB AC? – stuartd
Если это поможет, вы можете заменить цикл 'j' на' foreach (char letter в «ABCDEFGHIJKLMNOPQRSTUVWXYZ») ' – stuartd