我才学C#没错久  一直弄不清浮点数的用法
下面是我编的程序  大部分是int数据   可以帮我弄成全为浮点数的运算 吗???  有点长  +100using System;class shap
{
protected int x,y;

public void set(int x,int y)
{
this.x=x;
this.y=y;
}    public void set()
{
x=int.Parse(Console.ReadLine());
y=int.Parse(Console.ReadLine());
} public int volume()
{
return 0;
}


public int area()
{
return 0;
} public  String getName()
{
return "形状";
}
}class Point : shap
{
    public new String getName()
    {
        return "点";
    }
}class Rectangle : Point 
{
    
    public new void set()
{
        Console.Write("输入长方形的长:");
x=int.Parse(Console.ReadLine());
        Console.Write("输入长方形的宽:");
y=int.Parse(Console.ReadLine());
        Console.Write("\n\n");
}    public new int area()
{
return x*y;
}    public new String getName()
{
return "长方形";
}
}class Ellipse : Rectangle
{
    protected double PI = 3.14;
                        
    public new void set()
{
        Console.Write("输入椭圆的长半轴:");
x=int.Parse(Console.ReadLine());
        Console.Write("输入椭圆的短半轴:");
y=int.Parse(Console.ReadLine());
        Console.Write("\n\n");
}    public new double area()
    {
        return PI*x*y;
    }    public new String getName()
    {
        return "椭圆";
    }
}class Circle : Ellipse
{
    public new void set()
    {
        Console.Write("输入的圆半径:");
        this.x = int.Parse(Console.ReadLine());
        Console.Write("\n\n");
    }    public new double area()
    {
        return PI * x * x;
    }    public new String getName()
    {
        return "圆";
    }
}class Cylinder : Circle
{    public new void set()
{
        Console.Write("输入圆柱体的半径:");
        x=int.Parse(Console.ReadLine());
        Console.Write("输入圆柱体的半高:");
        y=int.Parse(Console.ReadLine());
        Console.Write("\n\n");
}    public new double volume()
    {
        return PI * x * x * y;
    }    public new double area()
    {
        return PI * x * x * 2 + 2 * PI * x * y;
    }    public new String getName()
    {
        return "圆柱体";
    }
}class Test
{
    public void ShowShapinfo()
    {
        int f=0;
        while (f == 0)
        {
            f = 1;
            int a = 0, l = 0;
            while (l == 0)
            {
                l = 1;
                Console.Write("\n\n================================================================================\n\n请选择:\n\n1: 点\n\n2: 长方形\n\n3: 椭圆\n\n4: 圆\n\n5: 圆柱体\n\n请输入:");
                if (!int.TryParse(Console.ReadLine(), out a))
                {
                    Console.Clear();
                    Console.Write("\n\n错误!!\n");
                    l = 0;
                }
            }            Console.Clear();            switch (a)
            {                case 1:
                    {
                        Point p = new Point();
                        Console.Write("\n\n");
                        Console.WriteLine(p.getName());                    }                    break;                case 2:
                    {
                        Rectangle r = new Rectangle();
                        r.set();
                        Console.WriteLine(r.getName());
                        Console.Write("面积:");
                        Console.WriteLine(r.area());                    }
                    break;                case 3:
                    {
                        Ellipse tc = new Ellipse();
                        tc.set();
                        Console.WriteLine(tc.getName());
                        Console.Write("面积:");
                        Console.WriteLine(tc.area());                    }
                    break;                case 4:
                    {
                        Circle c = new Circle();
                        c.set();
                        Console.WriteLine(c.getName());
                        Console.Write("面积:");
                        Console.WriteLine(c.area());                    }
                    break;                case 5:
                    {
                        Cylinder czt = new Cylinder();
                        czt.set();
                        Console.WriteLine(czt.getName());
                        Console.Write("表面积:");
                        Console.WriteLine(czt.area());
                        Console.Write("体积:");
                        Console.WriteLine(czt.volume());                    }
                    break;                default:
                    {
                        Console.WriteLine("\n\n错误!");
                        f = 0;
                    }
                    break;
            }
        }
    }
    
    
    public int disp_menu()
    {
        int n = 0,f=0;
        while (f == 0)
        {
            f = 1;
            Console.Write("\n\n================================================================================\n\n请选择:\n\n1: 处理图形\n\n2: 退出\n\n请输入:");
            if (!int.TryParse(Console.ReadLine(), out n))
            {
                Console.Clear();
                Console.Write("\n\n错误!!");
                f = 0;
            }
        }        Console.Clear();
        return n;
    }
    static void Main(string[] args)
    {
        Test m = new Test();
        int menu = m.disp_menu();
        while (menu != 2)            if (menu == 1)
            {
                m.ShowShapinfo();
                menu = m.disp_menu();
            }
            else
            {
                Console.Write("\n\n错误!!");
                menu = m.disp_menu();
            }    }
}

