回 帖 发 新 帖 刷新版面

主题:24时制与12时制转换问题?

DX门,本人初学C#,语法方面几乎茫然。做到第2章练习题要求24时制与12时制转换,以下是本人写的。编译不过去。还请高手指点。
using System;

namespace timeConvert
{
    /// <summary>
    /// Class1 的摘要说明。
    /// </summary>
    class Class1
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        void To12(char[] str)
        {
            string result;
            result=str.ToString();//字符数组转成字符串,估计错了
            Console.WriteLine("Your enter is:{0} ",str);
            if((str[0]-'0')*10+(str[1]-'0')>12)  //下午时差计算
            {
                int time=((str[0]-'0')*10+(str[1]-'0'))%12;
                result=time.ToString();
                for(int i=2;i<str.GetLength();i++)
                    result+=str[i];
            }
            Console.WriteLine("Convert result is:{0}",result);
        }
        static void Main(string[] args)
        {
            Console.WriteLine("1----24 convert to 12");
            Console.WriteLine("2----12 convert to 24");
            Console.Write("Please choose:");
            int n=Console.Read(); 
            char[] str=new char[20];
            str=System.Console.ReadLine(); //获得输入;如何将其转成字符数组类型?
            if(n==1)
            To12(str);
            else
            //To24(str);
            
            
        }
    }
}

由于本题解法较多,为了学习它的语法。本人上面中文标记地方请DX们使用我的方法转。谢谢了!

回复列表 (共1个回复)

沙发

将string转化为char[] 可以使用string.ToCharArray()方法。
Main()作为static函数,它所调用的函数必须为static,所以void To12(char[] str)应当为static void To12(char[] str)

我来回复

您尚未登录,请登录后再回复。点此登录或注册