| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1464 人关注过本帖
标题:问个问题在线等
只看楼主 加入收藏
一起补天
Rank: 2
等 级:论坛游民
帖 子:73
专家分:61
注 册:2008-9-19
收藏
得分:0 
改好了
#include "stdio.h"
main()
{

   int max(int a[10]);
   int min(int a[10]);
   void swap(int x,int y);
     int n,m,t;
   int i,a[10];
   for(i=0;i<10;i++)
   scanf("%d",&a[i]);
   n=max(a);
   m=min(a);
   t=a[n];
   a[n]=a[9];
   a[9]=t;
   t=a[m];
   a[m]=a[0];
   a[0]=t;
   for(i=0;i<10;i++)
   printf("%4d",a[i]);
   printf("\n");
   getch();

}

   int max(int a[10])
   {
   int n,i,b;
   n=a[0];
   for(i=1;i<10;i++)
      {if(a[i]>n)
        { n=a[i];
         b=i;
         }
       }
   return(b);
   }

   int min(int a[10])
   {
   int m,i,p;
   m=a[0];
   for(i=1;i<10;i++)
      {if(a[i]<m)
      {m=a[i];
      p=i;
      }
      }
   return(p);
   }
2008-09-23 22:24
一起补天
Rank: 2
等 级:论坛游民
帖 子:73
专家分:61
注 册:2008-9-19
收藏
得分:0 
你源程序的低级错误太多了,像输入等,还有你求出了最大值和最小值,但是却没有求出其相应的数组下标
2008-09-23 22:27
hanyongshun
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2008-9-12
收藏
得分:0 
第二个for的循环for(i=0;1<10;i++) 把1<9改为i<9 不认真问题
2008-09-23 22:30
一起补天
Rank: 2
等 级:论坛游民
帖 子:73
专家分:61
注 册:2008-9-19
收藏
得分:0 
由于时间有限,我私自把楼主源程序的swap()函数去了,直接在main()函数里交换,楼主要是弄明白后自己再完善吧
2008-09-23 22:31
hxlou520
Rank: 1
来 自:中國_廈門
等 级:新手上路
帖 子:116
专家分:0
注 册:2008-8-29
收藏
得分:0 
第一个程序把2个"for(i=0;1<10;i++)"语句改为i

只要我用心,沒有不成功.
在學習中不斷失敗,必然是提高自己的一種手段.
2008-09-23 22:31
sosilly
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-9-11
收藏
得分:0 
回复 14# 一起补天 的帖子
谢谢你,我仔细的学学
2008-09-23 22:36
sosilly
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-9-11
收藏
得分:0 
回复 12# 一起补天 的帖子
提个问题,return为什么return回数组下标,而不把所得的最大最小值反回呢?
2008-09-23 22:40
学习无语
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-7-13
收藏
得分:0 
主要是这   scanf("%d",&a[i]);
要添加"&",还有12和13行的   swap(m,a[0]);
   swap(n,a[9]); 你要用到m,n,那它的值是怎么得到的呢?所以你的两个函数返回值return m 或n不要加括号,main()函数里要加上       n=max(a);m=min(a);
2008-09-23 22:41
liyanhong
Rank: 3Rank: 3
来 自:水星
等 级:禁止访问
威 望:8
帖 子:1867
专家分:0
注 册:2008-5-3
收藏
得分:0 
小改一下 应该行了
#include "stdio.h"
main()
{
  int n,m;
  int i,a[10];
  void swap(int x,int y);
  for(i=0;i<10;i++)
  {
    scanf("%d",&a[i]);
  }
  n=max(a);
  m=min(a);
  printf("\n");
  swap(&a[n],&a[9]);
  swap(&a[m],&a[0]);
  for(i=0;i<10;i++)
  {
    printf("%d",a[i]);
  }
  printf("\n");
   
}

int max(int a[])
{
  int n,i;
  n=a[0];
  for(i=0;i<10;i++)
  {
    if(a[i]>n)
      n=a[i];
  }
  return(i);
}
   
int min(int a[])
{
  int m,i;
  m=a[0];
  for(i=0;i<10;i++)
  {
    if(a[i]<m)
      m=a[i];
  }
  return(i);
}
   
void swap(int *x,int *y)
{
  int temp;
  temp=*x;
  *x=*y;
  *y=temp;
}

爱上你 是 我的错  可是离 开  又舍不得  听着你为我写的歌     好难过
如果说 我说如果  我们还 能  重新来过   不去计 较 谁对谁错  会怎么做
2008-09-23 22:51
lingyu
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2006-8-15
收藏
得分:0 
这种没风格的程序不要帮改了吧??。。
先搞好程序风格再说·
2008-09-23 23:18
快速回复:问个问题在线等
数据加载中...
 
   



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

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