小白发问,这个C语言改错该如何做?求大佬指教啊

2024-11-30 23:06:37
推荐回答(3个)
回答1:

出错行号:第12行  原因:未定义temp变量 

出错行号:第十行  原因:冒泡排序法应用错误

正确代码

#include

int main()

{

int a[10]={21,43,55,12,65,87,25,93,30,62};

int i,k,*pa;

int temp;

for (k=0;k<10;k++)

printf("%3d",a[k]);

printf("\n\n");

for (k=0;k<9;k++)

{

pa=a;

for (i=1;i<10-k-1;i++)

{

if ( *pa>*(pa+1) )

{

temp=*pa; 

*pa=*(pa+1); 

*(pa+1)=temp;

}

pa++;

}

}

    for (k=0;k<10;k++)

printf("%3d",*pa++);

printf("\n\n");

return 0;

}

回答2:

#include

int main()

{ int a[10]= {21,43,55,12,65,87,25,93,30,62};

  int i,k,*pa,temp; //有改动

  for (k=0; k<10; k++)

    printf("%3d",a[k]);

  printf("\n\n");

  for (k=0; k<9; k++)

  { pa=a;

    for (i=0; i<10-k-1; i++)

    { if ( *pa>*(pa+1) )

      { temp=*pa;

        *pa=*(pa+1);

        *(pa+1)=temp;

      }

      pa++;

    }

  }

  pa=a; //新增此行 

  for (k=0; k<10; k++)

    printf("%3d",*pa++);

  printf("\n\n");

  return 0;

}

回答3:

你也是华理的吗。。