✦C语言的for循环
前面的一些基本概念学习完了,就该学习语法了。就像学完了词组,再来学习语法,这样才能组成句子。
-
概念
C 语言 for 循环语句的一般形式为:
for (<迭代量初始化>;<条件表达式>;<迭代>)
{
循环体语句;
}
从初始条件开始,看是否满足条件表达式,满足则根据更新条件来更新迭代量,可能是自增,自减,指向下一个地址等。不满足条件表达式的时候,或着break了,跳出循环。
//C语言
//斜杠是C语言注释的符号,它会注释掉一行,也就是说,这一行话不在程序之内,是给人看的
for(int i = 0; i < 9; ++i)
{
printf("%d ",i);
}
//i 从0 开始,执行循环体之后,就做+= 1操作,即i = 1,i = 2……。
//每加一次就会进入循环体,把 i 打印出来。
//直到 i = 9 的时候,跳出循环,即不满足 i < 9 这个条件表达式
-
进一步理解
✦for循环的优点是更新条件不会忘记写容易运用。
✦但是for要注意循环的限制条件要慎重考虑,可能会让循环编程死循环,也可能会不执行循环。
✦这里多了break和continue。break是停止循环,continue是跳过某一次循环体内的语句的执行。
-
break和continue
✦break是直接结束循环
✦continue是跳过一次循环,或者说是不执行某些语句
//C语言
for(int i = 0; i < 9; ++i)
{
if(i == 4)
{
break;//如果 i = 4,这个for语句,就不会进行下去了,不用等i = 9,直接结束
}
printf("%d ",i);
}
//结果:0 1 2 3
for(int i = 0; i < 9; ++i)
{
if(i == 4)
{
continue;//如果i = 4,会跳过一次循环,就是 i = 4 的这一次
}
printf("%d ",i);
}
//结果:0 1 2 3 5 6 7 8
-
例子1、求10 个整数中最大值。
//C语言
#include<stdio.h>
#include<stdlib.h>
void main(){
printf("请输入10个数:\n");
int a[9],i= 0,max=a[0];
for (i ; i < 10; i++){
scanf_s("%d",&a[i]);
}
for (i = 1; i < 10; i++)
{
if (max < a[i])
max = a[i];
}
printf("最大的数数:%d\n",max);
system("pause");
}
-
例子2、九九乘法表。
//C语言
#include<stdio.h>
#include<stdlib.h>
void main(){
for (int i = 1 ; i < 10; i++)
{
for(int j = 1; j < i, j ++)//(这里是嵌套循环,就是循环里加循环)
{
printf("%d * %d = %d",j,i,i*j)
}
}
system("pause");
}
-
例子3、 将三个数按从大到小输出。
//C语言
#include<stdio.h>
#include<stdlib.h>
void main() {
printf("请输入3个数:\n");
int a[2], i = 0;
for (i; i < 3; i++) {
scanf_s("%d", &a[i]);
}
for ( i = 0; i <2; i++) //例如:6,4,3 初始
{ //4,3,6 第一趟
for (int j = 0; j <2 - i; j++) { //3,4,6
if (a[j] > a[j+1]){
int temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
for ( i = 3; i >=0; i--)
printf("%d\t",a[i]);
system("pause");
}