解决方案 »

  1.   

    using System;
    using System.Collections.Generic;
    using System.Text;namespace CSDNQuestion
    {
        class shap
        {
            protected float x, y;        public void set(float x, float y)
            {
                this.x = x;
                this.y = y;
            }        public void set()
            {
                x = float.Parse(Console.ReadLine());
                y = float.Parse(Console.ReadLine());
            }        public float volume()
            {
                return 0;
            }
            public float area()
            {
                return 0;
            }        public String getName()
            {
                return "形状";
            }
        }    class Point : shap
        {
            public new String getName()
            {
                return "点";
            }
        }    class Rectangle : Point
        {        public new void set()
            {
                Console.Write("输入长方形的长:");
                x = float.Parse(Console.ReadLine());
                Console.Write("输入长方形的宽:");
                y = float.Parse(Console.ReadLine());
                Console.Write("\n\n");
            }        public new float area()
            {
                return x * y;
            }        public new String getName()
            {
                return "长方形";
            }
        }    class Ellipse : Rectangle
        {
            protected double PI = 3.14;        public new void set()
            {
                Console.Write("输入椭圆的长半轴:");
                x = float.Parse(Console.ReadLine());
                Console.Write("输入椭圆的短半轴:");
                y = float.Parse(Console.ReadLine());
                Console.Write("\n\n");
            }        public new double area()
            {
                return PI * x * y;
            }        public new String getName()
            {
                return "椭圆";
            }
        }    class Circle : Ellipse
        {
            public new void set()
            {
                Console.Write("输入的圆半径:");
                this.x = float.Parse(Console.ReadLine());
                Console.Write("\n\n");
            }        public new double area()
            {
                return PI * x * x;
            }        public new String getName()
            {
                return "圆";
            }
        }    class Cylinder : Circle
        {        public new void set()
            {
                Console.Write("输入圆柱体的半径:");
                x = float.Parse(Console.ReadLine());
                Console.Write("输入圆柱体的半高:");
                y = float.Parse(Console.ReadLine());
                Console.Write("\n\n");
            }        public new double volume()
            {
                return PI * x * x * y;
            }        public new double area()
            {
                return PI * x * x * 2 + 2 * PI * x * y;
            }        public new String getName()
            {
                return "圆柱体";
            }
        }    class Test
        {
            public void ShowShapinfo()
            {
                float f = 0.0f;
                while (f == 0)
                {
                    f = 1;
                    int a = 0, l = 0;
                    while (l == 0)
                    {
                        l = 1;
                        Console.Write("\n\n================================================================================\n\n请选择:\n\n1: 点\n\n2: 长方形\n\n3: 椭圆\n\n4: 圆\n\n5: 圆柱体\n\n请输入:");
                        if (!int.TryParse(Console.ReadLine(), out a))
                        {
                            Console.Clear();
                            Console.Write("\n\n错误!!\n");
                            l = 0;
                        }
                    }                Console.Clear();                switch (a)
                    {                    case 1:
                            {
                                Point p = new Point();
                                Console.Write("\n\n");
                                Console.WriteLine(p.getName());                        }                        break;                    case 2:
                            {
                                Rectangle r = new Rectangle();
                                r.set();
                                Console.WriteLine(r.getName());
                                Console.Write("面积:");
                                Console.WriteLine(r.area());                        }
                            break;                    case 3:
                            {
                                Ellipse tc = new Ellipse();
                                tc.set();
                                Console.WriteLine(tc.getName());
                                Console.Write("面积:");
                                Console.WriteLine(tc.area());                        }
                            break;                    case 4:
                            {
                                Circle c = new Circle();
                                c.set();
                                Console.WriteLine(c.getName());
                                Console.Write("面积:");
                                Console.WriteLine(c.area());                        }
                            break;                    case 5:
                            {
                                Cylinder czt = new Cylinder();
                                czt.set();
                                Console.WriteLine(czt.getName());
                                Console.Write("表面积:");
                                Console.WriteLine(czt.area());
                                Console.Write("体积:");
                                Console.WriteLine(czt.volume());                        }
                            break;                    default:
                            {
                                Console.WriteLine("\n\n错误!");
                                f = 0;
                            }
                            break;
                    }
                }
            }
            public int disp_menu()
            {
                int n = 0, f = 0;
                while (f == 0)
                {
                    f = 1;
                    Console.Write("\n\n================================================================================\n\n请选择:\n\n1: 处理图形\n\n2: 退出\n\n请输入:");
                    if (!int.TryParse(Console.ReadLine(), out n))
                    {
                        Console.Clear();
                        Console.Write("\n\n错误!!");
                        f = 0;
                    }
                }            Console.Clear();
                return n;
            }
            static void Main(string[] args)
            {
                Test m = new Test();
                int menu = m.disp_menu();
                while (menu != 2)                if (menu == 1)
                    {
                        m.ShowShapinfo();
                        menu = m.disp_menu();
                    }
                    else
                    {
                        Console.Write("\n\n错误!!");
                        menu = m.disp_menu();
                    }        }
        }
    }