C#上手练习3(while、do while语句)(添加机器人聊天)
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("机器人已经下线,请按任意键退出!"); } } }