zflsky 发布留言 2008-6-30 11:59
数据交换问题,数组排序问题
定义了一个二元数组,按每排的第一个数的大小由小到大的排
如:第一排的第一个数大于第二个数,则第一排第二排交换;
0 9 0 9
8 7 2 1
6 5 ==》4 3
4 3 6 5
2 1 8 7各位学长学姐帮忙看看呀[tk13]
下面的程序错在哪里呀
#include"stdio.h"
main()
{
int i,j;
int n;
int a[100][2];
int b[100][2];
int min=a[0][0];
printf("please input a number n:\n");
scanf("%d",&n);
for(i=0;i
for(j=0;j<2;j++)
scanf("%3d",&a);
printf("\n");
for(i=1;i
{
if(a
{
int tump1,tump2;
tump1=a,tump2=a[1];
a=min,a[1]=a;
min=tump1,a=tump2;
}
}
for(i=0;i
for(j=0;j<2;j++)
{
if(j==0)
printf("%d",a);
if(j==1)
printf("%3d\n",a);
}
}
[ 本帖最后由 zflsky 于 2008-6-30 12:02 编辑 [/it]]
zflsky 发布留言 2008-6-30 12:03
有没有人可以帮我啊。。急~~~[tk26]
zflsky 发布留言 2008-6-30 19:06
没人帮我啊。。。[tk01]
gongjiandenghua 发布留言 2008-6-30 21:55
交换值不需要引入变量min,比较大小时才用的到。我帮你改了一下,运行过了,正确
#include"stdio.h"
main()
{
int i,j;
int n;
int a[100][2];
printf("please input a number n:\n");
scanf("%d",&n);
for(i=0;i
for(j=0;j<2;j++)
scanf("%3d",&a);
printf("\n");
for(i=0;i
{
if(a[0] { int tump1,tump2;
tump1=a;a=a[0];a[0]= tump1;
tump2=a;a=a[1];a[1]=tump2;
}
}
for(i=0;i
for(j=0;j<2;j++)
{
if(j==0)
printf("%d",a);
if(j==1)
printf("%3d\n",a);
}
}
我是新手,看到你在if语句中间定义变量tump1、tump2.受教了啊
页: [1]