#include<stdio.h>
#include<string.h>
int main(){
  int number[10] = { 82, 47, 2, 29, 95, 15, 38, 66, 51, 72 };
  int n = 10;
  int i;
  char *filename=tmpnam(NULL);
  char pstr[L_tmpnam+24]="sort ";
  FILE *fp=fopen(filename,"w");
  FILE *pp;
  char buffer[256];
  strcat(pstr,filename);
  for(i=0;i<n;i++){
    fprintf(fp,"%010d\n",number[i]);
  }
  fclose(fp);
  pp=popen(pstr,"r");
  while(fgets(buffer,sizeof(buffer),pp)){
    int a;
    sscanf(buffer,"%d",&a);
    printf("%d ",a);
  }
  printf("\n");
  return 0;
}
環境によってはpopenが_popenかも