while语句实现循环
while语句的一般形式如:while(表达式)语句
① 语句就是循环体。循环体只能是一个语句,可以是一个简单的语句,还可以是复合语句(用花括号括起来的若干语句)。循环体内要有改变条件的机会。
② 执行循环体的次数是由循环条件控制的,这个循环条件就是上面一般形式的“表达式”,它也称为循环条件表达式。 当此表达式的值为“真”(以非0值表示)时,就执行循环体语句,为“假”(以0表示),就不执行循环体语句。
例如
“i<=50”是一个循环条件表达式,它是一个关系表达式。它的值只能是“真”或者“假”。在执行while语句时,先检查循环条件表达式的值,当为非0值(真),就执行while语句中的循环体语句;当表达式为0(假)时,不执行循环体与君。
- while语句可以简单的记为:只有当循环条件表达式为真(即给定的条件成立),就执行循环体语句,即当条件满足,不断的重复循环体内的语句。
- while循环的特点是先判断条件表达式,后执行循环体语句。
while语句和if语句的区别是:while语句是实现循环的,是可以实现多次执行。而if语句是实现判断的,是执行一次的。
#include <stdio.h>
int main(){
int a,i;
printf("input x num:\n");
scanf("%d",&a);
while(a>0){
a/=10;
i++;
printf("a=%d,i=%d\n",a,i);
}
return 0;
}
输入:234 输出:a=23,i=1
a=2,i=2
a=0,i=3
输入:56 输出: a=5,i=1
a=0,i=2
输入:5 输出: a=0,i=1
do…while语句实现循环
do…while语句的一般形式为:
do
语句
while(表达式);
① 其中“语句”就是循环体。其先执行一次指定的循环体语句,然后判别表达式,当表达式的值为非零(“真”)时,返回重新执行循环体语句,如此反复,直到表达式的值等于0(“假”)为止,此时循环结束。若当表达式的值为零(“假”)时,循环结束。即其执行过程是:先执行循环体,然后再检查条件是否成立,若成立,再执行循环体。
- do…while语句的特点是:先无条件的执行循环体,然后判断循环条件是否成立。
**用while和do……while计算1+2+3+……+100。**
#include <stdio.h>
/*int main(){
int i=1,sum=0;
do{
sum=sum+i;
i++;
}while(i<=100);
printf("%d\n",sum);
return 0;
} */
int main(){
int i=1,sum=0;
while(i<=100){
sum=sum+i;
i++;
}
printf("%d\n",sum);
return 0;
}
用while循环实现整数求逆序。
#include <stdio.h>
int main(){
int x,a;
int b=0;
printf("输入x:\n");
scanf("%d",&x);
while(x>0){
a=x%10;//x对10求余 例如23/10 余3,将3赋值给a
// ① printf("%d",a);
b=b*10+a;
// ②printf("x=%d a=%d b=%d\n",x,a,b);
x=x/10;
}
printf("%d",b);
return 0;
}
如果是输入类似234 (不以0结尾的数字)
则输出432
如果是输入类似780、800
则输出87、8
想要输出087、008 则取消①号注释,将最下面的printf注销