| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1625 人关注过本帖
标题:这个程序为什么不能使数组中的最大值和最小值互换?
只看楼主 加入收藏
yqiong
Rank: 1
等 级:新手上路
帖 子:315
专家分:0
注 册:2007-7-4
结帖率:83.33%
收藏
 问题点数:0 回复次数:10 
这个程序为什么不能使数组中的最大值和最小值互换?
这个程序为什么不能使数组中的最大值和最小值互换?
main()
{
int a[5]={1,2,31,45,0};
int max,min,i,j,k=0;
max=min=a[0]
for(i=1;i<n;i++)
{ {if(a[i]>max){max=a[i];k=i;}
{if(a[i]<min){min=a[i];j=i;}
}
a[j]=min;
a[k]=max;
}
搜索更多相关主题的帖子: 最大值 
2007-08-02 00:09
yqiong
Rank: 1
等 级:新手上路
帖 子:315
专家分:0
注 册:2007-7-4
收藏
得分:0 


main()
{
int a[5]={1,2,31,45,0};
int max,min,i,j,k=0;
max=min=a[0]
for(i=1;i<n;i++)
{ {if(a[i]>max){max=a[i];k=i;}
{if(a[i]<min){min=a[i];j=i;}
}
a[k]=min;
a[j]=max;
}
写错了
这个程序为什么不能使数组中的最大值和最小值互换?
2007-08-02 00:12
李天飞
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-8-2
收藏
得分:0 
我看有两个原因,第一:i 应该从0开始循环,第二:你FOR循环里的N没定义
跟本不知道是什么数
2007-08-02 08:57
卧龙孔明
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:59
帖 子:3872
专家分:684
注 册:2006-10-13
收藏
得分:0 
int main(void)
{
int a[5]={1,2,31,45,0};
int max,min,i,j,k=0,n=5;
max=min=a[0]; /*错误一,漏了分号*/
for(i=1;i<n;i++)/*错误4,n未定义*/
{
if(a[i]>max){max=a[i];k=i;} /*错误2,{}使用错误*/
if(a[i]<min){min=a[i];j=i;} /*错误3,{}使用错误*/
}
a[k]=min;
a[j]=max;
/* 为了查看结果,如果需要可以去掉注释符
for(i=0;i<n;i++) printf("%d ",a[i]);
getch();
*/
return 0;
}
/*请注意程序书写格式*/

My Blog: www.aiexp.info
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.
2007-08-02 09:02
yqiong
Rank: 1
等 级:新手上路
帖 子:315
专家分:0
注 册:2007-7-4
收藏
得分:0 
以下是引用yqiong在2007-8-2 0:09:51的发言:
这个程序为什么不能使数组中的最大值和最小值互换?
main()
{
int a[5]={1,2,31,45,0};
int max,min,i,j,k=0;
max=min=a[0];
for(i=0;i<5;i++)
{ if(a[i]>max){max=a[i];k=i;}
if(a[i]<min){min=a[i];j=i;}
}
a[k]=min;
a[j]=max;
}
真粗心!谢谢了
2007-08-02 19:46
wsaaa
Rank: 1
等 级:新手上路
帖 子:136
专家分:0
注 册:2007-5-8
收藏
得分:0 
这个程序为什么不能使数组中的最大值和最小值互换?
main()
{
int a[5]={1,2,31,45,0};
int max,min,i,j,k;
max=min=a[0];
for(i=0;i<5;i++)
{ {if(a[i]>max){max=a[i];k=i;}
{if(a[i]<min){min=a[i];j=i;}
}
a[j]=min;
a[k]=max;
}
2007-08-03 22:14
lishizelibin
Rank: 2
等 级:论坛游民
帖 子:513
专家分:41
注 册:2007-5-10
收藏
得分:0 
以下是引用卧龙孔明在2007-8-2 9:02:43的发言:
int main(void)
{
int a[5]={1,2,31,45,0};
int max,min,i,j,k=0,n=5;
max=min=a[0]; /*错误一,漏了分号*/
for(i=1;i<n;i++)/*错误4,n未定义*/
{
if(a[i]>max){max=a[i];k=i;} /*错误2,{}使用错误*/
if(a[i]<min){min=a[i];j=i;} /*错误3,{}使用错误*/

}
a[k]=min;
a[j]=max;
/* 为了查看结果,如果需要可以去掉注释符
for(i=0;i<n;i++) printf("%d ",a[i]);
getch();
*/
return 0;
}
/*请注意程序书写格式*/

做改错题呢,我觉得改的好,是初学的应该注意的,我也学习了


惟有学习不断的学习!
2007-08-03 22:20
埃及法老
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2007-8-1
收藏
得分:0 
回复:(lishizelibin)以下是引用卧龙孔明在2007-8-2...

错误2,3是为什么呢,难道这里的{}打的不对吗??应该是要有的呀

2007-08-03 22:46
埃及法老
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2007-8-1
收藏
得分:0 
回复:(李天飞)我看有两个原因,第一:i 应该从0开始...
 i 从1开始是对的,为什么要从0开始呢??
2007-08-03 22:51
埃及法老
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2007-8-1
收藏
得分:0 
main()
{
int a[5]={1,2,31,45,0};
int max,min,i,j,k=0;
max=min=a[0]
for(i=1;i<;i++)
{ {if(a[i]>max){max=a[i];k=i;}
{if(a[i]<min){min=a[i];j=i;}
}
a[k]=min;
a[j]=max;
}
2007-08-03 23:00
快速回复:这个程序为什么不能使数组中的最大值和最小值互换?
数据加载中...
 
   



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

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