结构体数组]用结构数组建立一张班级成绩单,包括每个学生的学号、姓名、成绩(C语言)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
题目:
[实验案例2:结构体数组]
用结构数组建立一张班级成绩单,包括每个学生的学号、姓名、成绩。用函数编程实现下列功能:
1. 输入每个学生的各项信息;
2. 输出每个学生的各项信息;
3. 按照学生的成绩项进行降序排序。
[实验指导]
先定义结构体,再定义输入函数、排序函数和显示函数。用主函数分别调用这些函数。
代码:
/* 用结构数组定义输入、排序和输出每个学生的信息,文件名sy9_2.c */
#include <stdio.h>
#define N 3struct Stu {long id; /* 学生编号*/char name[20]; /* 名称 */float score; /* 成绩 */
};void input( struct Stu *p ,int n);
void sort( struct Stu *p ,int n);
void display( struct Stu *p ,int n);
int main( )
{printf("请输入3个学生的信息:\n") ;struct Stu info[N];input(info,N); /*结构体数组名作为实参 */display( &info[0] ,N); sort(info,N);display(info,N);return 0;
}void input(struct Stu *p,int n) /*输入结构体数组各元素的成员的值 */
{ int i;float temp;for(i=0;i<n;i++)
{printf("请输入编号:");scanf("%ld", &p[i].id );printf("请输入姓名:");scanf("%s", (p+i)->name );printf("请输入成绩:");scanf("%f", &temp); (*(p+i)).score =temp; printf("\n");}
}void sort(struct Stu *p,int n) /*对成绩用选择法进行降序排序 */
{ int i,j;
struct Stu t;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if((p+i)->score<(p+j)->score){t=*(p+i);*(p+i)=*(p+j);*(p+j)=t;}
}void display(struct Stu *p,int n) /*显示结构体数组元素的成员的值 */
{int i;for(i=0;i<n;i++)
{printf("编号为:%ld\t", (*(p+i)).id );printf("姓名为:%s\t", (p+i)->name );printf("成绩为:%.2f\n", p[i].score );}
}
结果:
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了结构体数组。
结构体数组]用结构数组建立一张班级成绩单,包括每个学生的学号、姓名、成绩(C语言)相关推荐
- C 用单向链表建立一张班级成绩单,包括每个学生的学号、姓名、英语、高等数学、普通物理、C语言程序设计4门课程的成绩。实现以下功能,并提供菜单选项:(只实现了部分功能)
用单向链表建立一张班级成绩单,包括每个学生的学号.姓名.英语.高等数学.普通物理.C语言程序设计4门课程的成绩.实现以下功能,并提供菜单选项: 0.退出 1.输入每个学生的各项信息 2.输出每个学生的 ...
- C/C++结构体struct 与结构体数组和枚举型enum的结合使用
C/C++结构体struct 与结构体数组和枚举型enum的结合使用 #include "stdafx.h" #include <string> #include &l ...
- 结构体自动化转为char数组的实现
结构体自动化转换为char数组这个需求,来自于一个最近开发的一个项目,在项目开发过程中遇到一个小问题,需要将各种结构体拷贝到char数组中,这对于一个简单的结构体来说是很简单的事情,比如下面这个只有整 ...
- (原创)结构体自动化转为char数组的实现
结构体自动化转换为char数组这个需求,来自于一个最近开发的一个项目,在项目开发过程中遇到一个小问题,需要将各种结构体拷贝到char数组中,这对于一个简单的结构体来说是很简单的事情,比如下面这个只有整 ...
- C语言结构体及函数传递数组參数演示样例
C语言结构体及函数传递数组參数演示样例 注:makeSphere()函数返回Sphere结构体,main函数中.调用makeSphere()函数,传递的第一个參数为数组,传递的数组作为指针. post ...
- Golang——结构体创建与初始化、结构体与数组、结构体与切片、结构体与map、结构体作为函数参数、结构体方法、结构体方法继承
结构体: 结构体是由一系列具有相同类型或不同类型的数据构成的数据集合 结构体可以很好的管理一批有联系的数据,使用结构体可以提高程序的易读性,类似于Java的类一样 不能在结构体直接赋值 字段名必须唯一 ...
- C语言学习笔记---结构体中的字符数组和字符指针
在结构体中可以使用字符数组来存储字符串,也可以使用字符指针来存储字符串.比如: struct str{char s1[5];char s2[5];};struct str str1= {" ...
- c语言嵌套结构体数组,第22节 C语言结构体之结构体嵌套、结构体指针与结构体数组的代码实现...
结构体 #include //第一步 struct Student { //学号 int no; //姓名 char name[20]; //性别 char sex[10]; //成绩 double ...
- C++结构体(结构体创建,结构体数组,结构体指针,结构体嵌套结构体,结构体做函数参数,const变量使用)
C++结构体(结构体创建,结构体数组,结构体指针,结构体嵌套结构体,结构体做函数参数,const变量使用) 目录 C++结构体(结构体创建,结构体数组,结构体指针,结构体嵌套结构体,结构体做函数参数, ...
最新文章
- Psychz租用Switch公司两个数据中心的空间
- 「初步」Spring与commons的BeanUtil.copyProperties
- .net 反射调用私有变量
- UpdateData( )
- 球迷 如何在Linux纯命令行玩转谷歌浏览器,边看欧洲杯,边看足球宝贝
- xmos驱动_独家!XMOS发表最新Xcore.ai“跨界处理器”
- 计算机二级数据库系统知识点,2020年全国计算机二级Access复习知识点:分布式数据库系统...
- linux服务器安装补丁包,Linux下Web服务器环境搭建LNMP一键安装包 v2.6[20141224更新] | 系统运维...
- 电机控制-H 桥电路 控制方式简单解析
- 图片降噪DeNoise AI
- Tableau安装详解及密钥申请
- 数学问题:矩阵运算法则及矩阵求导
- 一见钟情 歌词 翻译
- Centos7 配置IP地址(动态或者静态)
- 小学计算机网络信息安全教案,黑教版信息技术五年级上册第十五课《网络信息安全》教案.doc...
- P1551 亲戚 (并查集)
- input标签绑定click事件无反应
- 【Python入门】Python的Dict容器一
- python俩种方法画日本国旗
- linux eda软件下载,立创EDA V6.4.7 Linux版
热门文章
- 硕士研究生统考计算机专业考试科目,全国硕士研究生入学统一考试统考科目说明...
- 现代教育技术计算机网络试题及答案,《现代教育技术》期末复习题及答案
- 恢复误删用户桌面进程导致桌面上的图标和任务栏
- 正确的判断源于独立思考
- js获取当前时间字符串 格式yyyy-MM-dd HH:MM:SS
- E. Split Into Two Sets(染色法判断二分图)
- 用友U8案例教程生产订单前台操作
- 你需要忘记失去的,感激拥有的,和期待将至的
- 【FND】EBS创建子请求
- 洛谷P2341(Tarjan+缩点)