循环语句:

四要素:初始条件,循环条件,状态改变,循环体

for(初始条件;循环条件;状态改变)
{
//循环体
}

案例1:打印等腰直角三角形和菱形

左上三角

 static void Main(string[] args)
{
Console.WriteLine("请输入一个数:");
int n = Convert.ToInt32(Console.ReadLine()); //打印左上三角形
for (int i = ; i <= n; i++)
{
for (int j = ; j <= i; j++)
{
Console.Write("★");
}
Console.WriteLine();
}
}

运行结果:

左下三角:

 static void Main(string[] args)
{
Console.WriteLine("请输入一个数:");
int n = Convert.ToInt32(Console.ReadLine());
for (int i = ; i <= n; i++)
{
for (int j = ; j <= n + - i; j++)
{
Console.Write("★");
}
Console.WriteLine();
}
}

运行结果:

右上三角:

  static void Main(string[] args)
{
Console.WriteLine("请输入一个数:");
int n = Convert.ToInt32(Console.ReadLine());
//打印右上三角
for (int i = ; i <= n; i++)
{
for (int j = ; j <= n - i; j++)
{
Console.Write(" ");
}
for (int k = ; k <= i; k++)
{
Console.Write("★");
}
Console.WriteLine();
}
}

运行结果:

右下三角:

  static void Main(string[] args)
{
Console.WriteLine("请输入一个数:");
int n = Convert.ToInt32(Console.ReadLine());
for (int i = ; i <= n; i++)
{
for (int j = ; j <= i - ; j++)
{
Console.Write(" ");
}
for (int k = ; k <= n + - i; k++)
{
Console.Write("★");
}
Console.WriteLine();
}
}

运行结果:

菱形:

 static void Main(string[] args)
{
Console.WriteLine("请输入一个数:");
int n = Convert.ToInt32(Console.ReadLine());
//打印上半部分菱形
for (int i = ; i <= n; i++)
{
for (int j = ; j <= n - i; j++)
{
Console.Write(" ");
}
for (int k = ; k <= * i - ; k++)
{
Console.Write("★");
}
Console.WriteLine();
} //打印下半部分菱形
for (int i = ; i <= n; i++)
{
for (int j = ; j <= i - ; j++)
{
Console.Write(" ");
}
for (int k = ; k <= - * i; k++)
{
Console.Write("★");
}
Console.WriteLine();
} }

运行结果:

break; 完全终止循环,退出循环。 吃到苍蝇
continue; 中断本次循环,进入下次循环。 吃到沙子

1.迭代法: - 有规律可寻

//100以内所有数的和。

  static void Main(string[] args)
{
// 求100以内所有数的和
//收公粮
int sum = ; for (int i = ; i <= ; i++)
{
sum = sum + i;
}
Console.WriteLine(sum);
}

//猴子吃桃子

公园里有一只猴子,和一堆桃子,猴子每天吃完桃子总数的一半,在剩下一半数量中扔掉一个坏的。每天这样吃,到第七天,猴子睁开眼时,发现只剩下一个桃子了,问刚开始公园里有多少个桃子? 190

  public static void Main(string[] args)
{
//猴子吃桃子
int taozi = ;
for (int i = ; i >= ; i--)
{
taozi = (taozi + ) * ;
} Console.WriteLine(taozi);
}

//国象棋盘放米

 public static void Main(string[] args)
{
//国象放米
double mi = ;
Console.Write(mi + "\t");//第一行的米数 for (int i = ; i <= ; i++)
{
mi = mi * ;
Console.Write(mi + "\t");
}
}

结果:

//拆纸多少次就比珠峰高 8848米

一张A4纸的厚度:0.088毫米 =0.0088厘米 = 0.00088分米=0.000088米

 public static void Main(string[] args)
{
double houdu = 0.000088; for (int i = ; ; i++)
{
houdu = houdu * ;
Console.Write(houdu + "\t");
if (houdu > )
{
Console.WriteLine("对折了{0}次后就超过珠峰了", i);
break;
}
}
}

