C语言学习 18-11-6

1.枚举类型

1.) 关键字 enum
2.) 声明一个枚举类型

enum AA {ONE, TWO, THREE};
enum BB {FOUR, FIVE=100, SIX};
typedef enum CC {SEVEN, EIGHT, NINE} C;

其中的ONE表示为0,TWO表示为1,THREE表示为2,以下类同。
注意:FIVE表示为100,SIX表示为101。
3.) 声明一个对象

enum AA a = ONE;
C c = SEVEN;

2.联合体

1.) 关键字 union
2.) 声明一个联合体

union AA				typedef union BB
{					{
	int a;					int a;
	char b;					char b;
	short c;				short c;
};					}B;

3.) 联合体的大小
联合体内的所有元素共享同一个空间,该空间为联合体中所占空间最大的类型所占的空间。
例: AA aa; aa.a = 1; printf("%d\n", aa.b);
结果为:1
AA aa; aa.b = 1; printf("%d\n", aa.a);
结果为:乱码 原因是只有小端的字节存储 0000 0001,其他字节为空,因此会输出乱码。

3.递归函数

1.) 递归函数是指自己调用自己的函数
2.) 使用递归函数完成某数的阶乘

int Factorial(int num)
{
	if(1 == num)
		return 1;

	return num * Factorial(num-1);
}

3.) 斐波那契数列
斐波那契数列是指这样的数列:
1 2 3 4 5 6 7 8 9
1 1 2 3 5 8 13 21 34
使用递归函数完成斐波那契数列:

int FBNQF(int num)
{
	if(2 >= num)
		return 1;

	return FBNQF(num-2) + FBNQF(num-1);
}

使用循环的方法完成斐波那契数列:

int FBNQX(int num)
{
	int first = 1;
	int second = 1;
	int sum = 0;
	int i;
	for(i=3; i<=num; i++)
	{
		sum = first + second;
		first = second;
		second = sum;
	}

	return sum;
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值