设为首页 加入收藏

TOP

挑战30天C++入门极限:对于c/c++中的数组排序及计算平均值和得到最大最小值的思考
2014-11-16 15:00:26 】 浏览:3278
Tags:挑战 入门 极限 对于 c/c 排序 计算 平均值 得到 最大 最小 思考

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


排序操作


#include

voidsort(array,n)
intarray[];
intn;
{
inti,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()
{
inta[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");

} /* 此篇代码练习序号注意的是用数组名作涵数实际参数的时候,不是把数组的值传递给形式参数,
而是把实际参数数组的起始地址传递给形式参数数组,这样两个数组就共同占用一段内存单元,而
不需要建立两个不同的数组浪费内存空间 */




求平均值和找最大最小值



】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇挑战30天C++入门极限-引 言 下一篇挑战30天C++入门极限:对于c/c++..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目