【Day 18】while 回圈 / do...while 回圈

今天我们来看看 while 回圈吧~

while 回圈的基本语法:

while(test_Expression){

    //the body of loop
}

while 回圈一样属於前测式,执行回圈前,会先判断 test_Expression 的条件是否为真,如果为真,就会执行回圈里面的 statement,执行完再继续判断 test_Expression 的条件。如果 test_Expression 的条件为否,就不会执行 statement,直接跳出回圈。

让我们用 while 回圈写写看累加:

#include<stdio.h>
int main(){
	int i = 0, sum = 0;
	while(i < 10){
		sum += i;
		i++;
	}
	printf("sum = %d, i = %d", sum, i);
	return 0;
} 

输出结果:

会发现,for 回圈能做到的,while 回圈也能做到~
要注意的是,因为 while 後面只放条件,所以控制条件的那个变数(这里是)要记得更新!

小补充:如果写成 while 後面的小括号里条件放 1,就会变成无穷回圈~

现在来介绍 do...while 回圈~

do...while 回圈的基本语法:

do{
    //the body of loop
}while(test_Expression);

注意:while()後面是有分号的!
do...while 回圈是属於後测式回圈,他会先执行 statement 再判断 test_Expression 条件是否成立,所以,do...while 回圈至少会执行一次。
使用哪一种结构是看需求,如果是输入帐号密码,那使用 do...while 是比较理想的:先让使用者输入帐号密码,再判断所输入的帐号密码是否正确!
来看看如果是使用 do...while ,一样想要从 0 累加到 9 要怎麽写吧!

#include<stdio.h>
int main(){
	int i = 0 , sum = 0;
	do{
		sum += i;
		i++;
	}while(i < 10);
	printf("sum = %d, i = %d", sum, i);
	return 0;
} 

输出结果:

do...while 回圈是不是也很容易呢?
今天我们学了 while 回圈、do...while 回圈,为了更熟悉回圈的使用,一样也来写作业练习一下吧~

作业:输入数字,输出对应的星星。(请用 for 回圈与 while 回圈两种方法各写一次)

输出结果要像这样:

明天我们再来讨论一下作业吧~


<<:  [Day24] 实作 - 动画篇1

>>:  最後的爬虫啦~

从零开始学游戏开发:入门程序实作 Part.7 重新计分

这是 Roblox 从零开始系列,入门章节的第十三个单元,我们的游戏出现Bug了,那就是死亡後分数还...

DAY23 - 将作品发布出去吧 - 後端篇 (heroku)

为什麽选择 heroku google 的服务下面有 google cloud 可以部属 api,但...

ETA Screen (2)

SavedStateHandle 不知道大家有没有发现在「ETA Screen (1)」贴出来的 E...

Day30 Redux基础练习

以下用to do list作为练习。 Actions Action是一般的JavaScript物件。...