您的位置:首页 > 其它

acm--数组应用

2013-11-22 16:48 190 查看
/*
*程序的版权和版本声明部分:
*Copyright(c)2013,烟台大学计算机学院学生
*All rights reserved.
*文件名称:
*作者:田成琳
*完成日期:2013年 11月22 日
*版本号:v1.0
*对任务及求解方法的描述部分:
*输入描述: 10个整数
*问题描述:输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。
写三个函数; ①输入10个数;②进行处理;③输出10个数。
*程序输出:整理后的十个数,每个数后跟一个空格(注意最后一个数后也有空格)
*问题分析:
*算法设计:
*/
我的程序:
#include<iostream>
using namespace std;
void input(int [],int);
void handle(int [],int);
void output(int [],int);
int main()
{
const int n=10;
int a
;
input(a,n);
handle(a,n);
output(a,n);
return 0;
}
void input(int a[],int n)
{
for(int i=0;i<n;i++)
cin>>a[i];
}
void handle(int a[],int n)
{
int max,i=0,t,min,z,zd=0,zx=0;
max=a[i];
min=a[i];
for(i=0;i<n;i++)
{
if(max<a[i])
{
max=a[i];
zd=i;    //记录最大值的位置
}
if(min>a[i])
{
min=a[i];
zx=i;    //记录最小值的位置
}
}
t=a[9];
a[9]=max;
a[zd]=t;           //进行值交换
z=a[0];
a[0]=min;
a[zx]=z;

}
void output(int a[],int n)
{
for(int i=0;i<n;i++)
{
cout<<a[i]<<" ";
}
}


运行结果:



心得体会:关键是要比较完大小之后,记录下最大,最小值的位置。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数组