大家好!我是一个C#的新手。在写一个小程序(将输入的字符按倒序输出)时,实际运行的结果却不是自己想像的结果。请各位大侠指点指点,谢谢。源码如下:/*******************************************
 * 将输入的字符按倒序输出
 * ****************************************/
using System;
using System.Collections.Generic;
using System.Text;namespace Cho5Ex_5_
{
    class Program
    {
        static void Main(string[] args)
        {
            string myString;
            Console.WriteLine("请输入一个字符串:");
            myString = Console.ReadLine();
            int myStringLength = myString.Length;      //获取字符串的长度
            string myString1 = myString;
            char [] stringArray = myString.ToCharArray();       //存放字符串中的每个元素
            //将字符串中的每个字符进行替换
            for (int stringLength = 1; stringLength <= myStringLength; stringLength++)
            {
                myString1 = myString1.Replace(stringArray[stringLength - 1], stringArray[myStringLength - stringLength]);
                Console.WriteLine(myString1);
                Console.WriteLine(stringArray[stringLength - 1]);
            }           
                Console.ReadKey();
        }
    }
}

解决方案 »

  1.   

     Array.Reverse(stringArray);或则你直接到这循环
          
      

  2.   

    static public string Reverse( string s )
    {
        char[] charArray = s.ToCharArray();
        Array.Reverse( charArray );
        return new string( charArray );
    }
      

  3.   

    如果你输入的字符串中有重复字符,那在
    myString1 = myString1.Replace(stringArray[stringLength - 1], stringArray[myStringLength - stringLength]);
    这步有问题。其实你直接
    for (int i =myStringLength-1;i>=0;i-- )
    {
    Console.WriteLine(stringArray[i]);
    }
    不就行了??
      

  4.   

    Bug是你使用了string.Replace。
    Replace是把一个字符串里的所有的某一字符替换成新字符,而不是替换一个。例如,当你输入 12345 循环到最后一步时 字符串为: 54325,这里你本意是想把最后一个5换成1,结果,第1个5和最后一个5都换成1了。
      

  5.   


    string input = Console.ReadLine();StringBuilder sb = new StringBuilder();
    for (int i = input.Length - 1; i >= 0; i--)
    {
        sb.Append(input[i]);
    }
    Console.WriteLine(sb.ToString());
    Console.ReadKey();
      

  6.   


    我晕,Sb没有Reverse,太低级了