#include<stdio.h>
int main()
{
int x;
int n = 0;
scanf("%d", &x);
n++;
x /= 10;
while(x > 0)
{
n++;
x /= 10;
}
printf("%d\n", n);
return 0;
}
do…while循环的格式:
do {
<循环体>
} while (条件成立);
#include<stdio.h>
int main()
{
int x;
int n = 0;
scanf("%d", &x);
do
{
n++;
x /= 10;
} while(x > 0);
printf("%d\n", n);
return 0;
}
for循环的格式:
for (初始条件;循环条件;循环每一轮的增量) {
<循环体>
}
#include<stdio.h>
int main()
{
// 初始化
int i = 1;
int n;
int fact = 1;
// 读取n的值
printf("请输入你要计算的n的值:");
scanf("%d", &n);
// FOR循环
for (i = 1; i <= n; i++)
{
fact *= i;
}
printf("%d的阶乘为:%d", n, fact);
return 0;
}
while循环、do…while循环和for循环的区别与联系:
(1)while循环首先会判断条件是否成立,如果不成立则一次都不会去执行。
(2)do…while循环无论条件满足与否,都会先执行一次循环体,之后再判断条件是否成立。
(3)for循环类似于计数器,就是计数循环。对于累加求和的问题,要设置结果变量为0;如果是累加求和的问题,要设置结果变量为1。
(4)for (;循环条件;) == while (循环条件)。
(5)循环有固定次数的时候用for循环,程序必须执行一次用do…while循环,其余的使用while循环。