字母表字符串代码,循环

时间:2014-11-14 17:16:09

标签: string loops alphabet

所以我需要完成这个程序,要求用户输入一个单词,然后他需要将其写回“加密”,仅限于数字。
所以a是1,b是2 ...
例如,如果我给出“坏”这个词,它应该回到“2 1 4”。
我制作的节目似乎总是只为这个单词的第一个字母做。我需要帮助的问题是,为什么这个程序在第一个字母后停止循环?我是在做对吗还是完全关闭?
任何帮助都会非常感激。

        Console.Write("Please, type in a word: "); 
        string start = Console.ReadLine();

        string alphabet = "abcdefghijklmnopqrstuvwxyz";

        for (int c = 0; c < alphabet.Length; c++)
        {
            int a = 0;

            if (start[a] == alphabet[c])
            {
                Console.Write(c + 1);
                a++;
                continue;
            }
            if (start[a] != alphabet[c])
            { 
                a++;
                continue;
            }

        }

1 个答案:

答案 0 :(得分:1)

我用嵌套循环完成了它:

Console.Write("Please, type in a word: ");
string start = Console.ReadLine();

string alphabet = "abcdefghijklmnopqrstuvwxyz";

for (int a = 0; a < start.Length; a++)
{
    for (int c = 0; c < alphabet.Length; c++)
    {
        if (start[a] == alphabet[c])
        {
            Console.Write(c + 1);
        }
    }
}

在比较字符串时,至少在我看来,循环使用它们是有意义的。

您的程序在第一个字母后停止,因为您在每个循环开始时将“a”重置为0.