c/c++数组排序、计算平均值、最大、小值

最近在帮助其它人的学习中发现了许多问题就数组和局部变量和全居变量的两道例题进行刨析和思考!

排序操作

#include
void sort(array,n)
int array[];
int n;
{
int i,j,k,t;
for(i=0;i)/* 循环9次,这里循环9次因为排列到第9次的时候最大的已经自动被排列到最后了 */
{
k=i;[/LIGHT] /* 把i记录下来,以便进行调换操作 */
for(j=i+1;)j/* 在外部i循环内进行第二次循环,检查所有的剩余元素 */
{
if(array[j])/* 利用k对比j循环的元素大小是否比外部i循环当前元素的值 */
{
k=j; /* 将k的值定义为j循环的最小元素的(下标),以便进行调换操作 */
}
t=array[k]; /* 将t的值定义为j循环的最小值元素的值 */
array[k]=array[i]; /* 把j循环内的(也就是array[j])的值,调换为此次外部i循环元素的值 */
array[i]=t; /* 将外部i循环的当前元素的值替换为前面以t为临时存储的(也就是array[j])的值 */
}
}
}
main()
{
int a[10],i; /* 定义a[10]为一个数组,用于输入10个不同的数字;定义用于循环的便量i; */
printf("enter the array\n");
for(i=0;i<10;i++)
{
scanf("%d",&a[i]); /* 利用这10次循环给每个数组元素尽心赋值操作从a[0]到a[9] */
}
sort(a,10);/* 把数组a的各数组元素地址和数组数量传递给自定义排序涵数的形式参数 */
printf("the sorted array:\n");
for(i=0;i<10;i++)
{
printf("%d",a[i]); /*利用10次循环把排序后的数组元素打印在屏幕上*/
}
printf("\n");
}

时间: 2024-08-24 16:43:52

c/c++数组排序、计算平均值、最大、小值的相关文章

vc access 计算平均值

问题描述 vc access 计算平均值 在vc中有俩编辑框 输入搜索范围,比如从45到100,然后计算这段范围内某字段下数据的平均值,以及找出其中的最值,望高手给点思路,我想了一晚上不知道从哪入手啊,谢谢 解决方案 你sql语句中select * from table where column > 45 and column < 100 查出所有数据,一个记录集.然后求最大,平均 解决方案二: access应该是直接支持Avg函数的 那么select avg(字段) from 表 where

c++-非常简单C++问题:输入任意个实数(10~100个),计算平均值,升序输出所有数(包括平均值在内)

问题描述 非常简单C++问题:输入任意个实数(10-100个),计算平均值,升序输出所有数(包括平均值在内) 我突然发现自己并不知道如何计算一个数组已经被赋值过的元素个数,求教. 解决方案 这个问题涉及数组大小的判定,数组元素排序. 排序是有现成的方法的,比如快速排序,归并排序,直接拿来用就行. 而你所说的无法判定已输入的元素个数,这个问题解决起来也很简单: while(1) { scanf("%d",&x); if (x != END_NUM) { //设定一个End值,当输

python实现计算资源图标crc值的方法_python

本文实例讲述了python实现计算资源图标crc值的方法,分享给大家供大家参考.具体方法如下: 实现该功能的关键在于解析资源信息,找到icon的数据,然后计算这些数据的crc 具体实现代码如下: def _get_iconcrc(self, file_path): """ Generates the crc32 hash of the icon of the file. @return: str, the str value of the file's icon "

lua可以计算字符串的hash值么?

问题描述 lua可以计算字符串的hash值么? 小弟在用lua写个脚本需要根据字符串的哈希值进行分组,找了半天也没找到相关的库函数,请问使用lua怎么能得出字符串的hash值呢?

C++用递归函数计算自然数e的值

问题描述 C++用递归函数计算自然数e的值 如何编写一个递归函数近似计算自然数e根据公式e=1+1/1!+1/2!+1/3!+1/4!+......计算e的值.(一定要用递归的方法!!) e的表达式是: n e= ∑1/k! k=o 解决方案 用到了两个递归,不过一旦n的值过大,阶乘的结果会越界! LONG64 Fact(int n){ if (n==1) { return 1; } return Fact(n-1)*n;}long double Cal_e(int n){ if (n==1)

asp.net中如何编写hash函数计算中文的hash值使之生成二进制数01

问题描述 asp.net中如何编写hash函数计算中文的hash值使之生成二进制数01 asp.net中如何编写hash函数计算中文的hash值使之生成二进制数01 解决方案 产生16进制数,每一位都可以查表得到特定的4位二进制数. 解决方案二: "使之生成二进制数01"是什么意思?一般来说有中文的固定编码和hash函数就可以生成hash了 解决方案三: 给你个样子吧 using System; using System.Security.Cryptography; namespace

Linux下计算文件的MD5值

脚本功能 脚本使用Perl编写,计算文件的MD5值 脚本用途 服务器在安装完操作系统后,计算PATH变量里面所有的二进制文件的MD5.计算单个文件MD5值.计算某个目录(包括子目录)下所有的文件的MD5值记录到文件,等日后再生成一份,然后2份文件进行对比,即可知道这些文件是否又被改动过. 脚本用法(5种用法) 脚本名 -p                   [ > 输出的文件名]  ← 该功能是计算PATH变量里面所有文件的MD5值  脚本名 文件1 文件2 文件3 ...  [ > 输出的

计算机中的颜色XII——快速计算纯色的色相值(新的公式)

在"计算机中的颜色XI--从色相值到纯色的快速计算(新的公式)"中提到了色相值到纯色的快速计算. 反过来如何快速的计算纯色的色相值?在"计算机中的颜色V--快速计算颜色的色相值"中曾经提到过计算公式 任意一个纯色的色相值可以用下面公式表示 当G≥B时,H=(255-R+G+B)/255×60 当G<B时,H=360-(255-R+G+B)/255×60 经过一番推导之后,将上面两个公式合并成一个计算公式. H=180+(510-G-B+R)×Sign(B-G-

判断上一行数据,并计算平均值

问题描述 数据如下: 零件代号 col1 col2 col3 A 11 12 10 B 22 20 13现在遇到这样一个问题,根据零件代号判断当前行的零件代号是否与上一行的零件代号相同,如果相同则计算3*2列数据的平均值,如上述列表数据,如果第二行的零件代号B是A的话,则平均值=(11+12+10+22+20+13)/6,否则分别计算出各行数据的平均值,很郁闷不知道用java循环如何实现了,知道的同学帮忙解答一下,非常感谢!补:这里的记录行数有很多,只需要与上一行相比即可. 问题补充:HeDYn