【2017-2-24】C#循环嵌套,跳转语句,迭代穷举,异常语句,while循环
循环嵌套
在一个循环体语句中包含另一个循环语句;
99乘法表
for (int i =1; i <= 9; i++) { for (int j = 1; j <= i; j++) { Console.Write(i+"x"+j+"="+(i*j)+"\t"); } Console.WriteLine(); } Console.ReadLine();
打印菱形
Console.Write("请输入一个奇数:"); int a = Convert.ToInt32(Console.ReadLine()); if (a % 2 == 0) { Console.WriteLine("输入的不是奇数!"); } else { for (int i = 1; i <= a; i++) { if (i % 2 == 0) continue; for (int k = 1; k <= (a - i) / 2; k++) { Console.Write("○"); } for (int j = 1; j <= i; j++) { Console.Write("★"); } Console.WriteLine(); } for (int i = a - 1; i >= 1; i--) { if (i % 2 == 0) continue; for (int k = 1; k <= (a - i) / 2; k++) { Console.Write("○"); } for (int j = 1; j <= i; j++) { Console.Write("★"); } Console.WriteLine(); } } Console.ReadKey();
跳转语句
1、break
在for循环中break终止循环,也就是跳出循环,执行循环下边的语句;在switch中终止一个case;
2、continue
停止当前次循环,继续下一次循环;
迭代法
是一种不断用变量的旧值递推新值的过程;
穷举法
将所有的可能性全部列举出来
代表题目:百鸡百钱;
int count = 0; for (int x = 0; x <= 200; x++) { for (int g = 0; g <= 100; g++) { for (int m = 0; m <= 50; m++) { if (x + g + m == 100 && (x * 0.5) + g + (m * 2) == 100) { Console.WriteLine("小鸡"+x+"只,公鸡"+g+"只,母鸡"+m+"只"); count++; } } } } Console.WriteLine("总共有"+count+"种购买方法"); Console.ReadLine();
异常语句
try
{
可能会出错的代码语句
如果这里出错了,那么不会再继续下面的代码,而是直接进入catch中处理异常
}
catch
{
如果出错出错了,执行本段代码
}
finally(不论是否出错,都执行本段代码;可以省略)
{
执行完上面的语句之后继续执行的操作
}
while循环
int sum = 0; int a = 1;//初始条件 while (a <= 10)//循环条件 { sum++;//循环体 a++;//状态改变 } Console.ReadLine();