C语言基础语法循环与分支

C语言基础语法循环与分支

简介

在C语言的业务代码中充斥着大量的逻辑判断,其实大部分语言去实现一个功能也都是依赖着逻辑判断。所以简单介绍下我们要学习的C语言逻辑判断关键字:if 、else if、else、switch、white、do while、for、break、continue。

关键字

**1.关键字if 、else if、else **

#include <stdio.h> 
int main()
{
	int a = 1;
	if (a < 2)
	{
		printf("hello world");
	}
	return 0;
}
//结果:hello word
//if用来进行条件判断符合if()内条件则执行{}内的代码

else一般与if成对出现,顾名思义不符合if条件的都会进入else条件。看下面式例

#include <stdio.h> 
int main()
{
	int a = 1;
	if (a < 1)
	{
		printf("hello world1");
	}
	else
	{
	    printf("hello world2");
	}
	
	return 0;
}
//结果:hello word2
//if else成对出现当if()条件不成立则会执行eles里的内容
注意:有许多人在程序中会不写与if匹配的else,但是我觉得在项目中多处条件判断if不成立情况下不写else会引发不必要的bug。

else if的出现就是为了更多的条件判断

#include <stdio.h> 
int main()
{
	int a = 1;
	if (a < 0)
	{
		printf("hello world1");
	}
	else if(a == 1)
	{
	     printf("hello world2");
	}
    else if(a == 2)
	{
	     printf("hello world3");
	}
	else
	{
	    printf("hello world4");
	}
	
	return 0;
}
//结果:hello word3
//和if 一样依然是匹配条件执行

switch case与break这是在嵌入式开发比较重要的关键字,通过switch case与break进行状态机编程会更容易用简单的逻辑实现功能。

#include <stdio.h> 
int main()
{
	int a = 1;
    switch (a)
    {
    	case  1:
	        printf("hello world");
	        break;
		case  2:
		    printf("hello world2");
	        break;
    	default : 
			printf("hello world3");
	}

	return 0;
}
//结果hello world
//switch只能用来只能判定一个变量 ,case 是变量进行条件匹配 如果匹配则执行case下面代码,break是用来跳出switch的也就是符合条件执行后就不会继续判断,否则不写break会继续匹配下面case。

2.关键字while 、do while 、for、continue
while用法

#include <stdio.h> 
int main()
{
	int a = 0;
	while (a < 250)
	{
		a++;
		printf("%d",a);
	}

	return 0;
}
//循环打印1-250

do while 区别
#include <stdio.h> 
int main()
{
	int a = 0;
	do
	{
		a++;
		printf("%d",a);
	}while (a < 250);

	return 0;
}
//童昂循环打印1-250只不过do先执行一次才进行判断,而while()一直是先判断再循环。

for使用

#include <stdio.h> 
int main()
{
	int a = 0;
	for(int a = 0 ;a < 250 ;a++)
	{
		printf("%d",a);
	}
	return 0;
}
//结果同样是打印1-250

关于循环的用法在单片机编程中最常见就是while(1)和for(;;)他们表示死循环就是一直在循环无论是裸跑还是RTOS线程的使用都离不开死循环。

总结

循环与分支是c语言开发工作中重要的部分条件写的稍有不慎便会引起很难发现的bug,工作中可能会碰到的bug,写条件判断时建议写(1<= a)这样如果你少些了"<"编译器会提示你1是不可修改的左值(以后的帖子会介绍),有效减少bug引入。

发布了15 篇原创文章 · 获赞 1 · 访问量 532

猜你喜欢

转载自blog.csdn.net/weixin_42323243/article/details/103023787