穷举:把所有可能的情况都走一遍,使用if条件筛选出来满足的条件的情况。(把所有的可能性都列举一边)
迭代:从初始情况按照规律不断求解中间情况,最终推导出结果。f
foreach 专为数组定义的一种命令,
while:
当......的时候
int n=1;
while(n<6)//在括号内直接限制循环条件,
{//需要在中括号内给出改变方式,否则将会进入死循环
Console.WriteLine("打印结果{0},{1}"n,2*n)//占位符"{0},{1},"n1,n2
n=n+1;//在中括号内给予值得改变方式
}
int m=1;
while(true)//死循环
{
Console.WriteLine(打印结果为"+m);
m++;
if(m==6)
{
break;//break;跳出语句:跳出循环
}
}
Console.ReadLine();
例题:
1).
羽毛球拍15元,球3元,水2元。200元每种至少一个,有多少种可能
水最多可能性100设为z 2元1个
羽毛球拍最多的可能性13设为x 15元一个
球最多的可能性66设为y 3元一个
15*x+3*y+z*2=200
int m = 0;
for (int x = 1; x * 15 <= 200; x++)
{
for (int y = 1; y * 3 <= 200; y++)
{
for (int z = 1; z * 2 <= 200; z++)
{
if (15*x+3*y+2*z==200)
{
Console.WriteLine(x + "羽毛球拍" + y + "球" + z + "水");
m++;
}
}
}
}
Console.Write("一共有多少种可能性"+m);
Console.ReadLine();
2).
百鸡百钱:公鸡2文钱一只,母鸡1文钱一只,
小鸡半文钱一只,总共只有100文钱,
如何在凑够100只鸡的情况下刚好花完100文钱?
int j = 0;
for (int g = 0; g * 2 <= 100; g++)
{
for (int m = 0; m <= 100; m++)
{
for (int x = 0; x * 0.5 <= 100; x++)
{
if (g * 2 + m + x * 0.5 == 100 && g + m + x == 100)
{
j++;
Console.WriteLine(g + "公鸡" + m + "母鸡" + x + "小鸡");
}
}
}
}
Console.WriteLine("共有"+j+"种可能性");
Console.ReadLine();
3).
五个小朋友排成一队,问第一个多大了,
第一个说比第二个大两岁,问第二个多大了,
第二个说比第三个大两岁。。。以此类推,
问第5个小朋友,说自己3岁了。问第一个小朋友几岁了?
for:
int a = 3;
for (int i = 1; i < 5; i++)
{
a += 2;
}
Console.WriteLine(a);
Console.ReadLine();
while方法1:
int a = 3;
int i = 1;
while (i < 5)
{
i++;
a += 2;
}
Console.WriteLine(a);
Console.ReadLine();
while:
int a = 3;
int i = 1;
while (true)
{
i++;
a += 2;
if (i == 5)
{
break;
}
}
Console.WriteLine(a);
Console.ReadLine();