当前位置: 代码迷 >> C语言 >> [求助]对一个整型的5行6例的二维数组排序
  详细解决方案

[求助]对一个整型的5行6例的二维数组排序

热度:103   发布时间:2006-04-23 15:09:00.0
[求助]对一个整型的5行6例的二维数组排序

各位c语言编程高手帮个忙,
对一个整型的5行6例的二维数组排序

搜索更多相关的解决方案: 整型  

----------------解决方案--------------------------------------------------------
自己想……
----------------解决方案--------------------------------------------------------
可我想了好久没想出来啊。帮个忙吧高手

----------------解决方案--------------------------------------------------------

拜我为师吧,每个月200元人民币

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#define ROW 5
#define COLUMN 6

void Input(int iarra[][COLUMN]);
void Sort(int iarra[][COLUMN]);
void Output(int iarra[][COLUMN]);

int main(void)
{
int iarra[ROW][COLUMN];

Input(iarra);

Sort(iarra);

Output(iarra);

getch();
return 0;
}

void Input(int iarra[][COLUMN])
{
int ia, ib;

srand(time(NULL));

for (ia = 0; ia <= ROW - 1; ia++)
{
for (ib = 0; ib <= COLUMN - 1; ib++)
{
iarra[ia][ib] = rand() % 100; /* 数字范围可选 */
}
}
}

void Sort(int iarra[][COLUMN])
{
int ipass, ic, id;

for (ipass = 1; ipass <= ROW * COLUMN - 1; ipass++)
{
for (ic = 0; ic <= ROW - 1; ic++)
{
for (id = 0; id <= COLUMN - 1; id++)
{
if (iarra[ic][id] > iarra[ic][id + 1])
{
int itemp;

itemp = iarra[ic][id];
iarra[ic][id] = iarra[ic][id + 1];
iarra[ic][id + 1] = itemp;
}
      if ((ic * ROW + COLUMN) == (ROW * COLUMN - 1))
{
return ;
}      
}
}
}
}


void Output(int iarra[][COLUMN])
{
int ie, ig;

for (ie = 0; ie <= ROW - 1; ie++)
{
for (ig = 0; ig <= COLUMN - 1; ig++)
{
printf("%d ", iarra[ie][ig]);
}
}
printf("\n\n");
}


[此贴子已经被作者于2006-4-23 16:05:20编辑过]


----------------解决方案--------------------------------------------------------
  相关解决方案