各位高手:
     我是一只小小鸟!刚刚才学C#五天!现在有个问题了想请教一下哈!
     先看一下我这个程序吧
      using System;
class test
{
static public void  Main()
{
int alltime;
int flag;
Console.WriteLine("请输入一个二十四小时制的时间整数:");
alltime=(int)Console.ReadLine();
Console.Write("按十二小时制现在是");
if (alltime<=12)
Console.WriteLine("上午"+alltime+"点整!");
else if(alltime>12&&alltime<=24)
Console.WriteLine("下午"+alltime-12+"点整!");
else
Console.WriteLine("你输入的时间错误!");
Console.WriteLine("请选择输入上午或者下午!上午请输入0,下午请输入数字1!");
flag=(int)Console.ReadLine();
Console.WriteLine("请输入一个十二小时制的时间整数:");
alltime=(int)Console.ReadLine();
if(alltime>=0&&alltime<=12)
Console.WriteLine("按二十四小时制现在是"+(12*flag+alltime)+"点整!");
else
Console.WriteLine("输入时间错误!");
}
}运行之后它这样报错
D:\ASP.NET源代码\C#学习\我的C#项目\2\class2.cs(20): 无法将类型“string”转换为“int”
D:\ASP.NET源代码\C#学习\我的C#项目\2\class2.cs(18): 无法将类型“string”转换为“int”
D:\ASP.NET源代码\C#学习\我的C#项目\2\class2.cs(9): 无法将类型“string”转换为“int”
D:\ASP.NET源代码\C#学习\我的C#项目\2\class2.cs(14): 运算符“-”无法应用于“string”和“int”类型的操作数
我想问一下怎么直接可以输入整型而不是字符型啊?
急啊!望高手们指点一二啊!
拜谢了!

解决方案 »

  1.   

    后台转换一下就行了
    int.Parse(string)
      

  2.   

    int alltime;
                int flag;
                Console.WriteLine("请输入一个二十四小时制的时间整数:");
                alltime=Convert.ToInt32(Console.ReadLine());
                Console.Write("按十二小时制现在是");
                if (alltime<=12)
                    Console.WriteLine("上午"+alltime+"点整!");
                else if(alltime>12&&alltime<=24)
                    Console.WriteLine("下午"+ (alltime-12)+"点整!");
                else
                    Console.WriteLine("你输入的时间错误!");
                Console.WriteLine("请选择输入上午或者下午!上午请输入0,下午请输入数字1!");
                flag=Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("请输入一个十二小时制的时间整数:");
                alltime=Convert.ToInt32(Console.ReadLine());
                if(alltime>=0&&alltime<=12)
                    Console.WriteLine("按二十四小时制现在是"+(12*flag+alltime)+"点整!");
                else
                    Console.WriteLine("输入时间错误!");
      

  3.   

    using System;
    class test
    {
    public static void  Main()
    {
    int alltime;
    int flag;
    Console.WriteLine("请输入一个二十四小时制的时间整数:");
    alltime=int.Parse(Console.ReadLine());
    Console.Write("按十二小时制现在是");
    if (alltime<=12)
    Console.WriteLine("上午"+alltime+"点整!");
    else if(alltime>12&&alltime<=24)
    Console.WriteLine("下午"+alltime-12+"点整!");
    else
    Console.WriteLine("你输入的时间错误!");
    Console.WriteLine("请选择输入上午或者下午!上午请输入0,下午请输入数字1!");
    flag=int.Parse(Console.ReadLine());
    Console.WriteLine("请输入一个十二小时制的时间整数:");
    alltime=int.Parse(Console.ReadLine());
    if(alltime>=0&&alltime<=12)
    Console.WriteLine("按二十四小时制现在是"+(12*flag+alltime)+"点整!");
    else
    Console.WriteLine("输入时间错误!");
    }
    }