嵌入式学习第四天(C语言九条语句)

程序流程结构       

1.1概述        

C语言支持最基本的三种程序运行结构:顺序结构、选择结构、循环结构。

  • 顺序结构:程序按顺序执行,不发生跳转。

  • 选择结构:依据是否满足条件,有选择的执行相应功能。

  • 循环结构:依据条件是否满足,循环多次执行某段代码。

1.2选择结构

1.2.1 if语句

        

if语句的定义:当满足条件语句时执行{}内的语句,否则不执行{}内语句。

#include <stdio.h>

int main()
{
	int a = 1;
	int b = 2;

	if (a > b) // 为真执行语句  为假不执行
	{
		printf("%d\n", a);
	}

	return 0;
}
 1.2.3if…else语句

if-else语句的定义:当满足条件语句时(条件语句结果非零)执行{}内语句,否则执行elas后的语句。

#include <stdio.h>
int main()
{
	int a = 1;
	int b = 2;

	if (a > b) 
	{
		printf("%d\n", a);
	}
	else
	{
		printf("%d\n", b);
	}
	return 0;
}
1.2.4 if…else if…else语句

 多个else if语句定义:当不满足条件1时,继续判断下一条件语句,直到满足条件语句时,进入相应语句中执行,若都不满足所有条件语句,则执行最后 else 中的语句。

#include <stdio.h>

int main()
{
	unsigned int a;
	scanf("%u", &a);

	if (a < 10)
	{
		printf("个位\n");
	}
	else if (a < 100)
	{
		printf("十位\n");
	}
	else if (a < 1000)
	{
		printf("百位\n");
	}
	else
	{
		printf("很大\n");
	}

	return 0;
}
 1.2.5三目运算符

跟 if---else同种执行结构

#include <stdio.h>

int main()
{
	int a = 10;
	int b = 20;
	int c;

	if (a > b)
	{
		c = a;
	}
	else
	{
		c = b;
	}
	printf("c1 = %d\n", c);

	a = 1;
	b = 2;
	c = ( a > b ? a : b );
	printf("c2 = %d\n", c);

	return 0;
}
 1.2.6 switch语句

 定义格式:通过表达式得出数值,若得出的数值与下面case 后的数值对应,则执行相应的语句,若没有相对应的数值则执行default 后面的语句。

switch(表达式)	//注意:没有 ”;” 号
{
case 值1: 语句1;break;   //注意:不能没有break 需跳出switch语句 否则继续  
//执行往后的case 语句 直到全部case语句执行完为止
case 值2: 语句2;break;
case 值3:{语句3;语句4;。。。;}break;  //case后的语句可以是多条语句集
。。。
default:语句5;break;//若表达式中没对应的值与之对应 则执行语句5后跳出	
}
#include <stdio.h>

int main()
{
	char c;
	c = getchar();

	switch (c) //参数只能是整型变量
	{
	case '1':
		printf("OK\n");
		break;//switch遇到break就中断了
	case '2':
		printf("not OK\n");
		break;
	default://如果上面的条件都不满足,那么执行default
		printf("are u ok?\n");
	}
	return 0;
}

1.3循环语句

  1.3.1while语句

   

 while语句的定义格式:当循环条件为逻辑0时不进入循环体;否则都会进入循环体,进行循环。

#include <stdio.h>

int main()
{
	int a = 20;
	while (a > 10)
	{
		scanf("%d", &a);
		printf("a = %d\n", a);
	}

	return 0;
}
1.3.2 do…while语句 

do-while语句的定义格式:先执行循环体,再判断循环条件,若满足条件则继续进入循环体。

注意:先执行一次循环,再判断循环条件是否满足。

#include <stdio.h>

int main()
{
	int a = 1;
	do
	{
		a++;
		printf("a = %d\n", a);
	} while (a < 10);

	return 0;
}
1.3.3 for 语句

for语句的定义格式:当表达式2为真时,执行循环体语句否则不进入循环。

for(表达式1;表达式2;表达式3) //注意表达式之间用 ”;” 隔开 括号后面没“;”

{

循环体;

}

#include <stdio.h>

int main()
{
	int i;
	int sum = 0;
	for (i = 0; i <= 100; i++)
	{
		sum += i;

	}

	printf("sum = %d\n", sum);

	return 0;
}
1.3.4跳转语句break、continue、goto
  break 语句

  在switch条件语句和循环语句中都可以使用break语句:

  • 当它出现在switch条件语句中时,作用是终止某个case并跳出switch结构。

  • 当它出现在循环语句中,作用是跳出当前内循环语句,执行后面的代码。

  • 当它出现在嵌套循环语句中,跳出最近的内循环语句,执行后面的代码

#include <stdio.h>

int main()
{
	int i = 0;
	while (1)
	{
		i++;
		printf("i = %d\n", i);

		if (i == 10)
		{
			break; //跳出while循环
		}
	}

	int flag = 0;
	int m = 0;
	int n = 0;

	for (m = 0; m < 10; m++)
	{
		for (n = 0; n < 10; n++)
		{
			if (n == 5)
			{
				flag = 1;
				break; //跳出for (n = 0; n < 10; n++)
			}
		}

		if (flag == 1)
		{
			break; //跳出for (m = 0; m < 10; m++)
		}
	}

	return 0;
}

输出结果:

i = 1
i = 2
i = 3
i = 4
i = 5
i = 6
i = 7
i = 8
i = 9
i = 10

continue语句

在循环语句中,如果希望立即终止本次循环,并执行下一次循环,此时就需要使用continue语句

#include<stdio.h>

int main()
{
	int sum = 0;           //定义变量sum

	for (int i = 1; i <= 100; i++)
	{
		if (i % 2 == 0)   //如果i是一个偶数,执行if语句中的代码
		{
			continue;      //结束本次循环
		}
		sum += i;          //实现sum和i的累加
	}

	printf("sum = %d\n", sum);

	return 0;
}
goto语句(无条件跳转,尽量少用)
#include <stdio.h>

int main()
{
	goto End; //无条件跳转到End的标识
	printf("aaaaaaaaa\n");

End:
	printf("bbbbbbbb\n");

	return 0;
}

总结:

  • C语言中的语句很多,用的最多的就是九条语句,而每条语句的用法可解决很多逻辑上的问题
  • 可练习的题目很多,针对的一些逻辑题目,需多加练习
  • 期待明天的练习!!
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值