while 循环
while(x>0){
x/=10;
n++;
}
{.....}内的就是循环体 循环体内要有改变条件的机会(否则会陷入死循环)
while循环的意思就是:当条件满足时,不断地重复循环体内的语句
在面对不同的题目,进行验证(通常使用边界数字)如:有效范围两端的数据,特殊的倍数等
- 个位数
- 10
- 0
- 负数
do while 循环
执行完一轮后在判断是否满足条件,如果满足则继续下一轮的循环,不满足就结束循环。
结构:
do
{
<循环体语句>
}while(<循环条件>);
for 循环
引例:n的阶乘 (n! = 1 × 2 × 3 × ...... × n)
写一个程序,输入n,输出n的阶乘
1、用while循环
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
int i = 1,
int fact = 1;
while(i<=n){
fact *= i;
i++;
}
printf("%d! = %d",n,fact);
return 0;
}
2、for 循环
#include <stdio.h>
int main()
{
int n;
scanf("%d",&n);
int fact = 1;
for(int i=1;i<=n;i++){
fact *= i;
}
printf("%d! = %d",n,fact);
return 0;
}
for 循环的次数都是n次。
for(初始条件;循环继续的条件;循环每一轮都要做的动作);
for(count=10;count>0;count--);
意思就是对于一开始的count=10,当count>0时,重复做循环体,每一轮循环在做完循环体内的动作后,使count++。
小套路:
1、在求和的程序中,记录结果的变量应该初始化为0,而做求积的变量时,记录结果的变量应该初始化为1。
2、循环选择tips:如果有固定次数用for
如果必须执行一次用do-while
其他情况用while