萌导航

9.2C语言结构体数组

作者: 小胖手 来源: 怪哈哈网 日期: 2015-09-29 10:18:13 人气: -

结构体数组的每一个元素都是结构体。在实际应用中,经常用结构体数组来表示一个拥有相同数据结构的群体,比如一个班的学生,一个车间的职工等。

定义结构体数组和定义结构体变量的方式类似,例如:

  1. struct stu{
  2. char *name;
  3. int num;
  4. char sex;
  5. float score;
  6. }class[5];

表示该班级有5个学生。

结构体数组可以初始化赋值,例如:

  1. struct stu{
  2. char *name;
  3. int num;
  4. char sex;
  5. float score;
  6. }class[5] = {
  7. {"Li ping", 5, 'M', 45},
  8. {"Zhang ping", 4, 'M', 62.5},
  9. {"He fang", 1, 'F', 92.5},
  10. {"Cheng ling", 2, 'F', 87},
  11. {"Wang ming", 3, 'M', 58}
  12. };

当对数组中全部元素赋值时,也可不给出数组长度。

结构体数组的使用也很简单,例如,获取“Wang ming”的成绩:

class[4].score;

【示例】计算学生的平均成绩和不及格的人数。

  1. #include <stdio.h>

  2. struct stu{
  3. char *name;
  4. int num;
  5. char sex;
  6. float score;
  7. }class[5] = {
  8. {"Li ping", 5, 'M', 45},
  9. {"Zhang ping", 4, 'M', 62.5},
  10. {"He fang", 1, 'F', 92.5},
  11. {"Cheng ling", 2, 'F', 87},
  12. {"Wang ming", 3, 'M', 58}
  13. };

  14. int main(){
  15. int i, fail_num=0;
  16. float average, sum=0;
  17. for(i=0; i<5; i++){
  18. sum += class[i].score;
  19. if(class[i].score < 60) fail_num++;
  20. }
  21. printf("sum=%.2f\naverage=%.2f\nfail_num=%d\n", sum, sum/5, fail_num);
  22. return 0;
  23. }

运行结果:
sum=345.00
average=69.00
fail_num=2



转载请注明文章来源(欢迎分享): http://www.guaihaha.com/c/5626.html

相关内容

HTML5游戏 HTML5游戏
关于怪哈哈
怪哈哈是一个集搞笑,美女,动漫,游戏,技术等为核心的综合性网站!
联系我们
商务洽谈、广告合作、友情链接、侵权举报,这些都可以联系我们哦!
关于我们 - 联系我们 - 广告服务 - 免责申明  
本站文字和图片均为严格审查筛选收藏,均收集整理于互联网,其著作权归原作者所有,如果有侵犯您权利的照片,请来信告知,我们将及时撤销相应文字和图片。
Copyright @2014-2020 怪哈哈网 All Rights Reserved。
【谢谢大家一直支持贵站!】