网站首页 > 基础教程 正文
while循环解析
当需要反复执行某些“过程”时,就可以使用 while 循环。
语法:
while (条件) {
语句 1
语句 2
… }
强烈建议,无论循环体内有几条语句,都使用{}
while适用于死循环
死循环
有些场合(比如,游戏引擎的主循环, 就是一个死循环)
更多场合,需要避免死循环。
break 的作用
跳出所在的循环
代码:
需求:1+2+3+4+…100
#include <iostream>
#include <Windows.h>
#include <string>``
using namespace std;
int main(void) {
int i = 1;
int s = 0;
while (i<=100) {
s += i;
i++;
}
cout << "s=" << s << endl; system("pause");
return 0;
}
12345678910111213141516
循环之for循环
使用场合:
在循环次数已经确定的情况下,使用 for 循环更方便
使用方法
for (表达式 1; 表达式 2;表达式 3){
循环体
}
说明:
表达式 1: 为循环做准备
表达式 2: 循环条件
表达式 3: 改变循环计数
注意:
表达式 1、表达式 2、表达式 3, 这 3 个表达式的任意一个或多个,都可以省略!
但是其中的“;”不可以省略!
for (; ; ) {
循环体
}
相当于:
while (1) {
循环体
}
for 循环的次数控制:
for (int i=0; i<10; i++) { … } //常用方式
for (int i=1; i<=10; i++) { … }
代码:
需求:使用 for 循环实现“后裔射日”
#include <iostream>
#include <Windows.h>
#include <string>
using namespace std;
//后羿射日
int main(void) {
for (int i=1; i<=9; i++) {
cout << "射击" << i << "个太阳" << endl;
}
system("pause");
return 0;
}
123456789101112
for 和 while 的选择
1)当已经确定了循环次数时,建议使用 for
2)其他情况,可以使用 for ,也可以使用 while, 建议使用 whil
do while循环解析
使用场合:
先执行一次循环体,然后再判断条件,以判定是否继续下一轮循环!
即:至少执行一次循环体!
使用方法
do {
循环体
} while (条件)
代码:使用 do-while 计算 1+2+3+…100
#include <iostream>
#include <Windows.h>
#include <string>
`int main(void) {
int s = 0;
int i = 1;
do {
s += i;
i++;
} while(i<=100);
cout << s << endl;
system("pause");
return 0;
}
12345678910111213141516
特殊用法:【在特殊的宏定义中使用】
do {
// 循环体
} while(0);
循环中的特殊控制:continue 与 break
break
结束本层循环。
continue
结束本次循环,进入一次循环
代码世界中的传送阵:goto 语句
goto语句也称为无条件转移语句,其一般格式如下: goto 语句标号; 其中语句标号是按标识符规定书写的符号, 放在某一语句行的前面,标号后加冒号(。语句标号起标识语句的作用,与goto 语句配合使用。
如: label: i++;
loop: while(x<7);
goto:loop
C语言不限制程序中使用标号的次数,但各标号不得重名。goto语句的语义是改变程序流向, 转去执行语句标号所标识的语句。
goto语句通常与条件语句配合使用。可用来实现条件转移, 构成循环,跳出循环体等功能。
但是,在结构化程序设计中一般不主张使用goto语句, 以免造成程序流程的混乱,使理解和调试程序都产生困难。
猜你喜欢
- 2024-11-11 C++经典算法问题:背包问题(迭代+递归算法)!含源码示例
- 2024-11-11 C++进阶教程:C#嵌套循环 c++嵌套循环break
- 2024-11-11 C++经典算法 穷举法 穷举算法的优点
- 2024-11-11 C++数据结构-- 递归 排序 c++使用递归函数实现全排列
- 2024-11-11 如何使用c++发送window消息通知 c++怎么发给别人
- 2024-11-11 C++ replace函数-C++字符串替换函数
- 2024-11-11 C++学习:循环练习题(一) c++循环结构例题解析
- 2024-11-11 网络编程——C++实现socket通信(TCP)
- 2024-11-11 C++ GESP 2023年6月真题 c++历年真题解析
- 2024-11-11 「C语言重点难点精讲」关键字精讲1
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)