C# while 循环与 for 循环类似,但是 while 循环一般适用于不固定次数的循环。

while 循环的语法形式如下。

while(布尔表达式)
{
    语句块;
}

while 语句执行的过程是,当 while 中布尔表达式的结果为 True 时,执行语句块中的内容,否则不执行。通常使用 for 循环可以操作的语句都可以使用 while 循环完成。

C# do while 循环可以说是上一节 C# while循环的另一个版本,与 while 循环最大的区别是它至少会执行一次。

具体的语法形式如下。

do
{
    语句块;
}while(布尔表达式);

do while 语句执行的过程是,先执行 do{} 中语句块的内容,再判断 while() 中布尔表达式的值是否为 True,如果为 True,则继续执行语句块中的内容,否则不执行,因此 do while 语句中的语句块至少会执行一次。

using System; 
 
namespace KingTest03 
{ 
    class Program 
    { 
        static void Main(string[] args) 
        { 
            Program program = new Program(); 
            program.Sum1(); 
            Console.WriteLine(); 
            Console.WriteLine("while和Do While的区别如下"); 
            program.while1(); 
            program.while2(); 
        } 
        public void Sum1()//计算1到100的和 
        { 
            int a1 = 1; 
            int sum1 = 0; 
            while (a1 <= 100) 
            { 
                if (a1 < 100) 
                { 
                    sum1 = sum1 + a1; 
                    Console.Write(a1 + "+"); 
                    a1++; 
                } 
                else 
                { 
                    sum1 = sum1 + a1; 
                    Console.Write(a1 + "="); 
                    a1++; 
                } 
            } 
            Console.Write(sum1); 
        } 
        public void while1()//先去判断条件,再执行表达式 
        { 
            Console.WriteLine("请输入一个整数"); 
            int i = int.Parse(Console.ReadLine()); 
            int j = 1; 
            while (i < j) 
            { 
                Console.WriteLine(i); 
                break; 
            } 
        } 
        public void while2()//先执行表达式,再去判断条件 
        { 
            Console.WriteLine("请输入一个整数"); 
            int i = int.Parse(Console.ReadLine()); 
            int j = 1; 
            do 
            { 
                Console.WriteLine(i); 
                break; 
            } while (i < j); 
        } 
    } 
}

 下例是简单的wthile/IF的综合应用

using System; 
namespace _LEARN 
{ 
    class CLASS1 
    { 
        static void Main() 
        { 
            Console.WriteLine("请帮机器人起个名字"); 
            string name = Console.ReadLine(); 
            Console.WriteLine("请帮机器人设定年龄"); 
            int age = Convert.ToInt32(Console.ReadLine()); 
            bool EXIT = false; 
            Console.WriteLine("你有什么要问我的吗?"); 
            while (!EXIT) 
            { 
                String INPUT = Console.ReadLine(); 
                if (INPUT.Contains("修改姓名")) 
                { 
                    Console.WriteLine("请输入新的名字"); 
                    name = Console.ReadLine(); 
                    Console.WriteLine("我的新名字是{0}", name); 
                } 
                else if (INPUT.Contains("修改年龄")) 
                { 
                    Console.WriteLine("请输入新的年龄"); 
                    age = Convert.ToInt32(Console.ReadLine()); 
                    Console.WriteLine("我的新年龄是{0}", age); 
                } 
                else if (INPUT.Contains("")) 
                { 
                    Console.WriteLine("我今年{0}岁了", age); 
                } 
                else if (INPUT.Contains("") | INPUT.Contains("")) 
                { 
                    Console.WriteLine("我是美男子"); 
                } 
                else if (INPUT.Contains("") | INPUT.Contains("")) 
                { 
                    Console.WriteLine("我叫{0}", name); 
                } 
                else if (INPUT.Contains("再见")) 
                { 
                    Console.WriteLine("你好,我即将离开你"); 
                    EXIT = true; 
                } 
                else 
                { 
                    Console.WriteLine("我不知道你在说什么!!!"); 
                } 
            } 
            Console.WriteLine("倒数开始"); 
            Console.WriteLine("3"); 
            Console.WriteLine("2"); 
            Console.WriteLine("1"); 
            Console.WriteLine("机器人已经下线,请按任意键退出!"); 
        } 
    } 
 
}


评论关闭
IT干货网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

C#上手练习2(FOR语句)