| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 7233 人关注过本帖
标题:[求助]求数组A[10]中的最大值,次大值。谢谢啊
只看楼主 加入收藏
620LCC
Rank: 1
等 级:新手上路
帖 子:78
专家分:0
注 册:2005-3-25
收藏
得分:0 
这好像挺热闹!

2005-04-02 22:45
84531933
Rank: 1
等 级:新手上路
帖 子:31
专家分:2
注 册:2005-4-2
收藏
得分:0 
#define N 10
#include <stdio.h>
main()
{
int i, max, sub_max;
int a[N];
printf("Please input 10 interges:\n");
for(i = 0; i < N; i++)
{
  scanf("%d", &a[i]);
}
max = a[0];
sub_max = a[0];
/*将a[0]赋值给max和sub_max,假如a[0]是最大的,那就判断不出来哪个是次大的*/
for(i =0; i < N; i++)
{
  if(a[i] > max)
  {
   sub_max = max;
   max = a[i];
  }
/*假如最次大的在最大的后面录入进来,就无法将次大的给sub_max,再加个if(a[i]>sub_max&&a[i]!=max) sub_max=a[i];  就好了*/
}
if(sub_max == max)
{
  printf("There is no sub_max\n");
  printf("max = %d\n", max);
}
else
  printf("max = %d, sub_max = %d\n", max, sub_max);
}

2005-04-02 22:52
skycanny
Rank: 1
等 级:新手上路
帖 子:87
专家分:0
注 册:2005-3-5
收藏
得分:0 

9楼的说的对, 改了一下 欢迎测试 #define N 5 #include <stdio.h> main() { int i, max, sub_max, average; int a[N]; printf("Please input %d interges:\n", N); for(i = 0; i < N; i++) { scanf("%d", &a[i]); } average = 0; for(i = 0; i < N; i++) average = average + a[i]; average = average / N; sub_max = max = average; for(i =0; i < N; i++) { if(a[i] > max) { max = a[i]; } }

for(i =0; i < N; i++) {

if( (a[i] >= sub_max) && (a[i] < max) ) sub_max = a[i]; } if(sub_max == max) { printf("There is no sub_max\n"); printf("max = %d\n", max); } else printf("max = %d, sub_max = %d\n", max, sub_max); }

[此贴子已经被作者于2005-4-2 23:24:51编辑过]

2005-04-02 23:18
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
呵呵,其实我认为可以不用排序法来做.
因为用排序法白白浪费了80%的时间去作无用功,因为我们只关心其中那最大的那两个.

淘宝杜琨
2005-04-02 23:29
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
这个程序不是吹牛,你写给你老师去看他/她如果是新老师(研究生那种)肯定看不明白~~~

对了,楼主要注释不?


[此贴子已经被作者于2005-4-3 0:01:38编辑过]



淘宝杜琨
2005-04-02 23:57
aniude
Rank: 2
等 级:新手上路
威 望:3
帖 子:231
专家分:0
注 册:2004-11-3
收藏
得分:0 
不排序也应该要记他的次序吧,这样的话在循环的时候也要每次都判断他的次序吧?

2005-04-03 00:03
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
判断什么的次序?

淘宝杜琨
2005-04-03 00:07
aniude
Rank: 2
等 级:新手上路
威 望:3
帖 子:231
专家分:0
注 册:2004-11-3
收藏
得分:0 
就是先要确定最大数的位置

2005-04-03 00:23
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
不用

淘宝杜琨
2005-04-03 00:26
zilin
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2005-4-2
收藏
得分:0 
拍个序不就完了~  不至于讨论这么多吧~

随时可以找我哦~ QQ:77938821 litansiee@
2005-04-03 00:33
快速回复:[求助]求数组A[10]中的最大值,次大值。谢谢啊
数据加载中...
 
   



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

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