Tsukinai的第二十六个程序(记录数据并求排序输出原数据,平均值)

本文主要是介绍Tsukinai的第二十六个程序(记录数据并求排序输出原数据,平均值),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Tsukinai的第二十六个程序

输入不超过20个非负整数(输入每个整数后按回车,以-1结束且不计入整数个数),用一维数组作函数参数编程实现如下功能:
(1)录入每个整数,函数原型:unsigned short ReadNumber(int num[]),num存储输入的整数,返回值为输入整数的个数;
(2)按由高到低的顺序排序,函数原型:void SortNumberDescending(int num[], unsigned short n),n为整数个数;
(3)对这些整数求和及平均值,函数原型:void SummingAveraging(int num[], unsigned short n, int *pSum, float *pAver),pSum指向和变量
,pAver指向平均值变量;
(4)输出这些整数,函数原型:void PrintNumber(int num[], unsigned short n) 。
主函数中按以下示例形式提示输入、调用函数(1)、调用函数(2)、提示输出、调用函数(4)、调用函数(3)、输出整数和及平均值。
Input Numbers:
87

Sort in descending order:
100

23

Sum=474,Aver=59.25

输入格式:
“Input Numbers:\n”
“%d”
输出格式:
“\nSort in descending order:\n”
“\nSum=%d,Aver=%.2f\n”
“%d\n”

#include<stdio.h>
int i;
unsigned short Readnumber(int num[])
{i = 0;unsigned short a = 0;do{scanf("%d", &num[i]);i++;a++;}while (num[i - 1] != -1);//一定要记得减1,在此之前i进行了加1操作return a - 1;
}
void SortNumberDescending(int num[], unsigned short n)
{int j, temp;for (i = n - 1; i > 0; i--){for (j = 0; j < n - 1; j++){if (num[j] < num[j + 1]){temp = num[j];num[j] = num[j + 1];num[j + 1] = temp;}}}
}
void SummingAveraging(int num[], unsigned short n, int *pSum, float *pAver)
{for (i = 0; i < n; i++){*pSum += num[i];}*pAver = (float) * pSum / n;
}
void  PrintNumber(int num[], unsigned short n)
{for (i = 0; i < n; i++){printf("%d\n", num[i]);}
}
int main()
{int num[20], sum = 0;unsigned short x;float aver;printf("Input Numbers:\n");x = Readnumber(num);SortNumberDescending(num, x);SummingAveraging(num, x, &sum, &aver);printf("\nSort in descending order:\n");PrintNumber(num, x);printf("\nSum=%d,Aver=%.2f\n", sum, aver);return 0;
}

这篇关于Tsukinai的第二十六个程序(记录数据并求排序输出原数据,平均值)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/931821

相关文章

MyBatisPlus如何优化千万级数据的CRUD

《MyBatisPlus如何优化千万级数据的CRUD》最近负责的一个项目,数据库表量级破千万,每次执行CRUD都像走钢丝,稍有不慎就引起数据库报警,本文就结合这个项目的实战经验,聊聊MyBatisPl... 目录背景一、MyBATis Plus 简介二、千万级数据的挑战三、优化 CRUD 的关键策略1. 查

python实现对数据公钥加密与私钥解密

《python实现对数据公钥加密与私钥解密》这篇文章主要为大家详细介绍了如何使用python实现对数据公钥加密与私钥解密,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录公钥私钥的生成使用公钥加密使用私钥解密公钥私钥的生成这一部分,使用python生成公钥与私钥,然后保存在两个文

mysql中的数据目录用法及说明

《mysql中的数据目录用法及说明》:本文主要介绍mysql中的数据目录用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、版本3、数据目录4、总结1、背景安装mysql之后,在安装目录下会有一个data目录,我们创建的数据库、创建的表、插入的

在Spring Boot中集成RabbitMQ的实战记录

《在SpringBoot中集成RabbitMQ的实战记录》本文介绍SpringBoot集成RabbitMQ的步骤,涵盖配置连接、消息发送与接收,并对比两种定义Exchange与队列的方式:手动声明(... 目录前言准备工作1. 安装 RabbitMQ2. 消息发送者(Producer)配置1. 创建 Spr

Navicat数据表的数据添加,删除及使用sql完成数据的添加过程

《Navicat数据表的数据添加,删除及使用sql完成数据的添加过程》:本文主要介绍Navicat数据表的数据添加,删除及使用sql完成数据的添加过程,具有很好的参考价值,希望对大家有所帮助,如有... 目录Navicat数据表数据添加,删除及使用sql完成数据添加选中操作的表则出现如下界面,查看左下角从左

SpringBoot中4种数据水平分片策略

《SpringBoot中4种数据水平分片策略》数据水平分片作为一种水平扩展策略,通过将数据分散到多个物理节点上,有效解决了存储容量和性能瓶颈问题,下面小编就来和大家分享4种数据分片策略吧... 目录一、前言二、哈希分片2.1 原理2.2 SpringBoot实现2.3 优缺点分析2.4 适用场景三、范围分片

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam

Redis分片集群、数据读写规则问题小结

《Redis分片集群、数据读写规则问题小结》本文介绍了Redis分片集群的原理,通过数据分片和哈希槽机制解决单机内存限制与写瓶颈问题,实现分布式存储和高并发处理,但存在通信开销大、维护复杂及对事务支持... 目录一、分片集群解android决的问题二、分片集群图解 分片集群特征如何解决的上述问题?(与哨兵模

浅析如何保证MySQL与Redis数据一致性

《浅析如何保证MySQL与Redis数据一致性》在互联网应用中,MySQL作为持久化存储引擎,Redis作为高性能缓存层,两者的组合能有效提升系统性能,下面我们来看看如何保证两者的数据一致性吧... 目录一、数据不一致性的根源1.1 典型不一致场景1.2 关键矛盾点二、一致性保障策略2.1 基础策略:更新数

Oracle 数据库数据操作如何精通 INSERT, UPDATE, DELETE

《Oracle数据库数据操作如何精通INSERT,UPDATE,DELETE》在Oracle数据库中,对表内数据进行增加、修改和删除操作是通过数据操作语言来完成的,下面给大家介绍Oracle数... 目录思维导图一、插入数据 (INSERT)1.1 插入单行数据,指定所有列的值语法:1.2 插入单行数据,指