十一、使用do while循环

1.使用do while循环

语法:

do{
    循环操作
}while(循环条件);

特点:

先执行,再判断

 

案例一:

老师给张每天安排学习任务。
经过几天的学习,老师给张浩一道测试题,让他先上机编写程序完成,然后老师检查是否合格。如果不合格,则继续编写。

//正确的逻辑应该是:先考试,有了成绩以后,再去判断是否合格
string answer ;//声明变量,作用域为:do{} 内部和外部都可以使用该变量
do{
    Console.WriteLine("上机编写程序!");
	Console.WriteLine("合格了吗?(y/n)");
	answer = Console.ReadLine();
	Console.WriteLine("");

}while(!"y".Equals(answer));  //换行
	
Console.WriteLine("恭喜你通过了测试!");

注:

【1】如果在do{ } 外声明了变量String answer,那么在do{ } 内部去使用该变量的时候,不能够再次声明,即如下的写法是错误的:

String answer;  //1.声明
do{
    String answer = "不通过!";   //2.赋值
}while(...);

当然do{ } 内声明变量也是一样的情况,如下的写法错误

do{
    String answer;
    String answer = "不通过!";
}while(...);

【2】正确的声明、赋值、使用 变量的写法如下:

//在do{} 外部声明变量
//方式一:
String answer;
//使用变量answer
do{
    answer = "不通过!";
    //使用变量answer
}While(...//使用变量answer);

//方式二:
String answer = "不通过!";
//使用变量answer
do{
    //使用变量answer
}While(...//使用变量answer);


//在do{} 内部声明变量
//方式一:
do{
    String answer;
    answer = "不通过!";
    //使用变量answer
}While(...);

//方式二:
do{
    String answer = "不通过!";
    //使用变量answer
}While(...);

★★★★【分析】

由于这里while() 中用到了answer 变量 ,因此要在do{ } 外面定义answer ;

又由于answer的值是循环体操作中要用到的变量,因此answer 在do{ } 内部进行赋值

【3】控制台命令中的换行

//方式一
Console.WriteLine();  //Console.WriteLine("")里面的""写不写都可以
//方式二:
Console.Write("\n");

【4】控制台命令中的制表

//  \t 制表符:理解为使结果 对齐 的一种 空格
Console.WriteLine("测试1\t测试2\t测试3");
Console.WriteLine("测试4\t测试5\t测试6");

十一、使用do while循环_第1张图片

 

案例二:

输出摄氏温度与华氏温度的对照表,要求它从摄氏温度0度到250度,每隔20度为一项,对照表中的条目不超过10条。
转换关系:华氏温度 = 摄氏温度 * 9 / 5.0 + 32

double huaShi = 0;
double sheShi = 0;
int count = 10;
do{    
    huaShi = sheShi*9/5 +32;
    Console.WriteLine($"当前的摄氏度为{sheShi}\t,华氏度为{huaShi}");
    sheShi = sheShi + 20;
    count--;
}while(count > 0);

注:

该题中的变量不能在do{ } 中赋值,因为在循环体中赋值,每次循环的变量的初始值都是我们赋给他的初始值!

 

2.while循环  PK  do-while循环

【1】语法不同:

while循环先判断,再执行;do-while循环先执行,再判断

【2】执行次序不同

【3】初始情况不满足循环条件时:

while循环一次都不会执行;do-while循环不管任何情况都至少执行一次

 

 

你可能感兴趣的:(C#,c#)