| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1800 人关注过本帖
标题:输入一个有10个整型数的数组,将其中最大的数和第一个数交换,最小的数和最后 ...
只看楼主 加入收藏
than
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-3-17
收藏
 问题点数:0 回复次数:5 
输入一个有10个整型数的数组,将其中最大的数和第一个数交换,最小的数和最后一个交换.编写函数来完成
这个是C++的作业,麻烦哪位大侠帮我做下
搜索更多相关主题的帖子: 函数 最大的 
2012-03-17 17:56
习惯被动
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:139
专家分:144
注 册:2012-3-5
收藏
得分:0 
多自己动手吧,遇到难听再提问好一点,不然是不会提高的。
2012-03-18 16:00
Caesoiar
Rank: 2
等 级:论坛游民
帖 子:19
专家分:42
注 册:2012-3-19
收藏
得分:0 
程序代码:
#include <iostream>
using namespace std;

int main()
{
    int a[10] = {0};
    int nMax = 0, nMin = 0;
    for (int i = 0; i < 10; i++)
    {
        cin >> a[i];
        if (a[i] > a[nMax])
            nMax = i;
        if (a[i] < a[nMin])
            nMin = i;
    }
    int t = a[0];
    a[0] = a[nMax];
    a[nMax] = t;
    if (nMin == 0)
       nMin = nMax;
    t = a[9];
    a[9] = a[nMin];
    a[nMin] = t;

    for (int i = 0; i < 10; i++)
        cout << a[i] << ' ';

    return 0;
}

2012-03-22 11:52
than
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-3-17
收藏
得分:0 
#include<iostream>
using namespace std;
int main()
{
   
    int a[10],*p,min,max,i,t,b;
    cout<<"please enter 10 integers:"<<endl;

    for(i=0;i<10;i++)
    {
        cin>>a[i];                //输入数组
    }
    p=a;
    max=a[0];
    min=a[9];
    for(p=a;p<a+10;p++)
    {
        if(*p>max)           
            {    max=*p;    //找出最大值,并和第一个交换
                t=a[0];
                a[0]=max;
                *p=t;   
            }
        if(*p<min)
            {
                min=*p;
                b=a[9];
                a[9]=min;
                *p=b;
            }
        
    }
    for(p=a;p<=a+9;p++)        //输出新的数组
    {cout<<*p<<"  ";}
    return 0;
}
我自己做的
2012-05-09 10:45
双刃
Rank: 2
等 级:论坛游民
帖 子:7
专家分:28
注 册:2012-5-9
收藏
得分:0 
#define N 10                            //数组长度
void swap(int a[N])
{
    int iMax = 0, iMin = N-1;

    int tmpMax = a[iMax];
    int tmpMin = a[iMin];
    for (int i=1; i<N; i++) {           //找到最大最小数的序号
        if (a[i] > tmpMax) {
            iMax = i;
            tmpMax = a[i];
        }
        if (a[i] < tmpMin) {
            iMin = i;
            tmpMin = a[i];
        }
    }

    if (iMax == iMin) {                //数组所有数据相等
        return ;
    }

    int tmp = 0;                        //完成交换
    if (iMax != 0) {
        tmp = a[0];
        a[0] = a[iMax];
        a[iMax] = tmp;
    }
    if (iMin != N-1) {
        tmp = a[N-1];
        a[N-1] = a[iMin];
        a[iMin] = tmp;
    }
}

[ 本帖最后由 双刃 于 2012-5-10 00:09 编辑 ]
2012-05-10 00:05
岗地画面
Rank: 2
等 级:论坛游民
帖 子:20
专家分:26
注 册:2011-8-2
收藏
得分:0 
#include<iostream>
using namespace std;

void seekmax(int *p,int n)  //寻找最大并交换
{
    int i,j=0,max;
    max=*p;
    for(i=0;i<10;i++)
    {
        if(*(p+i)>max)
        {
            max=*(p+i);
            j=i;
        }
    }
   
    *(p+j)=*p;
    *p=max;
}

void seekmin(int *p,int n)  //寻找最小并交换

{
    int i,j=0,min;
    min=*(p+9);
   

    for(i=0;i<10;i++)
    {
        if(*(p+i)<min)
        {
            min=*(p+i);
            j=i;
        }
    }

    *(p+j)=*(p+9);
    *(p+9)=min;
}

void main()

{
    int a[10];
    int i;
    for(i=0;i<10;i++)
        cin>>a[i];   //输入数组

    seekmax(a,10);
    seekmin(a,10);
    cout<<endl;
    for(i=0;i<10;i++)
        cout<<a[i]<<endl;


}
2012-05-10 12:14
快速回复:输入一个有10个整型数的数组,将其中最大的数和第一个数交换,最小的数和 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011948 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved