体重诊断法功能需求
要求实现平台:windows2000以上系统,.NetFromeWord2.0,编译环境为Visaul Studio2005开发方式:采用控制台方式开发。代码要求:所有代码写在一个.cs文件,同一个命名空间以及一个类(class)里面,在类里面可以写函数的调用,要求变量命名规范,代码功能注释清楚,以及错误处理,达到程序只提示不报错。功能要求:
1)用户登陆,提示用户输入用户名密码,用户名为:Admin(注意大小写),密码:123,
给用户三次输入失败的机会,每输入失败,提示重新输入,并提示还有几次机会。用户名密码正确则进入系统。2) 登陆成功后,提示用户是否开始自我诊断,选择菜单进入诊断功能或关闭程序。如果输入的不是这两种选择,提示用户输入错误,然后继续等待输入。3)进入诊断功能后,提示用户输入身高,单位为米(M),可以输入小数点。对用户输入的字符做检测,要求只能是数字,身高只能在0.5米和3.0米之间。如果输入不符合要求,继续提示输入身高。身高输入后,提示用户输入体重,单位为公斤(KG),可以输入小数点。对体重的输入做检查,要求只能输入数字,体重只能在20公斤和200公斤之间。如果输入不符合要求,继续提示输入体重。4)体重输入完毕后,计算体重指标,计算公式为
体重指标=体重(公斤) 除 身高(米)的平方   kg/m²5) 判断计算出来的体重指标,显示相应的用户信息
体重偏瘦:体重指标<18
体重正常:体重指标=18  至   25之间
体重超重:体重指标=25  至   30之间
重度肥胖:体重指标=30  至   35之间
重度肥胖:体重指标=35以上6) 显示完诊断信息后,提示用户,是否开始自我诊断,见功能需求 1)。

解决方案 »

  1.   


    using System;namespace Weight
    {
        class Program
        {
            static void Main(string[] args)
            {
                string yesOrNo = string.Empty;
                while (yesOrNo.ToUpper() != "N")
                {
                    int i = 0;
                    while (i < 3)
                    {
                        Console.Write("请输入用户名:");
                        string userName = Console.ReadLine();
                        Console.Write("请输入密码:");
                        string pwd = Console.ReadLine();
                        if (userName != "Admin")
                        {
                            Console.WriteLine("您输入的用户名不正确!");
                            i++;
                            continue;
                        }
                        else if (pwd != "123")
                        {
                            Console.WriteLine("您输入的密码不正确!");
                            i++;
                            continue;
                        }
                        break;
                    }
                    if (i == 3)
                    {
                        Console.WriteLine("您已经累计输入三次,系统将退出");
                        return;
                    }
                    Console.WriteLine("-------------------------------------------------");
                    Console.WriteLine("欢迎进入系统,请选择:");
                    Console.WriteLine("1.进入诊断");
                    Console.WriteLine("2.退出程序");
                    string selection = Console.ReadLine();
                    while (!(selection.Trim() == "1" || selection.Trim() == "2"))
                    {
                        Console.Write("请选择1或2:");
                        selection = Console.ReadLine();
                    }
                    if (selection == "1")
                    {
                        Console.WriteLine("-------------------------------------------------");
                        Console.Write("请输入身高(米):");
                        string heightInput = Console.ReadLine();
                        float height = 0.0F;
                        while (!float.TryParse(heightInput, out height) || !(height >= 0.5 && height <= 3.0))
                        {
                            Console.Write("身高格式不正确,请输入0.5--3.0间的数字:");
                            heightInput = Console.ReadLine();
                        }
                        Console.Write("请输入体重(公斤):");
                        string weightInput = Console.ReadLine();
                        float weight = 0.0F;
                        while (!float.TryParse(weightInput, out weight) || !(weight >= 20 && weight <= 200))
                        {
                            Console.Write("体重格式不正确,请输入20--200间的数字:");
                            weightInput = Console.ReadLine();
                        }
                        float weightIndicators = weight / (height * height);
                        if (weightIndicators > 0 && weightIndicators < 18)
                            Console.WriteLine("您体形偏瘦");
                        else if (weightIndicators >= 18 && weightIndicators < 25)
                            Console.WriteLine("您体重正常");
                        else if (weightIndicators >= 25 && weightIndicators < 30)
                            Console.WriteLine("你体重超重");
                        else if (weightIndicators >= 30 && weightIndicators < 35)
                            Console.WriteLine("您重度肥胖");
                        else if (weightIndicators >= 35)
                            Console.WriteLine("您重度肥胖");
                        Console.WriteLine("-------------------------------------------------");
                        Console.Write("是否开始自我诊断?(Y/N)");
                        yesOrNo = Console.ReadLine();
                        while (!(yesOrNo.ToUpper() == "Y" || yesOrNo.ToUpper() == "N"))
                            Console.WriteLine("请输入Y/N");
                    }
                    else if (selection == "2")
                        return;
                }
            }
        }
    }
      

  2.   

    我来了!sorry,现在送分了.