1 / 51
文档名称:

《C语言程序设计》第7章 结构与联合.ppt

格式:ppt   页数:51页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

《C语言程序设计》第7章 结构与联合.ppt

上传人:ffy51856fy 2015/10/3 文件大小:0 KB

下载得到文件列表

《C语言程序设计》第7章 结构与联合.ppt

相关文档

文档介绍

文档介绍:第七章结构与联合
——构造类型二
【例7-1】将10个学生的数学成绩由高到低排序输出。
/* example 7-1(a) 排序*/
#include<>
void main(void)
{
int i,j,k;
float score[10],temp;
printf("please enter data:");
for(i=0;i<10;i++) /* 循环*/
{
scanf("%f",&score[i]); /* 输入成绩*/
}
for(i=0;i<9;i++) /* 排序*/
{
k = i;
for(j=i+1;j<10;j++)
if(score[k]<score[j])
k = j;
if(k!=i)
{
temp = score[k]; /* 交换*/
score[k] = score[i];
score[i] = temp;
}
}
for(i=0;i<10;i++) /* 循环*/
{
printf(“%”,score[i]); /* 输出成绩*/
}
}
/* example 7-1(b) 排序*/
#include<>
void main(void)
{
int i,j,k;
long num[5],temp1; /* 定义学号一维数组*/
float score[5],temp2; /* 定义成绩一维数组*/
printf("please enter data:");
for(i=0;i<5;i++) /* 循环*/
{
scanf("%ld%f",&num[i],&score[i]); /* 输入学号和成绩*/
}
for(i=0;i<4;i++) /* 排序*/
{
k = i;
for(j=i+1;j<5;j++)
if(score[k]<score[j])
k = j;
if(k!=i)
{
temp1 = num[k]; /* 交换学号*/
num[k] = num[i];
num[i] = temp1;
temp2 = score[k]; /* 交换成绩*/
score[k] = score[i];
score[i] = temp2;
}
}
for(i=0;i<5;i++) /* 循环*/
{
printf(“%ld ”,num[i]); /* 输出学号*/
printf(“%\n”,score[i]); /* 输出成绩*/
}
}
结构和联合的概念
在数据中,经常有一些既有联系,类型又不同的数据,并且它
们之间又有一定的相关性,需要一起处理。
如:学生基本档案的数据
字段: 学号姓名性别地址分数
类型: long char[ ] char char[ ] float
C语言允许用户按自己的需要将不同的基本类型构造成一种特
殊类型,即结构和联合。
结构和联合的操作分为三个步骤:
⑴根据需要定义结构或联合类型;
⑵通过定义的类型说明变量、数组、指针;
⑶引用变量、数组元素和指针指向的对象。
结构变量
⒈结构类型的定义
格式:
struct 结构名{
type 成员项1 ;
type 成员项2 ;


type 成员项n ;
};
结构标志。
用标识符命名的结构类型名。
结构类型中所含的成员项及其类型。
struct student {
long num ;
char name[20] ;
int age ;
char add[30] ;
float score ;
};
结构的定义确定了如下两点:
⑴定义结构类型,确定结构中的成员项的名称及类型。
⑵指明该结构类型的变量在内存中的组织形式。
⒉结构变量的定义
定义结构只是确定该结构类型的名称及其成员项的组成及成员
项的类型。必须由定义的结构类型说明结构变量,才开辟相应的内
存空间以供使用。
结构变量的说明方式:
⑴定义后说明
struct student{
long num ;
char name[20] ;
int age ;
char add[30] ;
float score ;
} ;
struct student wang,zhang,liu;
用struct student 类型说明三个变量。
⑵定义结构类型时说明变量
wang,zhang,liu;
⑶无名结构方式说明变量
struct{
long num ;
char name[20] ;
int age ;
char add[30] ;
float

最近更新

《急性胰腺炎本科》课件 23页

《慢性便秘外科治疗》课件 27页

中国国际旅行社调查报告 4页

2024年玻璃微纤维隔热毡项目发展计划 74页

非典班会市公开课获奖教案省名师优质课赛课一.. 4页

镜子市公开课获奖教案省名师优质课赛课一等奖.. 4页

连读英文市公开课获奖教案省名师优质课赛课一.. 5页

赣美版美术市公开课获奖教案省名师优质课赛课.. 5页

论诗赵翼市公开课获奖教案省名师优质课赛课一.. 5页

心力衰竭的药物治疗与心脏细胞胚胎分化调控 25页

2024年500KV,760KV超高压变压器匝和超高压电.. 63页

荷花线面市公开课获奖教案省名师优质课赛课一.. 4页

老王市公开课获奖教案省名师优质课赛课一等奖.. 4页

弘扬航天精神书写中国航天发展的壮丽史诗 27页

引领未来中小学人工智能教育的机遇与挑战 22页

高端数控机床项目商业计划书 7页

五年级赞美老师的作文 2页

简单的健康市公开课获奖教案省名师优质课赛课.. 4页

科学市公开课获奖教案省名师优质课赛课一等奖.. 5页

奇思妙想作文 5页

医药仓库管理规定4 7页

集成房屋商业计划书 5页

幼儿的数字认知发展和数学技能 19页

幼儿园的数学启蒙与认知,主题班会课件 29页

幼儿园主题班会鼓励孩子爱护小动物课件 23页

销售乳制品商业计划书 5页

布托啡诺联合其他药物治疗神经病性疼痛的效果.. 35页

海域补偿合同范本 62页

2024届北京各区高三二模语文试题分类汇编(诗歌.. 13页

电气柜改造方案 17页