比如“Hello,world”显示为“Hwoel,lord”。
就是随机排列。
这个怎么做?

解决方案 »

  1.   

    本帖最后由 caozhy 于 2012-09-11 22:41:59 编辑
      

  2.   

    string s = "Hello World!";
    var sourceSequence = s.Select(x => new { x, y = Guid.NewGuid().ToString() });
    var sourceSequenceList = sourceSequence.ToList();
    var randomSquence = sourceSequenceList.OrderBy(x => x.y);
    IEnumerable<char> resultsequence = randomSquence.Select(x => x.x);
    char[] resultArray = resultsequence.ToArray();
    string result = new string(resultArray);
    Console.WriteLine(result);
      

  3.   

              string s = Console.ReadLine();                      
                int cAt = 0;
                char[] st = new char[s.Length];
                foreach (char c in s)
                {
                    st[cAt] = c;
                    cAt++;
                }
                int pointer = s.Length;
                string result = "";
                Random r = new Random();
                cAt = 0;
                while (pointer > 0)
                {
                    cAt = r.Next(pointer);
                    result += st[cAt];
                    st[cAt] = st[pointer - 1];
                    pointer--;
                }
                Console.WriteLine(result);没看懂8楼的,我自己写了个。
      

  4.   

    其实不用这么麻烦的。            string s = "Hello World!";
                var result = s.OrderBy(x => Guid.NewGuid()).ToArray(); // 按一个随机值排序后组合成数组
                Console.WriteLine(result);