C语言结构体定义.doc_第1页
C语言结构体定义.doc_第2页
C语言结构体定义.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言结构体定义文章出处: 发布时间: 2009/12/31 | 20118 次阅读 | 29次推荐 | 0条留言业界领先的TEMPO评估服务 高分段能力,高性能贴片保险丝 专为OEM设计师和工程师而设计的产品 使用安捷伦电源,赢取iPad2 Samtec连接器 完整的信号来源 每天新产品 时刻新体验 完整的15A开关模式电源 C语言中的“结构体”其实就相当于其他高级语言中的“记录”,结构体的定义方法如下:例如:Struct student int num; char name20; char sex; int age; float score; char addr30;(注意最后的分号不能省略)。其中第一行的“student”是该结构体的名称,花括号里面的内容是结构体的成员名,这是声明结构体的一般形式。也可以在声明结构体的同时对它进行初始化,例如:struct stu int num; char *nAME; char sex; float score;pupil5= 101,Tom,M,45.8, 102,Mike,M,62.5, 103,Chris,F,92.5, 104,Rose,F,87.6, 105,Nate,M,58.8;该代码中的“pupil5”称为结构体数组,它属于结构体变量,在定义该变量的同时对它进行了初始化操作。我们也可以先声明结构体,然后再对它进行初始化操作。例如:#include int main() struct student char name8; int age; char sex4; char depart20; float grade1,grade2,grade3; a; float wage; char c=Y; if(c=Y|c=y) printf(nName:); scanf(%s, ); printf(Age:); scanf(%d, &a.age); printf(Sex:); scanf(%s, a.sex); printf(Dept:); scanf(%s, a.depart); printf(Grade1:); scanf(%f, &a.grade1); printf(Grade2:); scanf(%f, &a.grade2); printf(Grade3:); scanf(%f, &a.grade3); wage=a.grade1+a.grade2+a.grade3; printf(The sum of wage is %6.2fn, wage); return 0;该程序中定义了一个名为“student”的结构体,变量名为“a”,然后再后面“if”包含的符合语句中对该结构体进行初始化。在此,我们可以看出,对结构体的初始化,只能对它里面的每个成员分别初始化。#include struct stu int num; char *name; char sex; float score;pupil5= 101,Tom,M,45.8, 102,Mike,M,62.5, 103,Chris,F,92.5, 104,Rose,F,87.6, 105,Nate,M,58.8;void avg(struct stu *ps)/ ps是数组pupil的首元素的地址 int c=0,i; float ave,s=0; for(i=0;iscore;/ps-score代表(*ps).score,表示pupil.score if(ps-score60) c+=1; printf(s=%.3fn,s); ave=s/5; printf(average=%.3fncount=%dn,ave,c);int main() struct stu *ps; ps=pupil;/数组名pupil表示数组pupil的首地址,将数组pupil的首地址赋给指针变量ps/当函数avg()调用该结构体时,用指针ps来传递pupil的地址 avg(ps);/调用函数 return 0;此程序是关于结构体指针变量作函数参数,这样可以提高程序的运行效率,程序中我们定义了一个“stu”的结构体,变量名为“pupil5”,并对其进行了初始化,在主函数中定义了一个该结构体的指针ps,将pupil赋值给ps,当函数av

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论