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类型) ...
随机推荐
- vue进阶--外卖商家页
一.准备工作 1.vue特性:轻量级.简洁.高效.组件化.数据驱动 2.技术分析:使用vue- resource与后端交互(ajax通信,ie9+) 使用vue-router作为前端路由 bet ...
- redis 字符串(string)函数
字符串(string)函数 get 命令/方法/函数 Description Get the value related to the specified key 取得与指定的键值相关联的值 Para ...
- 百度API经纬度和地址互相查询
/** * 获取地址对应的坐标 * @param $address * @return array */ function getAddressPoint($address){ $lng = 0; $ ...
- Javascript学习-简单测试环境
Javascript学习-简单测试环境 在<JavaScript忍者秘籍>2.4测试条件基础知识中,作者给出了一个精简版的assert和assert组的实现,对于初学者而言,这无疑是一个很 ...
- Gradle's dependency cache may be corrupt
原因分析: 当前Android studio 安装或者升级后配置的Gradle版本不对.可以打开安装目录下\Android\Android Studio\gradle\查看当前已有最新的版本.例如下图 ...
- Windows环境下IOS APP打包上传AppStore详细流程
我们知道在上架苹果应用过程中,申请发布证书需要用到钥匙串,上传ipa需要用到xcode或Application loader提交构建版本,这都需要Mac苹果机. 本文介绍如何在Windows环境下申请 ...
- 遍历tr通过name获取对应值用作判断或者赋值
$("#table tr:gt(0)").each(function(i){ var bidPrice = $("input[name='bidPrice2s']&quo ...
- 用java实现操作两个数据库的数据
1.首先需要在jdbc的配置文件里面配置两个数据库的连接 数据库1的配置 driverClassName=com.mysql.jdbc.Driverurl=jdbc:mysql://地址:3306/数 ...
- 自娱自乐RN版小说APP历程记录
当前rn版本 "react": "16.6.3" "react-native": "0.58.5" 通过react-na ...
- 【模板】ST表
给定一个长度为 \(N\) 的数列,和 \(M\) 次询问,求出每一次询问的区间\([l,r]\)内数字的最大值. 说明 对于30%的数据,满足: \(1 \leq N, M \leq 10 , 1≤ ...