(篇十)用结构体数组处理学生成绩、结构体类型函数求平均值
文章目录
- 一、结构体变量
- 二、用结构体数组处理学生成绩
- 三、结构体类型函数求平均值
用C语言学好结构化编程逻辑!本篇主要分析结构体数组和结构体类型的函数,对于二级C语言来说,主要是考处理学生多个成绩上和求平均值上。两个实例的参考代码里面都有相应的注释,就不在外面分析了
一、结构体变量
C语言结构体(Struct)从本质上讲是一种自定义的数据类型,只不过这种数据类型比较复杂,是由 int、char、float 等基本类型组成的。你可以认为结构体是一种聚合类型。
在实际开发中,我们可以将一组类型不同的、但是用来描述同一件事物的变量放到结构体中。例如,在校学生有姓名、年龄、身高、成绩等属性,学了结构体后,我们就不需要再定义多个变量了,将它们都放到结构体中即可。
二、用结构体数组处理学生成绩
1、参考代码:
#include <stdio.h>
#define N 5
int main()
{struct student{char number[7];char name[7];int age;float score[3];};int i;struct student s[N]= { {"130101","Lily",20,78,86,66},{"130105","Poul",18,85,92,66},{"134522","Dev",16,83,83,66},{"103247","Jaun",21,75,94,66},{"130105","Chen",23,96,72,66} };printf(" 学号 姓名 年龄 数学 语文 英语\n");for(i=0; i<N; i++){printf("%6s %6s %4d %6.1f %5.1f %5.1f\n",s[i].number, s[i].name, s[i].age, s[i].score[0], s[i].score[1], s[i].score[2]);}getchar();
}
2、参考结果:
三、结构体类型函数求平均值
1、参考代码:
#include <stdio.h>
#define N 5
struct student{char number[7];char name[7];int age;float score[3];
};
struct score average(struct student *p, int n); //申明结构体类型函数 struct score{float sx; //数学,语文,英语 float yw;float yy;
};main()
{struct student s[N]= { {"130101","Lily",20,78,86,66},{"130105","Poul",18,85,92,66},{"134522","Dev",16,83,83,66},{"103247","Jaun",21,75,94,66},{"130105","Chen",23,96,72,66} };struct score as;as=average(s,5); //传入结构体数组和学生个数printf("数学平均成绩:%4.1f\n",as.sx);printf("语文平均成绩:%4.1f\n",as.yw); printf("英语平均成绩:%4.1f\n",as.yy); getchar();
}struct score average(struct student * p, int n) //结构体类型函数,接受结构体类型数组和学生个数 ,用于返回结构日类型数组s
{struct score s= {0,0,0}; //结构体类型数组赋初值 int i;for(i=0; i<n; i++){s.sx+= (p+i)->score[0]; //利用线性链表,指针每向右移动 i 个,将其内的score数组内的语数英成绩加到对应的s.sx, s.yw, s.yy上 s.yw+= (p+i)->score[1];s.yy+= (p+i)->score[2];}s.sx /= 5; //将总分除5求得平均值 s.yw /= 5;s.yy /= 5;return s; //返回结构体数组 struct student s
}
2、参考结果:
(篇十)用结构体数组处理学生成绩、结构体类型函数求平均值相关推荐
- 有一个一维数组,存10个学生成绩,写一个函数求最高分,最低分,平均分
由于函数返回一个值,定义全局变量max和min,定义一个函数,函数中改变max和 min的值,返回平均值,最终达到目 #include<stdio.h> float max=0,min=0 ...
- 用结构体数组存储学生信息,输入学生学号,查询相应的成绩
用结构体数组存储学生信息,输入学生学号,查询相应的成绩 主要是熟练一下结构体的运用,思路:先存储学生信息,然后做相应的查询,在存储过程中,设置以#为结束标志,在查找过程中,同样以#为结束标志,这里用到 ...
- 【C语言习题】构造体数组:构造“学生成绩”结构体
题目内容:构造"学生成绩"结构体(要求成员有学号.姓名.性别.成绩等),用此类型定义数组,并实现该数组中数据的输入和输出. 个人解法如下: #define _CRT_SECURE_ ...
- C语言结构体数组,结构体数组的定义,结构体数组的输出,结构体的应用
结构体数组 结构体数组的定义: 结构体数组格式:声明变量类型 数组名称[数组长度] //定义一个结构体数组名为a,它里面包含有5个元素,每一个元素都是一个结构体变量 Wor a[5]={}; #inc ...
- 【结构体】 结构体引用、结构体数组指针、包含结构的结构体
目录 一.概念.变量的定义 初识结构体 结构体变量的定义.引用结构体类型的初始化 二.结构体的数组 认识结构体数组 初始化结构体数组 三.结构体指针 初识结构体指针 指向结构体数组的指针 结构体作为函 ...
- [转载] JAVA数组实现学生成绩统计
参考链接: Java程序的输出 20(继承) 一.项目名称 数组实现学生成绩统计 二.项目描述 1.项目简介: 由用户输入学生人数与名字,并定义当前学期课程数与课程名,并分别录入每位学生每门课程成绩, ...
- C语言汇总学生成绩,c语言用二维数组统计学生成绩.doc
c语言用二维数组统计学生成绩 # include /*定义一个求每门课平均成绩的函数AverageCourse 它的形参一个是二维数组,用来传递学生成绩: 一个是指针变量(数组名),存放每门课的平均成 ...
- (c语言 )输入10个学生5门课的成绩,分别用函数求:每个学生平均分;每门课的平均分;
c语言 输入10个学生5门课的成绩,分别用函数求: 每个学生平均分: 每门课的平均分: #include <stdio.h> #include<math.h>float Row ...
- C语言习题:输入10个学生5门课的成绩,分别用函数求:①每个学生平均分;②每门课的平均分;③找出所有分数中最高分
初学C语言,然后遇到一题: 输入10个学生5门课的成绩,分别用函数求:①每个学生平均分:②每门课的平均分:③找出所有分数中最高分 直接上代碼 注:自定义函数(xpj,kpj,maxj)我直接放在最前面 ...
最新文章
- 计算机科学 生物技术,计算机科学(Computer Science)简介
- DSP5509项目之用FFT识别钢琴音调(1)
- eclipse和idea代码通用吗_python能在苹果手机上运行吗
- P2324 骑士精神
- 移动端适配方案(上)
- ASP.NET生成验证码
- python库numpy的reshape的终极解释
- opencv 最大内接矩形_OpenCV之二值图像分析 – 寻找最大内接圆
- 测试后台管理系统思路和方法
- Jumpserver docker部署及踩坑
- 有关人工智能方面的调研报告
- Asp .NetCore 支付宝网页授权登录
- ggplot2 画图 X 轴排序问题
- 交换机和路由器的区别_一文读懂交换机和路由器的区别
- 产品分析报告—年轻人的体育社区—虎扑
- 拜读近五年UT Austin Villa发表的RoboCup仿真3D论文
- c语言 百度文库,百度文库C语言专本辅导第一二章.doc
- C# 集合-并发处理
- 前端UI配色辅助HTML源码
- Safari下载文件名乱码
热门文章
- elementui 自定义样式没生效
- 五邑大学计算机组成原理试卷,2017年五邑大学信息工程学院807微机原理与应用[专业硕士]之计算机组成原理考研强化模拟题...
- php 文章修改怎么写,PHP开发文章发布系统之后台文章修改页面
- phalapi 数据库锁_phalApi数据库操作
- python声明一个长度为n的列表_python中长度为n的列表的置换
- 计算机系统应用系统,计算机系统应用.pdf
- mysql5.7.17完全卸载_MySQL5.7完全卸载步骤详解
- 鸿蒙开发版发布会现场直播开奖记录,首发鸿蒙OS 荣耀智慧屏系列发布会直播
- 本地在线安装mysql_本地安装MySql服务
- linux wkhtmltopdf换字体,ubuntu – 更新后Wkhtmltopdf字体大小增加