-1

私が C で書いたプログラムがあり、完璧に動作します。それを言語 C# に翻訳しようとすると、コンパイルされませんでした。scanf ("%19s" , string1);問題は、C# が C のlikeの意味を知らないことでした。私は次のよう
に変更scanfしました。

string read;
do
{
     read = Console.ReadLine();
}
while (read.Length <= 19); 

正常に動作しませんでした。それから私は試しました:それを次のように変更します:

string string1Input = Console.ReadLine();

うまく機能していましたがif、すべての「合計」が 0 に等しくなっていたため、ステートメントはチェックされませんでした。

これは、C# に翻訳されて書かれたプログラムです。

public static class GlobalMembersAnbanisRicxvitiMnishvneloba
{
    static int Main()
    {
        string string1 = new string(new char[20]);   
        sbyte a = (sbyte)'a';
        sbyte b = (sbyte)'b';
        sbyte g = (sbyte)'g';
        sbyte X = (sbyte)'X';
        sbyte i = (sbyte)'i';
        sbyte H = (sbyte)'H';
        sbyte V = (sbyte)'V';
        etc..

        int rigi;
        int sum = 0;
        int sum2 = 0;
        int sum3 = 0;

        Console.Write(" my word is:\n");

        string string1Input = Console.ReadLine();

        for (rigi = 0; string1[rigi] != '\0'; rigi++)
        {
            if (string1[rigi] == a)
            {
                sum3 = sum3 + 1;
                sum2 = sum2 + 1;
                sum = sum + 1;
            }
            else
            if (string1[rigi] == b)
            {
                sum3 = sum3 + 3;
                sum2 = sum2 + 2;
                sum = sum + 2;
            }


               etc...
            } /* end for*/
    if (string1[rigi-1]==i) 
{
 sum=sum-10; sum2=sum2-10; sum3=sum3-55;
}
            Console.Write("sum is:");
            Console.Write("{0:D}\n", sum);
            Console.Write("sum2 is:");
            Console.Write("{0:D}\n", sum2);
            Console.Write("sum");
            Console.Write("{0:D}\n", sum3);
            return 0;
        }
    }

プログラムの考え方は次のとおりです。
プログラムは、入力する単語の各文字に数値的な意味を与え、この数値を互いに加算します。

問題Ⅱ:作り方

 if (string1[rigi-1]==i) 
    {
     sum=sum-10; sum2=sum2-10; sum3=sum3-55;
    } 

仕事?

4

1 に答える 1