好文档 - 专业文书写作范文服务资料分享网站

c++课件第七章 自定义数据类型共14页word资料

天下 分享 时间: 加入收藏 我要投稿 点赞

第七章 自定义数据类型

7.1 结构体类型

7.1.1 结构体的概述

一个学生的学号、姓名、性别、年龄、成绩、家庭住址

num name sex age score addr 10010 Li Fun M 18 87.5 BeiJing 声明一个新的结构体的类型: struct Student { int num;

char name[20]; char sex; int age;

float score; char addr[30];

7.1.2 结构体类型变量的定义方法及其初始化 1. 定义结构体变量的方法

(1) 先声明结构体的类型再定义变量名 Student student1,student2; (2) 声明类型的同时定义变量 struct Student { int num;

char name[20]; char sex; int age;

float score; char addr[30]; }std1,std2;

(3) 直接定义结构体类型变量 struct

{ int num;

char name[20]; char sex; int age;

float score; char addr[30]; }std1,std2;

(4) 成员也可以是一个结构体变量 struct Date

第 1 页

{ int month; int day; int year; struct Student { int num;

char name[20]; char sex; int age;

Date birthday; float score; char addr[30];

2. 结构体变量的初始化 struct Student { int num;

char name[20]; char sex; int age;

float score; char addr[30];

}stdent={10001,\

Xin\ Student student2={10002,\Li\ 7.1.3 结构体变量的引用

(1) 可以将一个结构体变量的值赋给另一个具有相同

结构的结构体变量。 student1=student2;

(2) 可以引用一个结构体变量中的一个成员的值。

student1.num=10010; \是成员运算符,它的优先级最高。

(3) 对于结构体嵌套,要逐级引用。

student1.birthday.month=11;

(4) 不能将一个结构体变量作为一个整体进行输入和

输出。

(5) 对于结构体变量的成员可以像普通变量一样进行

各种运算。

(6) 可以引用结构体变量成员的地址,也可以引用结

构体变量的地址。 cout<<&student1;

第 2 页

cout<<&student1.age;

例7.1 引用结构体变量中的成员 #include using namespace std; struct Date { int month; int day; int year; struct Student { int num;

char name[20]; char sex;

Date birthday; float score; char addr[30];

}student1,student2={10002,\Li\ void main()

student1=student2;

cout<

cout<

5/23/1982 89.5

7.1.4 结构体数组 1. 定义结构体数组 struct Student { int num;

char name[20]; char sex; int age;

float score;

第 3 页

char addr[30]; }stu[3];

Student x[8]; 2. 结构体数组的初始化

Student y[2]={{10101,\Lin\Beijing Road\

,{10102,\Fun\Shanghai Road\ 3. 结构体数组应用举例

例7.2 对候选人得票统计程序. #include using namespace std; struct Person

char name[20]; int count; void main()

{ Person leader[3]={\ int i,j;

char leader_name[20]; for(i=0;i<10;i++)

cin>>leader_name; for(j=0;j<3;j++)

if(strcmp(leader_name,leader[j].name)==0) { leader[j].count++;break;} for(i=0;i<3;i++)

cout<

第 4 页

Li:4 Zhang:3 Fun:2

7.1.5 指向结构体变量的指针 1. 通过指向结构体变量的指针引用结构体变量中的成员 例7.3 指向结构体变量的指针的应用 #include #include using namespace std; void main()

struct Student int num;

string name; char sex; float score; Student stu;

Student *p=&stu; stu.num=10301;

stu.name=\ stu.sex='F'; stu.score=89.5;

cout<

<

<<(*p).score<

cout<num<<\ <score<

\是指向运算符,即指向结构体变量运算符。 请分析以下几种运算: p->n p->n++ ++p->n

#include #include

第 5 页

c++课件第七章 自定义数据类型共14页word资料

第七章自定义数据类型7.1结构体类型7.1.1结构体的概述一个学生的学号、姓名、性别、年龄、成绩、家庭住址numnamesexagescoreaddr10010LiFunM1887.5BeiJing声明一个新的结构体的类型:st
推荐度:
点击下载文档文档为doc格式
5lqp83755i0zn011oo6h6et871df8g0197r
领取福利

微信扫码领取福利

微信扫码分享