有两种循环在所有的编程语言中都存在 那就是for循环和while循环 他们的使用方式不同 适用范围也不同 但是思路是一样的 今天我们就来学习while循环
一般如果我们确定循环执行的次数 以及知道初始值与终止值和步长 优先使用for循环 不确定次数的情况就使用while循环。
举个例子 小明的学校周三和周五都有体育课 周三体育课上老师要小明围着操场跑5圈 周五的体育课上老师要小明绕着操场跑圈 跑到体育老师指定的位置停下来。
周三体育课小明要跑的是5圈 已经确定的次数 所以我们优先使用for循环。
周五体育课上小明不知道要跑多少圈 跑到老师指定的位置 所以使用while循环。
while循环的格式如下
C
while(条件) 满足条件执行的代码 }
python
while 条件: 满足条件执行的代码
我们以小明抄写5遍名字为例
C
#include iostream using namespace std; int main() int a while (a 0) cout 小明 endl; a--; return 0; }
python
a 5 while a 0: print( 小明 ) a - 1
死循环是指循环里面的条件一直成立的循环 例如
C
#include iostream using namespace std; int main() int a while (a 0) cout 小明 endl; return 0; }
python
a 5 while a 0: print( 小明 )
上面两段代码中 变量a的值一直没有改变 都是5 所以 “a 0” 这个条件会一直成立 循环就不会停下来 这种循环称为死循环 使用break可以跳出循环 结束死循环。
例题 猜数字 小明和小红在玩猜数字的游戏 小红想一个数字 小明来猜 如果猜的数比想的数大 小红会说你的数字大了 如果猜的数字比想的数小 小红会说你的数字小了 如果猜对了 小红会说你猜对了。没有猜对之前小明会一直猜下去。请你写一个程序 模拟小明和小红猜数字的流程。
C
#include iostream using namespace std; int main() int number, a; cin number; while (true) cin a; if (a number) cout 恭喜你 猜对了 endl; break; else if (a number) cout 你的数字大了 endl; else cout 你的数字小了 endl; return 0; }
python
number int(input( )) while True: a int(input( )) if a number: print( 恭喜你猜对了 ) break elif a number: print( 你猜的数字大了 ) else: print( 你猜的数字小了 )练习题1 将猜数字中小明猜对答案使用的次数打印出来 例如小明用了10次 在程序的最后打印你使用了10次猜对了。 练习题2 编写一个程序 输入6位密码(6位密码为555555) 密码正确后提示“密码输入正确 正进入系统!〞;输入错误 输出 “密码输入错误 您己经输入*次〞密码输错6次后输出 “您的卡将被锁死 请和发卡行联系〞



