| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1105 人关注过本帖
标题:找出数组最大,小值并调换其位置后输出该数组
只看楼主 加入收藏
a1115a
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-10-14
结帖率:50%
收藏
 问题点数:0 回复次数:6 
找出数组最大,小值并调换其位置后输出该数组
#include "stdafx.h"
#define N 20

int _tmain(int argc, _TCHAR* argv[])
{
    int a,b=0,c=0,w[N],i,j,k,max=0,min=0;
    printf("请选择个数");
    scanf("%d",&a);
    printf("输入数字");
    for(i=0;i<a;i++)
        scanf("%d",&w[i]);
    if(w[0]>w[1])
    {
        max=w[0];
        b=1;
        min=w[1];
        c=2;
    }
    else
    {
        min=w[0];
        c=1;
        max=w[1];
        b=2;
    }
    for(j=0;j<a-1;j++)
    {
        if(max<w[j+2])
        {
            max=w[j+2];
            b=j+3;
        }
        else if(min>w[j+2])
        {
            min=w[j+2];
            c=j+3;
        }
    }
    printf("最大值:%d\n",max);
    printf("所在位置:%d\n",b);
    printf("最大值:%d\n",min);
    printf("所在位置:%d\n",c);
    printf("最大值:%d\n",max);
    printf("排序:");
    for(k=0;k<a;k++)
        printf("\t%d",w[k]);
    printf("\n");

    return 0;
}
搜索更多相关主题的帖子: include 
2016-12-05 08:37
a1115a
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-10-14
收藏
得分:0 
最小值比不出来,为什么???
2016-12-05 08:38
袁小旭
Rank: 2
等 级:论坛游民
帖 子:11
专家分:32
注 册:2016-11-14
收藏
得分:0 
else if(min>w[j+2])这行有问题, 把else 去掉
2016-12-05 08:45
a1115a
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-10-14
收藏
得分:0 
回复 3楼 袁小旭
去掉之后运行还是错误,最小值得位置一直都是7,,而且最小值一直是个负数
2016-12-05 08:49
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10559
专家分:42996
注 册:2014-5-20
收藏
得分:0 
    int i, iMax=0,iMin=0;
    for (i=1; i<N; i++)
        if (w[i] > w[iMax])
            iMax = i;
        else if (w[i] < w[iMin])
            iMin = i;
最大:w[iMax]
最小:w[iMin]
2016-12-05 09:45
求学的兔子
Rank: 2
等 级:论坛游民
帖 子:21
专家分:46
注 册:2016-11-11
收藏
得分:0 
for(j=0;j<a-1;j++)
这句的定义是不是有误,数组最大长度为a,即最后一个元素为w[a-1];
然而在后面有j+2出现,根据for(j=0;j<a-1;j++),j最大为a-2,在经过j+2后为a,也就是说出现了元素w[a];
显然超出了数组的最大长度定义。
2016-12-05 11:23
a1115a
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-10-14
收藏
得分:0 
回复 5楼 吹水佬
没发现,,,有什么解决方法没有,暂时没想到
2016-12-05 11:37
快速回复:找出数组最大,小值并调换其位置后输出该数组
数据加载中...
 
   



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

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