目录
一.while 语句
1.表达格式
while(表达式)
{语句}
2.(1)while循环的特点是先判断条件表达式,后执行循环体语句。
(2)“语句”就是循环体。循环体可以是一个简单的语句,可以是复合语句(用花括号括起来的若干语句)。
(3)表达式的值为“真”(以非0值表示)时,就执行循环体语句;为“假”(以0表示)时,就不执行循环体语句,退出循环。
3.举例运算 输出十行******
#include <stdio.h>
int main()
{int i=1;
while(i<=10)
{
printf("******\n");
i++;
}
return o;
}
举例运算 输出 1.01^365
#include <stdio.h>
int main()
{int i=1;
float s=1.0;
while(i<=365)
{ s=s*1.01;
i++;
}
printf("1.01的365次方是:%.2f\n",s);
return 0;
}
输出结果为 37.78
二. do……while 语句
1.表达格式
do
语句
while(表达式);
2. do..while语句的特点是,先无条件地执行循环体,然后判断循环条件是否成立。
3.举例运算 一百以内正整数相加
#include <stdio.h>
int main()
{
int i=1,sum=0;
do
{
sum=sum+i;
i++;
}
while(i<=100);
printf("sum=%d\n",sum);
return 0;
}
结果为 5050
三.for 语句
1.for(表达式1;表达式2;表达式3)语句
2.举例运算 一百以内正整数相加
#include <stdio.h>
int main()
{
int i=1,sum=0;
for(i=1;i<=100;i++)
sum=sum+i; //实现迭代
printf("%d\n",sum);
return 0;
}
输出结果为 5050
3 (1) for语句的一般形式中的“表达式1”可以省略,此时应在for语句之前给循环变量赋初值。注意,省略表达式1时,其后的分号不能省略。如:
i=1;
for( ;i<=100;1++)
sum=sum+i;
(2)如果表达式2省略,即不判断循环条件,循环无终止地进行下去。也就是认为表达式2始终为真。
for(i=1; ;++)
sum=sum+i;
(3)表达式3也可以省略,但应另外设法保证循环能正常结束。如:
for(i=1;i<=100;)
{sum=sum+i;
i++;
}
(4)可以省略表达式1和表达式3,只有表达式2,即只给循环条件。在这种情况下,完全等同于while语句。可见for语句比while语句功能强,除了可以给出循环条件外,还可以赋初值,使循环变量自动增值等。如:
i=1;
for( ;i<=100; )
{sum=sum+i;
i++;
}
(5)3个表达式都可省略,例如:
for( ; ; ;); //相当于while(1)语句
即不设初值,不判断条件(认为表达式2为真值),循环变量不增值。无终止地执行循环体。
(6)表达式1可以是设置循环变量初值的赋值表达式,也可以是与循环变量无关的其他表达式。表达式1和表达式3可以是一个简单的表达式,也可以是逗号表达式,即包含一个以上的简单表达式,中间用逗号间隔。如:
for(i=1,sum=0;i<=100;1++)
sum=sum+i;
(7)表达式2一般是关系表达式(如i=100)或逻辑表达式(如a<b && x<y),但也可以是数值表达式或字符表达式,只要其值为非0,就执行循环体。如:
for( x=10;X;X--)
sum=sum+x;
四.break和continue语句
1.break作用:break语句可以使流程跳出switch结构;还可以用来从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句。
2.break注意:break语句只能用于循环语句和switch语句之中,而不能单独使用。
3.continue语句作用:结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。
运用举例:用continue语句提前结束本次循环,把100~200内不能被3整除的数输出
#include <stdio.h>
int main()
{int n;
for(n=100;n<=260;n++)
{if(n%3==0)
continue;
printf(" %d ",n);
}
printf("\n");
return 0;
}
区别:continue语句只结束本次循环,而非终止整个循环;break语句结束整个循环,不再判断执行循环的条件是否成立。
自己画的图就是有点报看。