知识点:while循环、do-while循环、forxufo循环、ach循环的使用。

1、while循环

特点:先判断条件,条件为真,执行循环语句。条件为假,直接结束循环语句。

语法:
while(条件表达式) {        循环语句;//如果条件为真,执行循环语句,如果条件为假,直接结束整个while语句 }
while循环执行流程:



while语句功能

* 计算表达式的值,当值为真(非0)时,执行循环体语句。
* 一旦条件为假,就停止执行循环体。
* 如果条件在开始时就为假,那么不执行循环体语句直接退出。
while循环代码练习:循环输出5遍“好好学习,天天向上”
static void Main(string[] args) { //第一步声明一个循环变量i,并赋初始值为1 int i = 1;
//第二步,使用循环,设置循环的条件,循环多少次? while (i <=5) //第三步,设置循环语句,每一次重复的内容是什么 {
Console.WriteLine("这是第{0}遍:好好学习,天天向上",i); i++;//记得给循环变量进行变化,否则可能进入死循环 }
Console.ReadLine(); }
循环的三要素:

* 循环变量的初始化;
* 循环的条件;
* 循环变量的叠加;
思考两个问题:

①循环变量要发生改变,不然循环就失去意义。要么一次不循环,要么陷入死循环。举例演示:将i=6或注释掉i++

②循环变量发生改变,i++ 和++i的区别

++在前面,就先执行+1,再输出变量。

++在后面,先输出变量,再执行+1。
int num1 = 6, num2 = 6; //声明两个变量,并赋初始值 Console.WriteLine(num1++);
//输出6,num1先输出6,然后再增加1,变成7 Console.WriteLine(num1); //输出7,此时num1已经变成7
Console.WriteLine(++num2); //输出7,num2先增加1,变成7,然后再输出 Console.WriteLine(num2);
//输出7
while循环课后练习:①计算1+2+……+100的和  ②计算100以内偶数的和

 

2、do-while循环

特点:先执行一次循环语句,然后再判断条件,如果条件为真,那么继续执行循环语句。如果条件为假,那么直接结束循环语句。

语法:
do { 循环语句; } while (条件表达式);
do-while执行流程:



do-While语句功能

至少会执行一次循环语句

do-while循环代码练习:程序设定一个固定数值,提示用户输入整数,并判断大小,直到输入正确为止。
static void Main(string[] args) { /* * 输入数字,判断数字与指定数字的关系,给出提示 * 输入错误,则循环提示输入
* 输入正确,则结束循环 */ int a = 123;//声明一个整型变量a,用以存放指定数值 int b;
//声明一个整型变量b,用以存放用户将输入的数值 do { Console.WriteLine("请输入一个整数:"); b =
int.Parse(Console.ReadLine()); if (b > a) { Console.WriteLine("您输入的数字太大了"); }
else if (b < a) { Console.WriteLine("您输入的数字太小了"); } Console.WriteLine(); }
while (!(a == b));//当用户输入正确时,条件表达式结果为假,退出do-while循环 Console.WriteLine("输入正确");
Console.ReadLine(); }
do-while循环代码练习:程序指定账号和密码,提示用户输入账号密码,如果输入错误则提示错误,让用户继续输入。直到输入正确为止。

 

3、for循环

和while循环一样,先判断后执行,这两种循环可以互相代替。

for循环语法:
for(表达式1;表达式2;表达式3) { 循环语句; }
for循环执行流程:



for语句功能

1、表达式1,通常为循环变量赋初值;

2、表达式2,即判断循环条件是否为真,若值为真则执行循环体一次, 否则跳出循环;

3、表达式3,这里通常写更新循环变量的赋值表达式,然后转回第2步重复执行;

for循环代码练习:一只青蛙一张嘴,两只眼睛四条腿,输出10只青蛙
static void Main(string[] args) { //循环输出10只青蛙 for(int i = 1; i <= 10; i++) {
Console.WriteLine("{0}只青蛙,{0}张嘴,{1}只眼睛,{2}条腿",i,2*i,4*i); } Console.ReadLine();
}
代码结果演示:

for循环的变体(表达式1、表达式2、表达式3都可以根据需要进行省略,但是三个表达式之间的分号不允许省略),此内容知道即可,建议写代码时要按正规方式写。

for循环代码练习:输出1-5与10的乘积

 

4、foreach循环

foreach循环是C#中特有的循环,它一般用于对数组、集合中的每个元素进遍历。

foreach语法:
foreach(数据类型 变量名 in 数组或集合名) { 循环语句; }
foreach循环代码练习:遍历输出字符串中的每一个字
static void Main(string[] args) { //将用户输入的话遍历输出 Console.WriteLine("请输入一句话:");
string yj = Console.ReadLine(); foreach(char a in yj) { Console.WriteLine(a); }
Console.ReadLine(); }
代码结果演示:

 

5、while循环、do-while循环、for循环、foreach循环的区别

* while循环和for循环,都是先判断条件,如果条件为真则执行循环。如果条件一开始就为假,则一次循环都不执行。
* do-while循环,则是先执行一次循环语句,再判断条件。如果条件一开始就位假,那么至少会执行一次循环语句。
* 三种循环,都有可能出现死循环,一般情况下,应当避免死循环的出现。
* foreach循环,根据数组或集合中的每个元素来循环代码块。
* for循环和foreach循环当中定义的初始化变量,只有自己才能用;while和do-while循环,初始化变量本来就在外面,所以外面也照样可以使用。
使用建议:

* 绝大多数情况下,while循环、do-while循环和for循环可以来回转换。
* 但是凡是次数确定、范围确定的情况,尽量使用for循环。
* 如果不在乎次数,只在乎条件是否成立,那么多用while循环。
 

课后循环练习:

1、猜数字游戏:程序指定一个数字,提示用户输入数字,并给出提示,如果错误,循环提示输入数字,直到输入正确为止。


2、智能机器人:循环接收用户输入的问题,并给出对应答案,直到程序库里缺少正确答案为止。(提示:使用contains()方法,只要用户输入字符中包含指定关键词,即触发答案)

提示:以上两题用到了循环和判断。先想清楚循环条件、循环语句。