第二课<顺序,选择,循环语句,函数思想,可见性(作用域)和生存期,数组>

知识点

bool,顺序,选择,循环语句,函数思想,可见性(作用域)和生存期,数组

一、条件语句

1.bool 类型

bool 只有 true 和 false 两种; 在C 语言中 0 是false ,其他非零 都是 true。
|——
在. c 文件中需要引入头文件 #include<stdbool.h>
在.cpp 文件中直接使用
|——
也可以自己构造bool 类型 :代码示例:

.c 文件
#include<stdio.h>
typedef int bool;
#define true 1
#define false 0
int main (){
bool  x = true;
return 0;
}

关系表达式:运算结果是bool 值。在这里插入图片描述

2.选择语句

根据条件判断是否执行相关语句

//if——else语句  一般不要省略花括号
//
	if(T/F){
		T执行
		}
	else{
		F执行
		}
		
//switch —— case 语句
	switch(表达式){
	case 常量值1:
		语句体1;
		break;
	case 常量体2:
		语句体2;
		break;
	...
	default:
		语句体n+1;
		break;
	}

if else;例题
//例三  交换数值
int main() {
	int a = 10, b = 20;
	int tmp = 0;
	if (a != b) tmp = a; a = b; b = tmp;
	printf("a =%d b =%d \n", a, b);
	return 0;
 }

//if 嵌套 if
int main() {
	int a = 0, b = 0;
	printf("intput two value :");
	scanf_s("%d %d", &a, &b);
	if (a != b)
		if (a > b)
		{
			printf("a>b\n");
		}
		else printf(" a < b \n");
	else printf(" a = b \n ");
	return 0;
}
//改进代码
int main() {
	char ch;
	printf("input a characher ;");
	ch = getchar();
	if (ch < 32) {
		printf("this is a control characher\n");
	}
	else if (isdigit(ch)) {
		printf("this is a digit\n");
	}
	else if (isupper(ch)) {
		printf("this is a capital letter\n");
	}
	else if (islower(ch)) {
		printf("this is a small letter\n");
	}
	else {
		printf("this is an otherlcharacher\n");
	}
	return 0;
}
//多分枝语句 if else
int main() {
	char ch;
	printf("input a character:");
	ch = getchar();
	if () {	
	}
	else if ()
	{
	}
	else if ()
	{
	}
	else if ()
	{
	}
	else {
	}
	return 0;
}

3.顺序语句

按照语句出现的顺序从主函数由上往下依次执行

4.循环语句

当条件成立时,重复执行花括号内的循环体

for(条件一; 条件二; 条件三 ){
		循环体
}

do {    //先执行,后判断
 	循环体
}while(判断条件)

while(条件){  //先判断后执行
 循环体
}

二,函数思想

通过函数将一个复杂问题拆解为若干个易解决的小任务。体现结构化程序设计由粗到精的设计思想
封装性
————
1.考虑函数名(见明知意)
2.考虑传入的参数(数量、类型)
3.考虑返回值(类型)
————
以一个个函数实现具体的小任务,以此,逐步实现某复杂问题

便于理解小例子:

老师让我去买笔,给了钱让买红笔(参数有了),我买了个红笔给了老师(返回值)

三,可见性(作用域)和生存期

可见性

标识符能够被识别的范围
如:形参或在函数内部定义的局部变量,他们的作用域都在该函数内。在函数外部定义的标识符——全局变量,作用域为从定义起至整个源文件结束。

生存期

特指程序的执行过程

标识符从程序运行开始被创建、具有空间 至程序结束、释放空间之间的时间

1.局部变量生存期:从函数被调用,到该函数执行完毕。**存放在 .stack(栈区)**在栈帧中存放
2.全局变量生存期:从程序执行前开始,到该程序执行后结束。存放在 .date(数据区)
3.动态生命期:标识符有特定的函数或运算来创建或释放。如:调用malloc()为变量分配存储空间,变量生命期开始,调用 free()释放空间或程序结束,变量生命期结束。存放在 .heap (堆区)

在这里插入图片描述

四,数组

int a[] = {1,2,3,4,5,6}; //sizeof(a) = 4x6= 24
char ch []= {'a','b'};  //sizeof(ch) = 2
int c [4];
int c [5] = {2,2,4};

心得总结

1.扎实的掌握作用域和生存期的知识,以便以后更好的理解。
2. 写好条件语句的形式,不只是给计算机运行,还需要让别人看懂。
3. bool 类型虽简单,但是搞清楚没坏处。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值