C#流程控制语句--迭代语句(while,do....while, for , foreach)
迭代语句:有的时候,可能需要多次执行同一块代码。函数中的第一个语句先执行,接着是第二个语句,依此类推。
迭代语句:while(先检查后执行)
while(条件表达式 bool类型)
{
代码语句
}
For example
int iNum = ; //iNum从1到100递增
int iSum = ; //记录每次累加后的结果
while (iNum <= ) //iNum <= 100 是循环条件
{
iSum += iNum; //把每次的iNum的值累加到上次累加的结果中
iNum++; //每次循环iNum的值加1
}
Console.WriteLine("1到100的累加结果是:" + iSum); //输出结果
Console.ReadLine();
int N = ;
int iSum = ;
while (true)
{
iSum += N;
if (iSum <= )
N = N + ;
else
break;
}
Console.WriteLine("1+3+5+…+n>500的最小正整数n的值为:" + N);
Console.ReadLine();
Console.WriteLine("——————猜数字游戏——————\n");
int iNum;
int iGuess;
Random rand = new Random();
iNum = rand.Next(, );//生成1到200之间的随机数
Console.Write("请输入你猜的数字:");
iGuess = Convert.ToInt32(Console.ReadLine());//输入首次猜测的数字
while ((iGuess != -) && (iGuess != iNum))
{
if (iGuess < iNum)//若猜测的数字小于基准数,则提示用户输入的数太小,并让用户重新输入
{
Console.Write("太小,请重新输入:");
iGuess = Convert.ToInt32(Console.ReadLine());
}
else//若猜测的数字大于基准数,则提示用户输入的数太大,并让用户重新输入
{
Console.Write("太大,请重新输入:");
iGuess = Convert.ToInt32(Console.ReadLine());
}
}
if (iGuess == -)//若最后一次输入的数字是-1,循环结束的原因是用户选择退出游戏
{
Console.WriteLine("退出游戏!");
}
else//若最后一次输入的数字不是-1,用户猜对数字,获得成功,游戏结束
{
Console.WriteLine("恭喜你,你赢了,猜中的数字是:" + iNum);
}
Console.WriteLine("\n———————游戏结束———————");
Console.ReadLine();
迭代语句:do....while(先执行后检查至少执行一次)
do
{
代码语句
}while(表达式条件bool)
For example
Console.WriteLine("请输入一个整数:");
int iNum = Convert.ToInt32(Console.ReadLine());//记录输入的数据
int iResult = ;//记录结果
do
{
iResult *= iNum;//执行相乘操作
iNum--;//值减一
} while (iNum > );//设置判断条件
Console.WriteLine("阶乘结果是:" + iResult);//输出结果
Console.ReadLine();
int iNum = ; //iNum从1到100递增
int iSum = ; //记录每次累加后的结果
do
{
iSum += iNum; //把每次的iNum的值累加到上次累加的结果中
iNum++; //每次循环iNum的值加1
} while (iNum <= ); //iNum <= 100 是循环条件
Console.WriteLine("1到100的累加结果是:" + iSum);//输出结果
Console.ReadLine();
迭代语句for
for(初始条件;判断条件;循环条件)
{
循环语句;
}
For example
int iSum = ;
int iNum;
for (iNum = ; iNum <= ; iNum++)
{
if ((iNum % ) != ) //判断是否为奇数
iSum += iNum; //若是奇数,则进行累加
}
Console.WriteLine("1到100之间的奇数的和:" + iSum);
Console.ReadLine();
int iSum = ; //记录每次累加后的结果
for (int iNum = ; iNum <= ; iNum++)
{
iSum += iNum; //把每次的iNum的值累加到上次累加的结果中
}
Console.WriteLine("1到100的累加结果是:" + iSum); //输出结果
Console.ReadLine();
int iRow, iColumn; //定义行数和列数
for (iRow = ; iRow < ; iRow++) //行数循环
{
for (iColumn = ; iColumn <= iRow; iColumn++) //列数循环
{
//输出每一行的数据
Console.Write("{0}*{1}={2} ", iColumn, iRow, iRow * iColumn);
}
Console.WriteLine(); //换行
}
Console.ReadLine();
for (int i = ; i <= ; i++)//输出5行的金字塔
{
for (int j = ; j <= - i; j++)//控制每一行的空白位置
{
Console.Write(" ");
}
for (int k = ; k <= * i - ; k++)//控制每一行的*个数
{
Console.Write("*");
}
Console.WriteLine();//换行
}
Console.ReadLine();
迭代语句foreach
foreach(类型 变量 in 集合 )
{
代码体
}
For example
Console.WriteLine("请输入一个英文句子");
string str=Console.ReadLine("你输入的句子包含以下单词');
foreach(char word in str)
{
if (char.IsWhiteSpace(word))
{
Console.Write();
}
else
{
Console.Write(word);
}
}
Console.ReadKey();
注:实例有三个部分:
通过 foreach 循环输出整型数组中的元素。
通过 for 循环输出整型数组中的元素。
foreach 循环设置数组元素的计算器。
foreach语句:
每执行一内含的代码时,循环变量就会依次读取集合中的一个元素。
此处的循环变量是一个只读型的局部变量,这个值如果被修改编译器会发生错误。
C#流程控制语句--迭代语句(while,do....while, for , foreach)的更多相关文章
- C#流程控制语句--分支语句(if,switch,三位运算符)
分支语句:判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的). 分支语句 if if(判断条件表达式) {//表达式结果为tu ...
- python流程控制语句-if语句
一个if语句 if语句用来检验一个条件, 如果 条件为真,我们运行一块语句(称为 if-块 ),也就是只有一个if判断,当为真的时候就运行一块语句,否则就不运行 下面代码中的if语句控制者缩进的pri ...
- C#入门篇5-7:流程控制语句 continue语句
#region continue语句 public class ContinueApp { public static void Fun1() { //标签打印显示1…30,若能被3整除则不打印. ; ...
- C#入门篇5-8:流程控制语句 break语句
#region break语句 public class Breakapp { public static void Fun1() { //计算1+2+…+100的求和程序,打印显示每次循环计算的结果 ...
- 1-23-shell脚本之-if流程控制语句和for循环语句的使用
大纲: 1.逻辑判断 2.if流程控制语句 3.for循环控制语句 ---------------------------------------------- 在开始之前,先了解一下逻辑判断符号 ...
- JavaScript(第五天)【流程控制语句】
ECMA-262规定了一组流程控制语句.语句定义了ECMAScript中的主要语法,语句通常由一个或者多个关键字来完成给定的任务.诸如:判断.循环.退出等. 一.语句的定义 在ECMAScri ...
- javaScript(6)---流程控制语句
学习要点: 1.语句的定义 2.if 语句 3.switch语句 4.do...while语句 5.while语句 6.for语句 7.for...in语句 8.break和continue语句 9. ...
- 第一百零一节,JavaScript流程控制语句
JavaScript流程控制语句 学习要点: 1.语句的定义 2.if 语句 3.switch语句 4.do...while语句 5.while语句 6.for语句 7.for...in语句 8.br ...
- java基础,流程控制语句
流程控制语句 条件语句: if语句: *if(条件 boolean类型) ...
随机推荐
- [Docker] sh: docker-compose: not found
有点坑爹,在使用 alpine 镜像的时候,明明在里面安装了docker-compose,/usr/local/bin/docker-compose也是存在的,却报 sh: docker-compo ...
- sitecore8.2 基于相对路径查询item
当前项目: bar (path: /sitecore/content/home/foo/bar) 查询: query:./child/grandchild 结果: grandchild (path: ...
- python 什么是闭包
1.啰嗦一下 学这个知识点的时候,我本来想先了解下定义, 知道个大概再说, 翻了几篇博客,基本上都是有例子带着进入理解这块.即使读了定义,思想还是不能显出个框架. 想吃快餐,有些行,有些就不可以(这里 ...
- 信步漫谈之Quartz—分布式调度(整合spring早期版本【低于spring3.1】)
一.环境 使用的jar包:spring2.5.6.quartz1.8.6 二.注意点 因为spring内置的quartz版本变化,所以存在spring和quartz版本接口兼容情况,如下: 1)spr ...
- linux 分析java 线程状态
将线程3117 的线程消息放到文件dump17中 jstack 13492 > dump17 分析线程 grep java.lang.Thread.State dump17 | awk '{pr ...
- python list用法
a = ['张三','李四','赵六','王五'] #打印列表 print(a) #增 a.apppend('徐七') print(a) a.insert(1,'张六') print(a) #删 a. ...
- 启动Weblogic问题集锦
报错1:Could not obtain the localhost address. The most likely cause is an error in the network configu ...
- 【转载】opencv实现人脸检测
全文转载自CSDN的博客(不知道怎么将CSDN的博客转到博客园,应该没这功能吧,所以直接复制全文了),转载地址如下 http://blog.csdn.net/lsq2902101015/article ...
- 2018年-2019年第二学期第五周C#学习个人总结
在本周我学习了第五章面向对象高级中的5.3多态,5.3多态中主要包括重写父类方法,多态的实现,base关键字,里氏转换原则,Object类.在重写父类方法中要求当重写父类的方法时,要求子类的方法名,参 ...
- linux清理缓存的命令
查看缓存的命令 free -m 清理缓存的命令 echo 1 > /proc/sys/vm/drop_caches echo 2 > /proc/sys/vm/drop_caches e ...