C语言三大结构

顺序结构

顺序结构顾名思义就是按照顺序写的程序,所有语句按照线性顺序依次执行。
比如:

#include<stdio.h>
int main()
{
  int a = 0;
  a += 1;
  printf("a = %d\n",a);
  return 0;
}

定义了一个整型变量a并且初始化赋值为0,随后a加1,并且打印输出a的值,得到如下结果:
在这里插入图片描述,这就是顺序结构。
从进入main函数开始程序一行一行编译执行

选择结构

生活中我们根据自身的条件进而选择适合我们的结果,c语言当中也有选择。

1.if语句

单分支语句

if(条件表达式)
   语句1;
else
   语句2;

如果条件满足条件表达式,则会执行语句1不会执行语句2,否则只会执行语句2。

#include<stdio.h>
int main()
{
	int b = 10;
	if (b == 10)
	{
		printf("等于!\n");
	}
	else {
		printf("不等于!\n");
	}
	return 0;
}

多分支语句

if(条件表达式1)
   语句1;
 else if(条件表达式2)
   语句2;
 else
   语句3;

首先判断条件是否满足条件表达式1,如果满足执行语句1,若不满足则判断是否满足条件表达式2,若满足则执行语句2,不满足则直接执行语句3。

#include<stdio.h>
int main()
{
	int b = 10;
	if (b > 10)
	{
		printf("大于!\n");
	}
	else if(b < 10){
		printf("小于!\n");
	}
	else
	{
		printf("等于!\n");
	}
	return 0;
}

在多分支语句中若存在多个if和多个else时,适用就近原则
在这里插入图片描述
第一个else会跟它离得最近的if进行结合。

其中条件表达式可以是赋值语句,条件表达式只有两种情况:零与非零
在这里插入图片描述
首先定义整型变量a并赋值为0,if语句中的表达式是对a进行赋值,说明此条件表达式一直为真。

2.switch语句

switch 是“开关”的意思,它也是一种“选择”语句,但它的用法非常简单。switch 是多分支选择语句。说得通俗点,多分支就是多个 if。
在这里插入图片描述
例如我们在上述程序当中想输出今天是周一,我们只需要输入数字1即可,那么为什么会继续输出后面本不该输出的呢?在这里插入图片描述
case相当于入口告诉你往哪走,但是并没有给你出口,而break正好告诉你了出口在哪里。
switch中的default是没有找到满足条件的语句进而执行。default可以放在switch任意位置。没有排版上的先后顺序。
在这里插入图片描述

循环结构

1.while循环
while(表达式)
{ 
  语句1;
}

如果表达式为真,while语句就会一直执行下去,直到表达式为假。

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

这段代码会打印数字1~100。
在while语句中能让程序停下来不只是不满足while中的条件表达式,也可以使用break跳出循环体。满足一定的条件,break可以立即跳出循环体。进而执行后面的语句。
在这里插入图片描述
当然,如果你不想让某个语句执行,也可以使用continue操作,continue是结束本次循环,进行下一次循环。
在这里插入图片描述
在本程序中,当i等于⑤的时候,执行continue语句 跳出了本次循环,下面的语句不会执行进入下一次循环,所以5是不会打印在屏幕当中的。

2.do while循环

do while循环和while思想一致,都是判断是否满足表达式,不满足则退出。但是do while先执行再判断,所以执行次数会笔while多一次。
在这里插入图片描述

3.for循环
for(表达式1;表达式2;表达式3)
      语句;

表达式1为初始化循环变量。
表达式2为条件判断,循环的出口
表达式3为循环变量的调整
for循环语句当中循环变量初始化可以省略,前提是在前面已经初始化并赋值。循环变量的调整也可以省略,放到循环体中执行,
在这里插入图片描述
当然break和continue在for循环当中也常用。
在这里插入图片描述
注:本次知识分享技术了哦,如有错误欢迎大佬指正,我们一起学习一起进步呀

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值