Генерация массива букв в алфавите

84
задан weston 25 November 2016 в 13:26
поделиться

9 ответов

Я не думаю, что способом существует созданный, но я думаю, что самое легкое было бы

  char[] alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".ToCharArray();
182
ответ дан Bob 24 November 2019 в 08:23
поделиться

C# 3.0:

char[] az = Enumerable.Range('a', 'z' - 'a' + 1).Select(i => (Char)i).ToArray();
foreach (var c in az)
{
    Console.WriteLine(c);
}

да это действительно работает даже если единственная перегрузка Счетных. Диапазон принимает международные параметры;-)

98
ответ дан Pop Catalin 24 November 2019 в 08:23
поделиться

Принятие Вас означает буквы английского алфавита...

    for ( int i = 0; i < 26; i++ )
    {
        Console.WriteLine( Convert.ToChar( i + 65 ) );
    }
    Console.WriteLine( "Press any key to continue." );
    Console.ReadKey();
13
ответ дан rp. 24 November 2019 в 08:23
поделиться

Вы могли сделать что-то вроде этого, на основе значений ASCII символов:

char[26] alphabet;

for(int i = 0; i <26; i++)
{
     alphabet[i] = (char)(i+65); //65 is the offset for capital A in the ascaii table
}

(См. таблицу здесь .) Вы просто бросаете от международного значения символа к символьному значению - но, это только работает на символы ASCII не различные языки и т.д.

РЕДАКТИРОВАНИЕ: , Как предложено Mehrdad в комментарии к аналогичному решению, лучше сделать это:

alphabet[i] = (char)(i+(int)('A'));

Это бросает символ к, он - международное значение и затем увеличивает на основе этого, таким образом, это не hardcoded.

6
ответ дан Community 24 November 2019 в 08:23
поделиться

Отметьте также, строка имеет оператор [], который возвращает Символ и является IEnumerable<char>, таким образом, в большинстве целей, можно использовать строку в качестве символа []. Следовательно:

string alpha = "ABCDEFGHIJKLMNOPQRSTUVQXYZ";
for (int i =0; i < 26; ++i)
{  
     Console.WriteLine(alpha[i]);
}

foreach(char c in alpha)
{  
     Console.WriteLine(c);
}
5
ответ дан James Curran 24 November 2019 в 08:23
поделиться

4 пути получают английский алфавит в Консоли:

public void ShowEnglishAlphabet()
{
    var firstLetter = 'a';
    var endLetter = 'z';
    for (var letter = firstLetter; letter <= endLetter; letter++)
    {
        Console.WriteLine($"{letter}-{letter.ToString().ToUpper()}");
    }
}

public void ShowEnglishAlphabetFromUnicodeTableDecNumber()
{
    var firstLetter = 97;
    var endLetter = 122;
    for (var letterNumberUnicodeTable = firstLetter; 
    letterNumberUnicodeTable <= endLetter; letterNumberUnicodeTable++)
    {
        Console.WriteLine($"{(char)letterNumberUnicodeTable}- 
        {((char)letterNumberUnicodeTable).ToString().ToUpper()}");
    }
}

public void ShowEnglishAlphabetUnicodeTableEscapeSequence()
{
    var firstLetter = '\u0061';
    var endLetter = '\u007A';
    for (var letterNumberUnicodeTable = firstLetter; 
    letterNumberUnicodeTable <= endLetter; letterNumberUnicodeTable++)
    {
        Console.WriteLine($"{letterNumberUnicodeTable}- 
        {letterNumberUnicodeTable.ToString().ToUpper()}");
    }
}   

public void ShowEnglishAlphabetUnicodeTableLinq()
{
    var alphabets = Enumerable.Range('a', 26).Select(letter => 
    ((char)letter).ToString()).ToList();
    foreach (var letter in alphabets)
    {
        Console.WriteLine($"{letter}-{letter.ToUpper()}");
    }
}
0
ответ дан 24 November 2019 в 08:23
поделиться

К сожалению, нет никакого готового к использованию пути.

можно использовать; символ [] символы = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".ToCharArray ();

0
ответ дан 24 November 2019 в 08:23
поделиться
char alphaStart = Char.Parse("A");
char alphaEnd = Char.Parse("Z");
for(char i = alphaStart; i <= alphaEnd; i++) {
    string anchorLetter = i.ToString();
}
0
ответ дан 24 November 2019 в 08:23
поделиться
//generate a list of alphabet using csharp
//this recurcive function will return you
//a string with position of passed int
//say if pass 0 will return A ,1-B,2-C,.....,26-AA,27-AB,....,701-ZZ,702-AAA,703-AAB,...

static string CharacterIncrement(int colCount)
{
    int TempCount = 0;
    string returnCharCount = string.Empty;

    if (colCount <= 25)
    {
        TempCount = colCount;
        char CharCount = Convert.ToChar((Convert.ToInt32('A') + TempCount));
        returnCharCount += CharCount;
        return returnCharCount;
    }
    else
    {
        var rev = 0;

        while (colCount >= 26)
        {
            colCount = colCount - 26;
            rev++;
        }

        returnCharCount += CharacterIncrement(rev-1);
        returnCharCount += CharacterIncrement(colCount);
        return returnCharCount;
    }
}

//--------this loop call this function---------//
int i = 0;
while (i <>
    {
        string CharCount = string.Empty;
        CharCount = CharacterIncrement(i);

        i++;
    }
0
ответ дан 24 November 2019 в 08:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: