求助:指向指针的指针问题
C语言指针问题:用指向指针的指针方法对n个整数排序并输出。要求将排序单独写成一个函数。我的代码如下:
#include<stdio.h>
void str(int *a[5]);
int main(void)
{
int a[5];
int i;
for(i=0;i<5;i++)
scanf("%d",&a[i]);
int *q[5];
for(i=0;i<5;i++)
q[i]=&a[i];
str(q);
for(i=0;i<5;i++)
printf("%d",a[i]);}
void str(int *a[5])
{
int **t,i,j,m;
t=a;
for(i=0;i<4;i++)
{for(j=0;j<4-i;i++)
if(**(t+j)>**(t+j+1))
{m=**(t+j);
**(t+j)=**(t+j+1);
**(t+j+1)=m;}}}
总是排不了序,比如输入54321,输出45321,这是为什么呀?各位帮忙看看