C语言流程控制之循环

C语言中的两种循环

while循环

while循环打印10次我爱你

循环就是可以重复同一件事情
代码:

#include<stdio.h>

int main()
{
  int data=0;//控制循环条件的变量,变量初始值最好是0
  while(data<10)//while括号里面的条件只要一直满足就会执行直到条件不满足
  {
    printf("data=%d\n",data);
    printf("我爱你\n");
    data++;//data=data+1的简便写法 
  }
return 0;
}

运行结果:
在这里插入图片描述

whlie循环的流程图

理解上面代码的流程图,理解while是怎么回事
在这里插入图片描述

while循环的练习1-100之间的数相加的和是多少

  1. 要进行100次循环
  2. 一个初始值为0的变量,用来存放最终的结果
  3. 一个循环条件
    代码:
#include<stdio.h>

int main()
{
  int data=0;//控制循环次数的变量
  int sum=0;//用来计算1-100之间和的变量
  while(data<=100)
  {
     sum=sum+data;//从0开始计算一直加data的值
     data++;//改变data的值从0直到100
  }
  printf("1-100之间的和是%d\n",sum);
return 0;
}

运行结果:
在这里插入图片描述

do while循环

就是先执行里面的代码,然后判读是否满足条件,满足就会继续执行里面的东西,不满足就是执行一次
先执行后判断
代码:

#include<stdio.h>

int main()
{
   int data=0;
  do{//先执行
    puts("this is data\n");
    data--;
   }while(data!=0);//后判断
return 0;
}

上面代码是用do while写了一个死循环
想要执行一次就把data的变量改成1就好了
运行结果:
在这里插入图片描述

for循环的使用

for循环和while循环差不多,while循环的控制语句是分开写的,for是写在了一起
代码:

#include<stdio.h>

int main()
{
	//for循环的使用
	int data;
	//  条件初始值;条件临界值;条件改变
	for(data=0;data<10;data++)
	{
		puts("我爱你");
		printf("data=%d\n",data);
	}
	return 0;
}

运行结果:
在这里插入图片描述

循环中的continue和break

break的就是直接停止全部循环

例子:捐款100000万元,一共是100个人捐款,如果捐款数到了100000停止捐款
代码:


int main()
{
	
	//break结束所有循环
	//捐款10万元,1-100人进行捐款,到了10万元退出循环
	int human;//捐款的人数
	int money=0;//捐款的总数
	int danjia;//每个人捐款多少钱
	
	for(human=1;human<=100;human++)//一共是100个人进行捐款,循环100次
	{
		puts("请问你捐款多少钱");
		scanf("%d",&danjia);
		money=money+danjia;//计算总共捐款多少钱
		if(money>=100000)
		{
	       puts("捐款到了100000元");
           break;//直接退出整个循环		   
		}
	}
	printf("一共捐款是%d\n",money);
	printf("平均每个人捐款是%.2f\n",(float)money/human);//强制专换成为小数
	return 0;
}

运行结果:3次循环捐款就到了100000万,直接退出循环
在这里插入图片描述

continue是提前结束单次循环

例子:找到100-200之间不能被3整除的数

#include<stdio.h>

int main()
{
	
	//100-200之间不被三整除的数
	int data;
	
	for(data=100;data<=200;data++)
	{
		if(data%3==0)//data%3是取余数的意思
		{
			continue;//如果满足==0就直接提前结束本次循环,直接进行下次循环
		}
		printf("%d\t",data);
	}
	
	return 0;
}

运行结果:
在这里插入图片描述

for循环的嵌套

就是在循环里面加入新的循环,和if里面的嵌套差不多
代码:

#include<stdio.h>

int main()
{
   int i;
   int j;//控制循环的条件
   int data=0;//初始化data的值
   for(i=0;i<5;i++)
   {
    for(j=0;j<3;j++)
    {
      data++;
      printf("%d\t",data);
      printf("i=%d,j=%d\n",i,j);
    }

   }
return 0;
}

运行结果:一共是循环了15次,外面i循环3次,每次i循环里面的j循环5次,
在这里插入图片描述

练习输出一个4x5的矩阵

代码:

#include<stdio.h>


int main()
{
	
	
	int i;
	int j;
	int data=0;
	
	
	for(i=1;i<=4;i++)
	{
		for(j=1;j<=5;j++)
		{
			printf("%d\t",i*j);
		}
		printf("\n");
	}
	
	return 0;
}

运行结果:
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值