运行结果:

2.穷举法 :

用循环,把所有可能的情况都走上一遍,然后使用if过滤出满足条件的情况来。

//100以内所有与7有关的数。

  static void Main(string[] args)
{
#region ====求100以内与7有关的数==== for (int i = ; i <= ; i++)
{
if (i % == || i % == || i / == )
{
Console.Write(i + "\t");
}
}
#endregion
}

//百鸡百钱
公鸡2文钱,母鸡1文钱,小鸡半文钱。用100文钱,买100只鸡,每类鸡只少买1只,有哪几种组合?

  static void Main(string[] args)
{
//百鸡百钱:公鸡2文,母鸡1文,小鸡半文,每种至少一只,100文买100只鸡有多少可能性
int sum = ;
for (int a = ; a <=; a++)
{
for (int b =; b <; b++)
{
for (int c = ; c <=; c++)
{
if (a+b+c==&&a*+b*+c*0.5==)
{
sum++;
Console.WriteLine("公鸡{0}只,母鸡{1}只,小鸡{2}只",a,b,c);
}
}
}
}
Console.WriteLine("一共有{0}种可能性",sum);
}

123( )45( )67( )8(  )9=100,括号里填+或-使得等式两边相等。

  public static void Main(string[] args)
{ for (int a = -; a <= ; a = a + )
{
for (int b = -; b <= ; b = b + )
{
for (int c = -; c <= ; c = c + )
{
for (int d = -; d <= ; d = d + )
{
if ( + * a + * b + * c + * d == )
{
Console.Write("{0},{1},{2},{3}", a, b, c, d);
}
}
}
}
}
}

小张单位发100元的购物卡,小张要去超市买三种日常用品:牙刷(5元)、香皂(2元)、洗发水。(15元),购物卡不退现,小张又不想多花钱,如何购买刚好花完这100元的卡?

 static void Main(string[] args)
{ int count=;
for (int a = ; a <=; a++)
{
for (int b = ; b <=; b++)
{
for (int c = ; c <=; c++)
{ if (a*+b*+c*==)
{
count++;
Console.WriteLine("牙刷{0}只,香皂{1}个,洗发水{2}瓶", a, b, c);
} }
}
}
Console.WriteLine("一共有{0}种可能性恰好花光100元",count);
}

 //打印出所有的水仙花数,所谓的水仙花数就是一个三位数,其余各个数字的立方和等于它的本身,例如153是一个水仙花数,153=1∧3+5∧3+3∧3

 static void Main(string[] args)
{
//打印出所有的水仙花数,所谓的水仙花数就是一个三位数,其余各个数字的立方和等于它的本身,例如153是一个水仙花数,153=1∧3+5∧3+3∧3
for (int i = ; i <=; i++)
{
int a = i / ;//取出三位数的百位
int b = i / % ;//取出三位数的十位
int c = i % ;//取出三位数的个位 if (a*a*a+b*b*b+c*c*c==i)
{
Console.WriteLine(i);
} } }

运行结果:

