-4

Main()メソッドで firstInt、middleInt、および lastInt という名前の 3 つの整数を宣言しようとしています。そして、それらの値を変数に割り当てて表示し、それらを参照変数として受け入れるメソッドに渡し、最初の値を lastInt 変数に配置し、最後の値を firstInt 変数に配置します。Main()メソッドで 3 つの変数を再度表示し、それらの位置が逆になっていることを示します。

static void Main(string[] args)
{

    int first = 33;
    int middle = 44;
    int last = 55;

    Console.WriteLine("Before the swap the first number is {0}", first);
    Console.WriteLine("Before the swap the middle number is {0}", middle);
    Console.WriteLine("Before the swap the last number is {0}", last);

    Swap(ref first, ref middle, ref last);
    Console.WriteLine("\n============AFTER===THE===SWAP======================");
    Console.WriteLine("After the swap the first is {0}", first);
    Console.WriteLine("After the swap the middle is {0}", middle);
    Console.WriteLine("After the swap the last is {0}", last);
}

private static void Swap(ref int first, ref int middle, ref int last);

   int temp;
    temp = firstInt;
    firstInt = lastInt;
    lastInt = temp;

   }
}
4

4 に答える 4

3

これが問題です:

private static void Swap(ref int first, ref int middle, ref int last);

   int temp;
    temp = firstInt;
    firstInt = lastInt;
    lastInt = temp;

   }

;method のパラメーター リストの後にa がありますがSwap、それは{(中かっこ)である必要があります。

private static void Swap(ref int first, ref int middle, ref int last)
{

    int temp;
    temp = firstInt;
    firstInt = lastInt;
    lastInt = temp;
}

あなたのコードは、「型または名前空間の定義、またはファイルの終わりが必要です」を生成します。エラー。

編集

他の人が指摘しているように、変数名も間違っています-それはfirstmiddleandlastである必要があるため、メソッド全体は次のようになります。

private static void Swap(ref int first, ref int middle, ref int last)
{

    int temp;
    temp = first;
    first = last;
    last = temp;
}
于 2013-09-03T05:09:10.623 に答える
1

firstfirstInt、 、lastの間で混同されましたlastInt:

private static void Swap(ref int first, ref int middle, ref int last){
 int temp = first;
 first = last;
 last = temp;
}
于 2013-09-03T05:08:49.467 に答える
0

または、いくつかの XOR スワッピングの利点 (temp 変数なし):

private static void Swap(ref int first, ref int middle, ref int last) {
    first ^= last;
    last ^= first;
    first ^= last;
}
于 2013-09-03T05:21:22.610 に答える