循环结构的概述
在之前我们写的程序都是从上到下顺序执行的,要么就是选择性的执行某段代码,现在大家打印10遍“学生C#”,在打印100遍、1000遍。 这时候就会有问题了,发现我们写的代码都是重复的,那么有没有办法让某些代码可以跟据需求执行多次,这就是我们这次要学习的的循环结构
。
什么是循环结构
循环就是重复地做, 如下案例分析
//案例
在日常生活中有很多循环的例子,如打印50份试卷,炒一百道鱼香肉丝,
被罚抄一百遍的单词默写,或者正在行驶中滚动的车轮都是在重复的做着某些相同的操作;
//分析
打印50份试卷
循环条件:只要打印试卷的份数不够50份就继续打印
循环操作:打印1份试卷,打印试卷的总数+1;
炒100道鱼香肉丝
循环条件:只要鱼香肉丝的数量不够100道菜就继续炒;
循环操作:炒1份鱼香肉丝,鱼香肉丝炒菜总数+1;
被罚抄100遍默写:
循环条件:只要罚抄不够100遍就得继续写;
循环操作:写一遍罚抄,罚抄总数+1;
滚动的车轮:
循环条件:没有到达目的地就继续滚动
循环操作:车轮滚动一圈,离目的地的距离减少车轮的周长;
循环总结
- 循环结构的特点:在某条件成立时不断地做某事情
- 循环不是无休止进行的,满足一定的条件时,循环才会继续,称为
循环条件
; - 循环结构是反复进行相同的或类似的一系列操作,称为
循环操作
;
所以要想构成循环操作必须满足拥有循环条件
和循环操作
两件事;
循环实现方式
在C#中基本的循环实现方式有三种:
-
for
循环 -
while
循环 -
do...while
循环
由于篇幅限制, 我们在本节中学习for
循环。
for循环
循环关键字: for
循环格式:
for(循环变量初始化; 循环条件; 循环增量)
{
循环语句段也叫循环体或者循环操作
}
格式解释:
- 1循环变量初始化:循环时需要有一个变量来记录循环的次数,这此处定义记录次数的变量, 并初始化次数,比如默认次数为0.
- 2循环条件:什么情况下循环继续执行
- 3循环增量:循环变量每次增加或者减少多少
- 4循环操作:在满足循环条件时被重复执行的代码段
循环语法:
先执行1-变量初始化-->再进行2 条件判断 -->然后执行4-循环操作 -->最后 3变量增量-->接着 再判断2 -->执行 4 --> 增量 3-->……………… 按照此顺序直到判断2不满足时 结束循环。
1 --> 2 ---> 4 --> 3 -->2 --> 4--> 3-->2-->4-->3-->…………-->2-->结束
学习案例: 案例非常重要,一定要看哦
/**
* 练习1:打印10遍 学习C#基础.
*/
for (int i = 0; i < 10; i++) {
Console.WriteLine("学习C#基础");
}
/**
* 练习2:打印100遍 学习C#基础.
* 与上一题次数不一样
*/
for (int i = 0; i < 100; i++) { //循环条件不一样
Console.WriteLine("学习C#基础");
}
/**
* 练习3:正序打印1~10
*/
for (int i = 1; i <= 10; i++)
{
Console.WriteLine(i);
}
/**
* 练习4:倒序打印1~10
*/
for (int i = 10; i >= 1; i--)
{
Console.WriteLine(i);
}
/**
* 练习5:打印1~10之间的偶数
*/
//方式一
for (int i = 1; i <= 10; i++)
{
//判断是不是偶数
if(i%2 == 0)
{
Console.WriteLine(i);
}
}
//方式二
//2是最小的偶数, 每次+2, 后面的就都是偶数了
for (int i = 2; i <= 10; i+=2)
{
Console.WriteLine(i);
}
/**
* 练习6:打印1~100之间的所有能被7整除的数
* 注:遍历出1~100之间的数,然后判断是否是7的倍数.
*/
for (int i = 1; i <= 100; i++)
{
//判断能不能被7整除
if(i%7 == 0)
{
Console.WriteLine(i);
}
}
/**
* 练习7:打印200~300之间十位不为7的数.
* 注:遍历出200~300之间的数,然后判断是否十位不为7.
* 取十位:三位数取出十位数需要先除10得到一个包含百位和十位的两位数,
* 然后再直接对10取余数即可. / 10 % 10.
*/
for (int i = 200; i <= 300; i++) {
if (i / 10 % 10 != 7)
{
Console.WriteLine(i);
}
}
/**
* 练习8:求1 ~ 100的整数和.
*
* 注:遍历出1~100之间的数,然后累加求和.
*/
int sum = 0; //累加器
for (int i = 1; i <= 100; i++) {
sum += i; //累加求和
}
Console.WriteLine(sum);
/**
* 练习9:求1 ~ 100的偶数和.
*
* 注:遍历出1~100之间的数,然后判断是否是偶数,将偶数累加求和.
*/
int sum = 0;
for (int i = 1; i <= 100; i++) {
//判断是否是偶数
if (i % 2 == 0) {
//只有偶数才累加
sum += i;
}
}
Console.WriteLine(sum);
/**
* 练习10:判断一个数是否是质数. (只能被1和它本身整除的数是质数)
* 注:遍历2~该数-1,如果有数能被该数整除, 则说明该数不是质数
*/
int number = 0; //存储当前数
Console.WriteLine("请输入一个数:\n");
number = int.Parse (Console.ReadLine ());
bool isTrue = true;
for (int i = 2; i < number; i++) {
if (number % i == 0) {
//一旦发现该数能够被2到本身-1的数整除,说明该数不是质数,立即将状态位置为false.
isTrue = false;
}
}
//根据状态位判断该数是否是质数.
if (isTrue) {
Console.WriteLine("该数是质数\n");
} else {
Console.WriteLine("该数不是质数\n");
}
欢迎大家踊跃评论,让我们一起探讨技术!!
如果觉得文章不错,请帮忙点击文章下方的喜欢
!!
你的支持将是对我最好的鼓励, 谢谢!!!
网友评论