4、编写一个名为bst的函数,它以一个int型数组及元素个数为参数,功能是找出数组中最小元素和最大元素,将最小元素与数组首元素交换,最大元素与数组尾元素交换。main函数用实际数组验证之

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容

无法运行出结果,可以编译

我的解答思路和尝试过的方法
我想要达到的结果
#include<stdio.h>
     int main()
     {  void  bst(int *x,int n);
     int a[10]={2,1,3,4,5,6,7,8,10,9};
     int i,*p,max,min;
     p=a;
     bst(p,10);
     for(i=0;i<10;i++)
         printf("%2d",p++);
         printf("\n");
         printf("%d %d",max,min);
         printf("\n");
     return 0;
     }


    void  bst(int *x,int n)
    { int i,min,max;
     min=x[0];
     max=x[10];
      for(i=0;i<10;i++)
          if(x[i]<min)
              min=x[i];
              x[0]=min;
      for(i=0;i<10;i++)
          if(x[i]>max)
              max=x[i];
          x[10]=max;
    }


遍历数组通过比较得到最大最小值,然后分别和首尾交换