头歌平台——基于结构体的学生信息管理系统

news2024/11/20 2:44:08

第1关:学生信息管理系统

任务描述

本关任务:编写一个基于结构体得学生成绩信息管理系统。主要功能如下: 1. 用结构体存放所有数据。 2. 每个功能都用函数实现。 3. 输入10个学生的学号和三门课程的成绩。 4. 计算每个学生的总分。 5. 按总分从高到低排序。 6. 加上名次一列。 7. 输出最后的二维表格样式的成绩,含学号、三门课成绩、总分、名次。

请填写五个函数完成相应功能的实现。其中:

  • input_data(STU s[]):输入原始数据函数。参数作用:
  • STU s[]:用来存放10个学生信息的结构体数组。
  • calculate(STU s[]):计算总分函数。参数作用:
  • STU s[]: 用于计算总分的学生信息结构体数组。
  • sort_total(STU s[]):根据总分降序排序函数。参数作用:
  • STU s[]: 用于总分排序的学生信息结构体数组。
  • add_rank(STU s[]):增加名次列函数。参数作用:
  • STU s[]: 用于添加名次的学生信息结构体数组(已排序)。
  • print_data(STU s[]):输出二维表格样式成绩的函数。参数作用:
  • STU s[]: 待打印输出的学生信息结构体数组。
相关知识

相关知识略

编程要求

请仔细阅读右侧代码,结合相关知识,在Begin-End区域内进行代码补充,完成编写学生信息管理系统的小程序。

测试说明

平台会对你编写的代码进行测试:

测试输入: 201901 78 95 67 201902 67 65 87 201903 78 73 62 201904 70 71 60 201905 59 61 65 201906 73 90 72 201907 68 63 79 201908 55 68 71 201909 69 53 60 201910 89 95 90

预期输出:

注意:输出每一列占15个字符,且为左对齐。

typedef struct{
    int no;
    float sc[3];
    float total;
    int rank;
}STU;

void input_data(STU s[])
{
	/********** Begin **********/
 int i,n;
    for(i=0;i<10;i++)
    {
        scanf("%d",&s[i].no);
        for(n=0;n<3;n++)
        {
            scanf("%f",&s[i].sc[n]);
        }
    }







	/********** End **********/
}


void calculate(STU s[])
{
	/********** Begin **********/
int i,n;
    for(n=0;n<10;n++)
    {
        s[n].total=0;
        for(i=0;i<3;i++)
        {
            s[n].total=s[n].total+s[n].sc[i];
        }
    }







	/********** End **********/
}

void sort_total(STU s[])
{
	/********** Begin **********/
  int i,n;
    STU temp;
    for(i=0;i<10;i++)
    {
        for(n=1;n<10-i;n++)
        {
            if(s[n].total>s[n-1].total)
            {
                temp=s[n];
                s[n]=s[n-1];
                s[n-1]=temp;
            }
        }
    }







	/********** End **********/
}

void add_rank(STU s[])
{
	/********** Begin **********/
 int i,n;
    for(i=1,n=0;i<11;i++,n++)
    {
        s[n].rank=i;
    }







	/********** End **********/
}

