C语言提供的循环语句:
goto
while
do-while
for
goto语句
//本身不是循环,但可以构造循环
goto格式:
goto 语句标号;//跳到前面定义的标签处
注:
最好不要使用,因其破坏了c语言但结构化(每个结构的功能尽量独立,有助于程序可读与移植性)
一般用于直接跳出多层循环,提高运行效率
结束goto语句方法:
1.break当前标签
2.使用if嵌套另一个goto语句跳出
循环:
1.初始条件
2.循环体 //重复执行的部分
3.结束条件
4.使循环趋于结束的语句
//1.初始条件
int sum;
int i = 0; //变量
//2.循环体
//重复执行的部分
sum = sum + i;
sum1 = 1 + 2
sum2 = sum1 + 3
sum3 = sum2 + 4
sum4 = sum3 + 5
......
sum = 1;
sum = sum + 2;
sum = sum + 3;
sum = sum + 4;
sum = sum + 5; // sum = sum + i;
//3.结束条件
i 走到 100
//4.使循环趋于结束的操作(语句)
i++
-----------------------------------------------------------
while语句
语法:
while (表达式)
{
语句;
}
语义:
当 表达式 判断 为真?
此时执行 语句 ,
语句执行完成后,继续 表达式 判断
如果 为真
继续 执行 语句,
直到,表达式判断为假,while结束(循环结束)
注:while后不加;,否则构成死循环
do-while
while (表达式)
{
语句;
}
语法:
do
{
循环体语句;
}while (表达式);
语义:
先执行 循环体语句,
再判断 表达式
真,继续执行 循环体语句
假,do-while结束,
程序继续往下
语法:
do-while中,while后面 有分号
区别:
1.逻辑上区别
while --先判断 后执行
do-while --先执行 后判断 //循环体始终都会被执行到,最少是一次
break 语句 和 continue 语句:
break:跳出本层循环
continue:跳出本次循环,继续下一次循环
例:回文数
打印1000以内的回文数
回文:顺序倒序输出都一样
121倒序121
147倒序741
思路:
从最后一位依次取出,在依次往前移位
int old,tmp,new;
tmp=old%10;//取出最后一位
new=new*10+tmp;//添加最后一位,并把上一次的位数前移一位
old=old/10;//舍去最后一位