while,for,do-while循环语句

                                                       while

如果我们把while翻译做“当”,那么一个while循环的意思就是:当条件满足时,不断的重复需变换体内的语句。

循环执行之前判断是否继续循环,所以由可能循环一次也没有被执行;

条件成立是循环继续的条件。

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main1() {

	//循环:将相同的代码进行书写多次

	//循环语句

	/*
	while(循环条件){
	循环语句;
	}

	//如果满足循环条件,就执行循环语句,否则就跳出循环。
	*/

	printf("开始做俯卧撑\n");
	printf("做俯卧撑\n");
	printf("做俯卧撑\n");
	printf("做俯卧撑\n");
	printf("做俯卧撑\n");
	printf("做俯卧撑\n");
	printf("做俯卧撑\n");
	printf("做俯卧撑\n");
	printf("做俯卧撑\n");
	printf("做俯卧撑\n");
	printf("做俯卧撑\n");

	 

	//循环条件:使用一个变量来保存个数count=0  count<10

	//循环语句:printf("已经做了%d个\n",1);
	//声明一个变量,保存次数

	//小王体力不行,实在做不了50个,王老师通融一下,做20个
	/*
	int count = 1;
	while (count<=50) {

		//特殊条件
		if (count > 20) {
			break;//退出循环
		}

		//循环语句 

		printf("做俯卧撑,%d\n",count);
		//更新循环变量
		count = count + 1;
	}
	*/
	//死循环:循环不会终止(在使用循环时,一定注意死循环发生)
	
	//想偷懒,王老师转过身,你少做一个
	int count = 1;
	while (count <= 30) {

		//跳过一次循环语句的特殊情况
		if (count%10==0) {
			count = count + 1;
			continue;//结束本次循环,继续下次循环
		}

		//循环语句 
		printf("做俯卧撑,%d\n", count);
		//更新循环变量
		count = count + 1;
	}
	return 0;
}

打印数字1-10,遇到8结束循环,不打印4。

#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>
int main2() {
	//在控制台打印1-10

	//定义一个变量i=1;
	int i = 1;
	//循环条件 i<=10
	while (i<=10) {
		
		//特殊情况;遇到8就停止打印
		if (i == 8) {
			break;
		}
		//遇到4,跳过打印
		if (i == 4) {
			i = i + 1;
			continue;
		}
		
		//循环语句
		printf("%-3d",i);
		//遇到5的倍数就换行,循环中可以嵌套分支语句
		if (i%3==0) {
			printf("\n");
		}
		//更新循环变量
		i = i + 1;
	 
	}
	return 0;
}

备:    break   可直接跳出循环,  continue    跳过本次循环打印下一次循环。

                                                            for循环

for循环就像一个计数循环:设定一个计数器,初始化它,然后在计数器达到某一值之前,重复执行循环体,而每执行一轮循环,计数器值以一定步进行调整,比如加1或者减1。

 <for:对于>

for(count=10;count>0;count--);

就读成:“对于一开始的count=10,当count>10时,重复做循环体,每一论循环在做完循环体内语句后,使得count--。”

<1>使用for循环打印30遍俯卧撑,并在每一次俯卧撑前写明这是第几次循环。

<2>用for循环打印1-10,遇到5的倍数跳过,遇到7结束循环。

for(i=0;i<n;i++);

则循环的次数是n,而循环结束以后,i的值是n。循环的控制变量i;是选择从0开始还是从1开始,是判断i<=n,对循环的次数,循环结束后变量的值都有影响。

#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>
int main9() {
/*
for(循环变量初始化;循环条件;更新循环变量){
循环体
}
*/
	//打印30遍“俯卧撑”
	int count = 1;
	while (count <= 30) {
		printf("第%d个俯卧撑\n",count);
		//更新循环变量
		count = count + 1;
	}

	//使用for循环修改
	
	for (int count = 1; count <= 30; count++) {
		//循环体
		printf("第%d个俯卧撑\n", count);
	}

	//打印1-10所有数字
	for (int i=1;i<10;i++) {
		//如果遇到5的倍数,就跳过
		if (i%5==0) {
			continue;
		}
		//遇到7就结束循环
		if (i == 7) {
			break;//终止循环
		}
		printf("%d",i);
	}
	return 0;
}

<1>打印1-100之家 所有的偶数

<>打印100-999之间所有的质数

<>求1+2+3+4+.......+100的和并打印出来。

#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>
int main10() {
	//打印1-100之间所有的偶数
	/*
	for (int num=1;num<=100;num++) {
		//判断是否是偶数
		if (num % 2 == 0) {
			printf("%d是偶数\n", num);
		}
	}
	*/
	/*
	for(int num=2;num<=100;num=num+2){
	printf("%d是偶数\n",num);
	}
	*/
	//打印100-999之间所有的质数
	for (int num = 100; num <= 999; num++) {
		//添加一个标识位  
		int flag = -1;
		 
		//判断是否质数
		for (int i = 2; i < num; i++) {
			//条件
			if (num % i == 0) {
				flag = 0;
				break;//结束内层循环
			}
		}
		//通过标识符进行判断
		if (flag == -1) {
			printf("%d是质数", num);
		}
	}

	//求和1+2+3+4+...+100
	//声明一个变量保存结果
	int sum = 0;
	for (int i = 1; i <=100; i++) {
		if (i % 2 == 1) {
			sum = sum + i;
		}
	}
	printf("sum=%d\n",sum);
	return 0;
}

《备:for(;条件;)==while(条件)》

                                              do-while  循环

在进入循环的时候不做检查,而是在执行完一轮循环的代码之后,再来检查循环的条件是否满足,如果满足则继续下一轮循环,不满足则结束循环。

                                               两种循环

do-while循环输出和while循环很像,区别是在循环体执行结束的时候才来判断条件。也就是说无论如何,循环都会执行至少一遍然后再来判断条件。与while循环相同的是,条件满足时执行循环,条件不满足时结束循环。

提醒用户输入考试成绩,判断是否及格,只能考三次。

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main11() {
	/*
	do {
		//循环体
	} while (循环表达式);
	*/
	/*
	//使用do_while求和1+2+3+4+...+100
	int sum = 0;
	//循环变量
	int i = 1;
	do {
		sum = sum + i;
		i++;
	} while (i<=100);//先执行,后判断  1+
	printf("sum=%d\n",sum);
	*/
	/*
	sum=0;
	i=1;
	while(i<=100){//先判断后执行 0+
	sum=sum+i;
	i++;
	}
	printf("sum=%d\n",sum);

	*/
	
	//输入考试成绩,判断是否及格,最多只能考三次
	int score = 0;
	int count = 1;
	do {
		printf("第%d次考试成绩\n",count);
		printf("输入考试成绩:");
		scanf("%d",&score);
		if (score >= 60) {
			printf("恭喜您,考试通过!");
			break;
		}
		//更新循环变量
		count=count+1;
	} while (count <= 3);
     
	/*
	int score = 0;
	int count = 1;
	printf("第%d次考试成绩\n", count);
	printf("输入考试成绩:");
	scanf("%d", &score);
	while (count < 3) {
		if (score >= 60) {
			printf("恭喜您,考试通过!");
			break;
		}
		count++;
		printf("第%d次考试成绩\n", count);
		printf("输入考试成绩:");
	}
	*/
	return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值