输入一段英文,英文字母变为其后的第5个字母,例如A变为F,B变为G,......Z变为E
怎么实现,小弟第一次接触不知道怎么编写代码,先谢谢了。

解决方案 »

  1.   

    字母直接加5就OK,程序编译的是采用ASCII码进行的
      

  2.   


                Console.Write("输入字符串");
                string str = Console.ReadLine();
                char[] cs = str.ToCharArray();
                for (int i = 0; i < cs.Length; i++)
                    cs[i] = (char)((int)cs[i] + 5);
                Console.WriteLine(new string(cs));
      

  3.   

    static void Main(string[] args)
            {
                string str = "auV22C";
                string pattern = @"^[A-Za-z]+$";
                char[] cs = str.ToCharArray();
                for (int i = 0; i < cs.Length; i++)
                {
                    cs[i] = (char)((int)cs[i] + 5);
                    if (Regex.IsMatch(cs[i].ToString(), pattern))
                    {
                        Console.Write(((char)((int)cs[i] - 5)).ToString());
                    }
                }
                Console.Read();
            }
      

  4.   

    告诉你一个比较容易理解的方法
    定义好数组strin [] ar={'a','b','c','d','e','f',..........}
    string str="";
    int ii=0;
    for(int i=0;i<ar.Lenth;i++)
    {
      ii=i+5;
      if(ii<ar.Length)
       {
        str=ar[ii];
       }
       else
        {
        str=ar[ii-ar.Length]; 
        }}
      

  5.   

    只有字母(包括大小写)变,其他字符(数字等)不变。
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;namespace Countstring
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("请输入您要变换的字符串:");
                string s = Console.ReadLine();            Console.WriteLine("变换后的字符串如下:");            for (int i = 0; i < s.Length; i++)
                {
                 
                        if ((s[i] >= 65 && s[i] <= 85 )|| (s[i] >=97 &&s[i] <= 117))
                        {
                             Console.Write("{0}", (char)((int)s[i]+5));
                        }
                        else if ((s[i] > 85 && s[i] <= 90) || (s[i] > 117 && s[i] <= 122))
                        {
                            Console.Write("{0}", (char)((int)s[i]-21));
                        }
                        else
                        {
                            Console.Write("{0}", s[i]);
                        }   
                }
                Console.WriteLine("\n");        }
        }
    }【原创家庭记账簿1.2.5,简单实用,通俗易懂,欢迎工薪阶层、家庭主妇下载使用 http://download.csdn.net/source/1900400】
      

  6.   

    唉...如此简单的逻辑,本来懒得回答...实在看不下去了,楼主是个学生也就罢了,你们又是正则又是异常的...
    public static char change(char c, char start, char end, int offset)
    {
    if (c < start || c > end)
    return '?';
    if (c < end - offset - 1)
    return (char)(c + offset);
    else
    return (char)(c - (end - start) + offset - 1);
    }
    string input = Console.ReadLine();
    List<char> o = new List<char>();
    foreach (char item in input)
    o.Add(change(item, 'A', 'z', 5));
    Console.WriteLine(new string(o.ToArray()));