C#基础之While语句

问题:不断要求用户不断输入一个数字,当用户输入end的时候。显示高才输入的所有数字中最大的数字值。 这个问题想了很久还是没有解决出来,现在把它记录下来,待解决的时候在吧答案贴出来,可恨的是小可想了整整两天了。。。悲催的娃啊。。。 从昨天到今天想了一天的办法都没搞出来,看来我的这个脑子啊,真的是不灵光。还好。终于找到答案了。琢磨琢磨,都把自己的错误代码贴上来吧,做一个笔记。

===================================================================================================================

 

===================================================================================================================

下面是我的所有代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace E5
{
    class Program
    {
        static void Main(string[] args)
        {
            不断要求用户不断输入一个数字,当用户输入end的时候。显示高才输入的所有数字中最大的数字值。
            //    string i;
            //    do//不断提示用户输入一个数字。
            //    {
            //        Console.WriteLine("请输入一个数字:");
            //        i = Console.ReadLine();
            //    }
            //    while (i != "end");
            //    if (i == "end")
            //    {
            //        int s = Convert.ToInt32(i);
            //        int count = 0;//定义一个变量count。如果输入的数据s>count,则最大值为s,否则为count
            //        count += s;
            //        Console.WriteLine("你输入的数据是{0}", s);
            //        if (s > count)
            //        {
            //            Console.WriteLine("你输入的最大值是{0}", s);
            //        }
            //        else
            //        {
            //            Console.WriteLine("你输入的最大值是{0}", count);
            //        }

            //    }
            //    else
            //    {
            //        Console.WriteLine("请继续输入一个数据:");
            //        i = Console.ReadLine();
            //        int s = Convert.ToInt32(i);
            //    }
            //    Console.ReadKey();
            //int s = 0;
            while (true)
            {
                Console.WriteLine("请输入一个数字:");
                string i = Console.ReadLine();

                if (i == "q")
                {
                    return;
                }
                else
                {
                    int s = Convert.ToInt32(i);
                    Console.WriteLine("{0}", 2 * s);
                }
            //            string i;
            //            while (true)//不断提示用户输入数字
            //            {
            //                Console.WriteLine("请输入一个数字:");
            //                i = Console.ReadLine();
            //                do
            //                {
            当输入end的时候,这里会提示出现各式转换错误。以为无法将string类型强制转换成int类型
            //                   int max = 0;
            //                    if (Convert.ToInt32(i) > max)
            //                    {
            //                        max +=Convert.ToInt32 ( i);
            //                        Console.WriteLine("你输入的最大值是:{0}", i);
            //                    }
            //                    else
            //                    {
            //                        Console.WriteLine("你输入的最大值是:{0}", max);
            //                    }

            //                }
            //                while(i=="end");
            //            }
            //int s = 0;
            while (true)
            {
                Console.WriteLine("请输入一个数字:");
                string i = Console.ReadLine();

                if (i == "q")
                {
                    return;
                }
                else
                {
                    int s = Convert.ToInt32(i);
                    Console.WriteLine("{0}", 2 * s);
                }

            /* while (true)
             {
                 Console.WriteLine("请输入一个数字字符:");
                 string i = Console.ReadLine();
                 int max = 0;
                 int z;
                 if (i == "end")
                 {
                     //显示所输入的数字的最大值
                     Console.WriteLine("你输入的最大值是{0}",z);
                 }
                 else
                 {  
                     int s = Convert.ToInt32(i);
                     //在这里和max进行比较

                     if (s > max)
                     {
                         z = max;
                     }
                     else
                     {
                         z = s;
                     }
                     Console.WriteLine("你输入的数字是{0}",s);
                 }
             }*/
            不断要求用户不断输入一个数字,当用户输入end的时候。显示高才输入的所有数字中最大的数字值。
            int max = 0;
            while (true)
            {
                Console.WriteLine("请输入一个数字(输入end结束)");
                string n = Console.ReadLine();
                if (n == "end")
                {
                    Console.WriteLine("你刚才输入的最大值是{0}", max);
                    Console.ReadKey();
                    return;//当程序执行到此处的时候,就会自动退出函数。因为在控制台中只有Main一个函数,因此遇到return 的时候就会自动退出程序。
                }
                int s = Convert.ToInt32(n);

                if (s > max)//输入的数都和上一次输入的数据进行了比较。产生的更大的数据被保留了下来,而max的作用就是赋值给这个最大的数s。
                {
                    max = s;
                }

            }
        }
    }
}
s

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值