Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

为什么不对啊?

Posted by robert0415 at 2007-12-15 21:39:43
题目:

 对二维数组 int a[M][N]的每行从小到大排序,排序函数的原型说明为:void Sort( int * Array, int n )。 

 

程序:

#include<stdio.h> 
#define M 5
#define N 5
void Sort(int * Array,int n)
{
 int t,i,j,h;
 for(;Array<Array+n;Array+=N)
  for(i=0;i<N-1;i++)
  {
   h=i;
   for(j=i+1;j<N;j++)
    if(*(Array+h)>(*Array+j)) h=j;
   t=*(Array+i);
   *(Array+i)=*(Array+h);
   *(Array+h)=t;
  }
}
int main()
{
 int a[M][N],i,j;
 for(i=0;i<M;i++)
  for(j=0;j<N;j++)
   scanf("%d",&a[i][j]);
 Sort(&a[0][0],N*M); 
    for(i=0;i<M;i++)
 {
  printf("\n");
  for(j=0;j<N;j++)
   printf("%4d",a[i+1][j+1]);
 }
 return(0);
}
为什么输完二维数祖后就跳过去没打印呢?应该怎么改啊?

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator