循环语句:

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

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. Linux c 下使用getopt()函数

    命令行参数解析函数 —— getopt() getopt()函数声明如下: #include <unistd.h> int getopt(int argc, char * const ar ...

  2. 2013 Multi-University Training Contest 3

    HDU-4622 Reincarnation 题意:给定一个字符串,有Q次询问,每次询问得出区间[L, R]内有多少个不同的子串. 分析:后缀数组搞,不过hash+dp也能够搞定这题,详解见http: ...

  3. chubu

    python解释型语言,不需要编译成机器认可的二进制码,而是直接从源代码运行程序. python是基于c语言开发的. python很容易嵌入到其他语言. 中文注释,必须在前边加上注释说明 : #_*_ ...

  4. chrome的input默认样式黄色背景以及选中加粗的边框处理

    问题描述: chrome输入用户名和密码,然后浏览器自己有记忆功能,等再次登录的时候,他会显示chrome默认的黄色背景色,还有选中时周围会有很粗的边框 解决方案: 去掉黄色背景,给input添加au ...

  5. mysql: 1045 access denied for user 'root'@'localhost' using password yes

    原因是:root的密码错误了. 解决思路:关闭mysql服务,重新启动mysql服务,启动mysql的时候,指定不需要校验密码.然后登陆mysql,修改密码,退出.再重新启动mysql服务. 1.关闭 ...

  6. Oracle Regexp_substr

    Oracle中REGEXP_SUBSTR函数   Oracle中REGEXP_SUBSTR函数的使用说明:   题目如下: 在oracle中,使用一条语句实现将'17,20,23'拆分成'17','2 ...

  7. 【转载】高性能IO设计 & Java NIO & 同步/异步 阻塞/非阻塞 Reactor/Proactor

    开始准备看Java NIO的,这篇文章:http://xly1981.iteye.com/blog/1735862 里面提到了这篇文章 http://xmuzyq.iteye.com/blog/783 ...

  8. Codeforces 527C Glass Carving

    vjudge 上题目链接:Glass Carving 题目大意: 一块 w * h 的玻璃,对其进行 n 次切割,每次切割都是垂直或者水平的,输出每次切割后最大单块玻璃的面积: 用两个 set 存储每 ...

  9. js知识点 知识树 知识结构 (转载 学习中)

  10. Android事件传递机制(转)

    Android事件构成 在Android中,事件主要包括点按.长按.拖拽.滑动等,点按又包括单击和双击,另外还包括单指操作和多指操作.所有这些都构成了Android中的事件响应.总的来说,所有的事件都 ...