void print_data(STU s[])
{
	/********** Begin **********/
int n;
    printf("学号:         语文:         数学:         英语:         总分:         名次:\n");
    for(n=0;n<10;n++)
    {
    if(n<9)
    {   
        printf("%-15d%-15.1f%-15.1f%-15.1f%-15.1f%d\n", s[n].no,s[n].sc[0],s[n].sc[1],s[n].sc[2],s[n].total,s[n].rank);
    }
    else
    {
        printf("%-15d%-15.1f%-15.1f%-15.1f%-15.1f%d", s[n].no,s[n].sc[0],s[n].sc[1],s[n].sc[2],s[n].total,s[n].rank);
    }
}







	/********** End **********/
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1109364.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

头歌平台——C语言之数学运算强化练习题

第1关&#xff1a;逐一挑出来 任务描述 本关需要完成一个输出某个三位数各个位上的数字的小程序。 相关知识 算数运算符 %是取模运算符&#xff0c;获得整除后的余数。 /是通过分子除以分母&#xff0c;获得整除后的整数部分。 floor floor()是返回一个浮点型的整数部分…

腾讯云服务器带宽下载速度表(附上行带宽计算方法)

腾讯云服务器公网带宽下载速度计算&#xff0c;1M公网带宽下载速度是128KB/秒&#xff0c;5M带宽下载速度是512KB/s&#xff0c;腾讯云10M带宽下载速度是1.25M/秒&#xff0c;腾讯云百科txybk.com来详细说下腾讯云服务器不同公网带宽实际下载速度以及对应的上传速度对照表&…

MySQL官方文档如何查看,MySQL中文文档

这里写自定义目录标题 MySQL官方文档如何查看MySQL中文文档 MySQL官方文档如何查看 MySQL官网地址&#xff1a;https://dev.mysql.com/doc/ 比如这里我要找InnoDB架构 MySQL中文文档 MySQL 5.1中文文档地址&#xff1a;https://www.mysqlzh.com/

头歌平台——C语言之链表练习题

第1关&#xff1a;建单向链表 任务描述 本关需要你建立一个带头结点的单向链表。 相关知识 什么是链表&#xff1f;链表和二叉树是C语言数据结构的基础和核心。 链表有多种形式&#xff0c;它可以是单链接的或者双链接的&#xff0c;可以是已排序的或未排序的&#xff0c;…

C# CodeFormer 图像(人脸面部)修复

效果 项目 代码 using Microsoft.ML.OnnxRuntime; using Microsoft.ML.OnnxRuntime.Tensors; using OpenCvSharp; using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Imaging; using System.Windows.Forms;namespace 图像修复 {p…

AArch64 TrustZone

概述 本文我们介绍了 TrustZone 技术。通过CPU内置的硬件强制隔离&#xff0c;TrustZone 提供了一种高效的全系统安全设计。 我们介绍了如下功能&#xff1a;将 TrustZone 技术添加到处理器架构中&#xff0c;内存系统对于 TrustZone 的支持以及典型的软件架构。我们还介绍了…

京东API接口助力京东ToB和ToC全面发展

目前京东企业业务已建成7大智能化采购平台&#xff0c;3大场景化产品&#xff0c;4条企业专属供应链体系&#xff0c;发布API接口200余个&#xff0c;在ToB场景的应用能力方面&#xff0c;京东企业业务在2019年还推出三款重量级的技术产品——采购ERP、神算子数据平台和采购大脑…

插入排序 算法

从第二个开始&#xff0c;从后面往前找&#xff0c;如果比其小&#xff0c;就交换&#xff0c;else 就终止 for i 1 i <n i for j i j > 0 (到第二个) j-- if < swap 下面给出源码 //对插入排序来说&#xff0c;直接从第二个元素开始template<ty…

2024北京智能科技展(世亚智博会)推动我国智能科技产业快速发展

2024北京国际智能科技展览会&#xff08;世亚智博会&#xff09; 2024 Shanghai Smart Product Expo 时间:2024年6月28-30日 地点:北京亦创国际会展中心 主题展:北京人工智能展览会|北京软件博览会 随着科技的飞速发展&#xff0c;中国正逐渐成为全球科技领域的一面旗帜。在…

官宣!软考机考模拟练习平台于10月16日至11月3日开放

软考机考模拟练习平台已经在官网公布了&#xff0c;已经报名的考生可以按照以下操作指南开始练习&#xff1a; 1、登陆网上报名平台地址&#xff0c;点击【模拟练习平台】 全国计算机技术与软件专业技术资格(水平)考试网上报名平台 2、登录 温馨提示&#xff1a;实名认证通过…

嵌入式学习笔记(59)内存管理之结构体

数据结构&#xff1a;是一门研究数据在内存中如何分布的学问。 1.5.1.最简单的数据结构&#xff1a;数组 数组的特点&#xff1a;类型相同、意义相关 数组的优势&#xff1a;数组比较简单&#xff0c;访问使用下标&#xff0c;可以随机访问&#xff08;就是可以通过下标随机…

使用crul库和R语言的下载器程序

以下是一个使用crul库和R语言的下载器程序&#xff0c;用于从下载音频。此程序使用了jshk.com.cn/get_proxy的代码。 // 导入必要的库 import ("fmt""github.com/cjlapa/crul""io""net/http""net/url""os" )// 主…

视频文件打不开?盘点4个有效方法!

“好奇怪呀&#xff0c;我将相机里的部分视频导入电脑了&#xff0c;但是这些视频都无法打开。视频文件打不开是为什么呢&#xff1f;应该怎么做才能正常播放视频呀&#xff1f;” 随着数字化媒体的普及&#xff0c;视频文件在我们的生活中扮演着越来越重要的角色。然而&#x…

一文搞定专属码的设计与开发

作者 | 木白 导读 本文将为您介绍百度码的译码技术&#xff0c;包括关键的译码流程和关键的优化手段。百度码目前已经在高考等活动中进行应用&#xff0c;在未来的发展中&#xff0c;百度码的译码技术将继续升级和完善&#xff0c;以满足更多场景的需求。百度码的译码技术将在现…

【C++】C++智能指针

​ ​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;C学习 &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 上一篇博客&#xff1a;【C】C异…

IDEA设置标签多行展示

一、打开IDEA工具 二、IDEA页面左上角File里边settings设置 三、找到Editor --》 General --》 Editor tabs 四、取消单行展示选项 五、设置最多页签个数 参考&#xff1a;IDEA设置标签多行展示-腾讯云开发者社区-腾讯云

漏洞复现--用友NC-Cloud全版本任意文件上传/RCE

免责声明&#xff1a; 文章中涉及的漏洞均已修复&#xff0c;敏感信息均已做打码处理&#xff0c;文章仅做经验分享用途&#xff0c;切勿当真&#xff0c;未授权的攻击属于非法行为&#xff01;文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直…

企业需要的真是CRM系统吗?

CRM概念已经讲了十几年&#xff0c;第一波上CRM客户管理系统的企业已经更换了若干次系统&#xff0c;还是有不少企业并不知道他们正在寻找的、希望用于解决实际问题的&#xff0c;到底是一款什么软件。企业需要的真是CRM系统吗&#xff1f; 近年来CRM概念不断延展&#xff0c;…

高性能计算与多模态处理的探索之旅:英伟达GH200性能优化与GPT-4V的算力加速未来

★多模态大模型&#xff1b;GPU算力&#xff1b;LLMS&#xff1b;LLM&#xff1b;LMM&#xff1b;GPT-4V&#xff1b;GH200&#xff1b;图像识别&#xff1b;目标定位&#xff1b;图像描述&#xff1b;视觉问答&#xff1b;视觉对话&#xff1b;英伟达&#xff1b;Nvidia&#…

Nginx详细配置指南

nginx.conf配置 找到Nginx的安装目录下的nginx.conf文件&#xff0c;该文件负责Nginx的基础功能配置。 配置文件概述 Nginx的主配置文件(conf/nginx.conf)按以下结构组织&#xff1a; 配置块功能描述全局块与Nginx运行相关的全局设置events块与网络连接有关的设置http块代理…