赞
踩
大家好,最近没有给大家更新,也没有好讲的,那就从基础开始吧。
今天给大家带来的是循环讲解。
那么现在就开始吧
循环是什么呢?
循环是把一个代码重复执行,节省写代码的时间。
循环也分3种,for、while和do while,在后面会讲到。
for循环是一种非常常见的循环,只需要知道次数,就可以循环n(次数)次。
写法就是for(执行循环值;循环边界(循环次数);循环的增加或减少次数)。
代码如下:
for (int i = 1; i <= 10; i++){
}
这个代码的意思就是从1开始,执行10次,每次i加1。
当然了i也可以变为j,但是要注意要把循环里所有用i的地方变为j。
变为j之后的代码就是:
for(int j = 0; j <= 10; j++){
}
代码就在大括号里面写。
10也是可以变的,改为11就是循环11次,改为1就是循环1次,如果改为0,那就循环0,次,因为只有当条件成立时for循环才会执行,如果是循环n次呢?那就是把10改为n了。
i++那里也是可以变的,想加2的时候就可以改为i = i + 2,想减1的时候就是i–,但是中间都是分号间隔。
这些都是有限循环,那无限循环是什么呢?
条件永远成立,循环一直执行,导致不能继续进行后面的代码!
for循环的无限循环就是:
for(int i = 1;; i++){}
这个就是一个无限循环,应为循环没有条件,所以是无限循环。
上面讲了for循环,现在来讲讲while循环吧。
while循环的特点是,不需要次数,只需要条件。
while(条件){执行的内容},注意while循环只要条件为真就可以了,0是假,其他数都是真,不管正数负数,小数整数,除了0以外的都是真。
代码如下:
while(n > 0){n--};
这是也是一个可以执行n次的循环,就是一直判断n的值是否大于0,大于0就n–(n=n-1),不大于0就退出循环。
当然了,这个代码也有简便循环的:
while(n--);
这样也可以。
那while循环怎么写无限循环呢?小伙伴们想到了就在评论区留言吧!
注意,while循环有一个特殊的输入方法,可以记一下。
就是:
while(cin >> a[i++]);
这个代码,是不知道执行次数,也不知道条件,就可以这样写,但是要有一个数组,想要结束的话,就按Ctrl+字母中的任意一个(这只是一种方法,有其他的,这里就不说了),i是数组的长度+1,而且要保证1是从一开始的。
这个和while循环的区别嘛也就在于这个是必须执行一次,但是他们没有多大区别。
没搞懂的看一个代码你就知道了
while(1 < 0) cout << "你好";
这是while循环的
do{
cout << "你好";
}while(1 < 0);
这是do while的
区别就在while循环不会出输出,因为1<0不成立,所以1次都不会执行;而do while呢,他会输出一个你好,因为do while的执行次数至少都是1。
总结一句,while循环是先判断后执行,do while循环先执行后判断。
do while的无限循环和while循环一样。
你知道怎么样不执行完条件就退出循环么? 对,那就是break,在循环中,用break,能退出离break最近的一层循环。
那你知道怎么样让循环还没执行完的时候就执行下一次循环么? 对,那就是continue,在循环中,用continue,能不执行循环下面的代码,直接进行下一层循环。
break怎么用呢?那就让我们来看一看:
a[5] = {0,1,2,3,4,5};
b[5] = {0,1,2,3,4,5};
cin >> m;
int sum = 0;
for(int i = 1; i <= 5; i++){
if(m == 0) break;
if(m >= a[i]){
m = m - a[i];
sum = sum + b[i];
}
}
这个代码很明显,m就像一个背包一样,如果m是0,就说明背包装满了,那就没有必要继续进行下面的代码了,可以直接退出循环,有的小伙伴们问为什么m==0下面不用写else,当然是因为如果是0,那就已经退出循环了,不是0才会执行下面的代码,没有必要写else。
那continue又在什么时候用呢?可以再判断的时候用。
int sum = 0;
for(int i = 1; i <= n; i++){
cin >> a[i];
if(a[i] == 'continue') continue;
sum++;
}
这个是统计不是continue的个数,如果是continue,那就得直接进行下一次循环,如果不是continue,那么就得sum++喽。
什么是多重循环呢?
多重循环就是在循环里面还有循环,最多用在二维数组里面。
输入就是:
for(int i = 1; i <= n; i++){
for(int j = 1; j <= n; j++){
cin >> a[i][j];
}
}
这个就是输入二维数组的代码。
注意for循环的执行变量不要重了
for循环就是有次数就可以使用,用的非常的多,注意事项就是括号里分三部分的符号是;号,如果初始值不是1,而且要执行n次的时候,那么条件就得变为:执行变量 <= 初始值+n-1。
while循环 这是先判断后执行的循环,需要知道条件。
既不知道条件,也不知道次数也可以用while循环输入。
do while循环和while差不多,他是先执行后判断。
今天就讲到这里,小伙伴们下次再见!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。