- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课件制作:C/C++教材编写组
哈尔滨理工大学 计算中心
── 基于计算思维
第 1 章 初识C/C++程序设计语言
第 2 章 数据类型、运算符与表达式
第 3 章 顺序结构程序设计
第 5 章 循环结构程序设计
第 6 章 数组
第 7 章 字符串
第 8 章 指针
总复习
第 4 章 选择结构程序设计
● 课程概述
第 9 章 函数
第11章 类与对象
第12章 继承与多态
第13章 C++输入/输出流类库
第14章 异常处理
第15章 图形界面编程简介
第 10章 自定义数据类型
第 10章 自定义数据类型
3
自定义数据类型
第 10 章
● 结构体类型是把不同类型的数据组合成一个整体——掌握
● 共同体类型是将几个不同类型的变量共占一段内存(相互覆盖)
● 枚举类型仅适应于取值有限的数据
● 用typedef定义类型是用自定义名字为已有数据类型命名
4
10.1 案例剖析
● 实例:用结构体类型输出学生基本信息
问题的提出
有五名学生,每位学生都包括学号和三门课程的成绩,学号、成绩由键盘输入,求出总分,输出每位学生的所有信息
算法及程序设计分析
定义一个新的类型
可以含有多种类型的新类型为 student
新类型中有:学号( int )、三个成绩 ( float )
将五名学生定义成student类型一个一维数组变量
这样就做到了不同的数据类型具有同种结构
5
10.1 案例剖析
//ch10_1.cpp
#includeiostream
#includeiomanip
using namespace std;
#define N 5
struct student
{
int num;
float s[N];
} ;
结构体类型
struct 是关键字
student 是类型名
num、s[N] 是数据成员
可以用该类型定义变量或数组
● 实例:用结构体类型输出学生基本信息
6
10.1 案例剖析
int main()
{
student stu[5]={0};
char k[3][30]={数学,英语,计算机};
int i, j, sum[5]={0};
for(i=0; i5; i++)
{
cout输入学号:;
cinstu[i].num;
for(j=0; j3; j++)
{
cout输入stu[i].num学生的k[j]成绩:;
cinstu[i].s[j];
sum[i]=sum[i]+stu[i].s[j];
}
}
struct student
{
int num;
float s[N];
} ;
五个学生
三门成绩
7
10.1 案例剖析
cout setw(15)学号;
coutsetw(15)数学;
coutsetw(15)英语
coutsetw(15)计算机;
coutsetw(15)总分endl;
for(i=0; i5; i++)
{
coutstu[i].numsetw(15);
for(j=0; j3; j++)
{
coutstu[i].s[j]setw(15);
}
coutsum[i];
coutendl;
}
return 0;
}
8
10.2 结构体
● 结构体类型的声明
声明结构体类型的一般形式
struct [结构体类型名]
{
成员表列;
};
struct 为关键字,表示是一个“结构体类型”
结构体名:同标识符规则一样
无结构体名,称为无名结构体
成员表列:可以是基本类型的成员
也可以是结构体型的成员变量
struct student
{
int num;
float s[N];
} ;
结构体类型定义描述结构
的组织形式, 不分配内存
9
10.2 结构体
● 结构体类型的声明
成员的数据类型是结构体类型
struct date
{
int month;
int day;
int year;
} ;
struct studentq
{
int num;
char name[20];
char sex;
int age;
date birthday;
char gclass[30];
} ;
声明结构体类型名为date
声明结构体类型名studentq
三个基本类型的成员变量
结构体类型的成员变量
10
10.2 结构体
● 结构体类型
文档评论(0)