fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void printA(int a[], int n){
  5. int i;
  6. for(i=0;i<n;i++){
  7. printf("%d ",a[i]);
  8. }
  9. printf("\n");
  10. }
  11.  
  12. void swap(int* a, int* b){
  13. int tmp;
  14. tmp = *a;
  15. *a = *b;
  16. *b = tmp;
  17. }
  18.  
  19. void InsertionSort(int a[], int n){
  20. int i,j,k,tmp;
  21. int m;
  22.  
  23. for(i=1;i<n;i++){
  24. tmp = a[i];
  25. for(j=0;j<i;j++){
  26. if(tmp<a[j]){
  27. break;
  28. }
  29. }
  30. for(k=i;k>j;k--){
  31. a[k]=a[k-1];
  32. }
  33. a[j]=tmp;
  34. }
  35. }
  36.  
  37. int main(void){
  38. int n,i;
  39. int *v;
  40. scanf("%d",&n);
  41. v = (int*)malloc(sizeof(int)*n);
  42. if(v==NULL){
  43. printf("ERROR\n");
  44. return -1;
  45. }
  46. for(i=0;i<n;i++){
  47. scanf("%d",&v[i]);
  48. }
  49. InsertionSort(v,n);
  50. printA(v,n);
  51. free(v);
  52. return 0;
  53. }
Success #stdin #stdout 0s 5320KB
stdin
8
21 55 5 13 8 2 34 3
stdout
2 3 5 8 13 21 34 55