for循环语句以及迭代法和穷举法的更多相关文章

  1. 作业:for循环,迭代法和穷举法

                                                    for()循环 四要素:初始条件,循环条件,状态改变,循环体. 执行过程:初始条件--循环条件--循环体 ...

  2. 【2-24】for循环嵌套,跳转语句,异常语句,穷举法、迭代法

    For循环嵌套与if嵌套相似,是在for中再套for,其结构如下: For(;;) { For(;;){} }经典题型为打印星星例: Console.Write("请输入一个奇数:" ...

  3. C#5 复习总结循环 迭代和穷举

    一.章节复习: 循环.反复执行某段语句一种语法形式. 1.基本语法: for( 初始条件 ; 循环条件 ; 状态的改变 ) { 循环体 } 循环的四要素. 循环的执行过程.初始条件--循环条件--循环 ...

  4. C# 异常语句 跳转语句 while循环 穷举法 迭代法

    一  异常语句   ♦ try.....catch....finally 结构形式 try{ 可能会出错的代码语句 如果这里出错了,那么不会在继续下面的代码,而是直接进入catch中处理异常}catc ...

  5. C#4 for循环 迭代法 穷举法应用

    for()循环. 四要素: 初始条件,循环条件,状态改变,循环体. 执行过程: 初始条件--循环条件--循环体--状态改变--循环条件.... 注意:for的小括号里面分号隔开,for的小括号后不要加 ...

  6. 穷举法、for循环、函数、作用域、斐波那契数

    1.穷举法 枚举所有可能性,直到得到正确的答案或者尝试完所有值. 穷举法经常是解决问题的最实用的方法,它实现起来热别容易,并且易于理解. 2.for循环 for语句一般形式如下: for variab ...

  7. C# for 循环 迭代法 穷举法

    for()循环. 四要素: 初始条件,循环条件,状态改变,循环体. 执行过程: 初始条件--循环条件--循环体--状态改变--循环条件.... 注意:for的小括号里面分号隔开,for的小括号后不要加 ...

  8. 基本算法思想之穷举法(C++语言描述)

    穷举算法(Exhaustive Attack method)是最简单的一种算法,其依赖于计算机的强大计算能力来穷尽每一种可能性,从而达到求解问题的目的.穷举算法效率不高,但是适应于一些没有规律可循的场 ...

  9. 通过穷举法快速破解excel或word加密文档最高15位密码

    1.打开文件 2.工具 --- 宏 ---- 录制新宏 --- 输入名字如 :aa 3.停止录制 ( 这样得到一个空宏 ) 4.工具 --- 宏 ---- 宏 , 选 aa, 点编辑按钮 5.删除窗口 ...

随机推荐

  1. python_way ,json(自学)

    python_way ,json 如果我们想将多行字典存放到文件中,并且还需要调出这些字典继续使用那么就要是用json. 首先将字典用json转换成字符串,存放到文件中. a = {"tel ...

  2. PHP基础知识之————PDO预处理语句

    转载处:http://www.cnblogs.com/xiaohuochai/p/6133353.html 定义 在生成网页时,许多PHP脚本通常都会执行除参数之外,其他部分完全相同的查询语句,针对这 ...

  3. iOS企业版打包(转载)

    转自 http://www.cnblogs.com/shenlaiyaoshi/p/5472474.html   神来钥匙-陈诗友 iOS 企业版 打包 使用 iOS 企业版的证书发布应用可以跳过 A ...

  4. uva 11800 Determine the Shape

    vjudge上题目链接:Determine the Shape 第二道独自 A 出的计算几何水题,题意就是给你四个点,让你判断它是哪种四边形:正方形.矩形.菱形.平行四边形.梯形 or 普通四边形. ...

  5. myeclipse黑色主题怎么还原

    删除workspace-->.metadata-->.plugins-->org.eclipse.core.runtime

  6. Sqlserver_时间用法

    函数 描述 GETDATE() 返回当前的日期和时间 DATEPART() 返回日期/时间的单独部分 DATEADD() 在日期中添加或减去指定的时间间隔 DATEDIFF() 返回两个日期之间的时间 ...

  7. cocoapods ,错误大全

    出现这种警告 Your Podfile has had smart quotes sanitised. To avoid issues in the future, you should not us ...

  8. iOS开发 判断扫码是否为有效网址

    - (BOOL)achiveStringWithWeb:(NSString *)infor { NSString *emailRegex = @"[a-zA-z]+://.*"; ...

  9. php错误以及常用笔记

    //语法错误(syntax error)在语法分析阶段,源代码并未被执行,故不会有任何输出. /* [命名规则] */ 常量名 类常量建议全大写,单词间用下划线分隔 // MIN_WIDTH 变量名建 ...

  10. [转]Android各大网络请求库的比较及实战

    自己学习android也有一段时间了,在实际开发中,频繁的接触网络请求,而网络请求的方式很多,最常见的那么几个也就那么几个.本篇文章对常见的网络请求库进行一个总结. HttpUrlConnection ...