c语言-数据类型-构造类型

    利用计算机存处理单一的数据是比较容易,比如一个人的某一科成绩,直接创建一个变量存储相应的分数就可以了,但是要同时处理多个科目的时候,这时候就有点麻烦了,同时创建多个变量存储多个科目这样子显得有点奇怪不是么?假设一个人有5个科目的成绩要存储,一个班50个人就得要有250个变量来存储分数,光一个班级就得用掉这么多个变量,变量一多起来的话就很容易变量名字冲突了,而且这样索引起来也是有点麻烦的,再说这样也不能很好的表示各个变量之间的结构关系。于是数据构造类型就出现了。

    在c语言的数据类型中,构造类型是由基本类型构成的,最基本的构造类型就是数组,数组是由同一种数值类型组成的,好比说有位同学的分数这样表示scores = [56,54,43,35,60],然后再用另一个变量表示科目subject = [‘数学’,“语文”,“英语”,“物理”,“历史”],(在c语法中,用两个框一左一后把数据框起来,用来表示数组,并且各种不同的数组用逗号隔开,被分号包围的是字符串,并且这些符号必须是西文输入的,也就是用英文输入法输进来的),这样一一对应的话不就表示出了对应科目的成绩了吗。数组就是同一种数据类型元素组成的,元素之间用下标区分开来,比较复杂的是,下标是以0开始数的,这点刚开始很难适应。

    其实用数组还不是特别好的表示名字,科目,分数之间的关系,因为在这里人的名字的层次是在科目和分数之上的,用数组就要用两次名字。于是人们用结构体把科目、分数打包起来。然后再给结构体命名字,这样子结构层次就很明显了(其实在别的高级语言中用字典更合适)。结构体不仅可以包含数组,还可以包含基本类型的变量。

    还有一种是共用体,与结构体类似。多个不同变量使用同一个结构体,并且各变量均可以使用、修改结构体的数据,这就好像那位同学有多个名字,但是无论名字怎么变,都是那些分数。

   枚举类型我接触的不多,所以就直接贴上百度百科的说明:在C语言等计算机编程语言中,它是一种构造数据类型。枚举类型用于声明一组命名的常数,当一个变量有几种可能的取值时,可以将它定义为枚举类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值