瑞星卡卡安全论坛

首页 » 技术交流区 » 系统软件 » 我用C语言写了个小程序 请大家帮我找出错误 谢谢了
leevoov - 2007-5-12 17:49:00
题:对10个整数按由大到小的顺序排列
我用指针来做的
如 10个整数是 1 2 3 4 5 6 7 8 9 10
  排列后是  10 1 2 3 4 5 6 7 9 8
请大家帮我找出错误 谢谢大家了

# include <stdio.h>

void swap(int a[],int n)
  {
    int * i,* j,temp;
    i=a;
    j=a+1;
    for(;i<a+n-1;i++)
        for(;j<a+n;j++)
          if(*i<*j)
            {
              temp=*i;  *i=*j;  *j=temp;
            }
  } 
         
main()
{
  int i,a[10];
  for(i=0;i<10;i++)
    scanf("%d",a);
  printf("\n");

  swap(a,10);
  for(i=0;i<10;i++)
    printf("%d,",a);
}








heevin - 2007-5-13 10:09:00
# include <stdio.h>

void swap(int a[],int n)
{
int * i,* j,temp;
i=a;

for(;i<a+n-1;i++)
for(j=i+1;j<a+n;j++)
if(*i<*j)
{
temp=*i; *i=*j; *j=temp;
}
}

main()
{
int i,a[10];
for(i=0;i<10;i++)
scanf("%d",&a);    //a后面的有 中括号i 显示不出来
printf("\n");

swap(a,10);
for(i=0;i<10;i++)
printf("%d,",a);          //a后面的有 中括号i 显示不出来
}


这样就可以了~~
leevoov - 2007-5-13 16:06:00
【回复“heevin”的帖子】
非常感谢  谢谢你了
1