ecco ora mi crasha .....

codice:
#include<stdio.h>
void merge(float x[],float j[],float k[],int n,int m);
int main()
  {   
      int i,v,n,m,b;
      float x[100],j[100],k[200];
        printf("Inserisci la dimensione del primo array : ");
        scanf("%d",&n);
        printf("inserisci la dimensione del secondo array : ");
        scanf("%d",&m);
      for(i=0;i<n;i++)
        {
                      printf("Inserisci il %d elemento del primo array: ",i+1);
                      scanf("%f",&x[i]);
        }
            for(v=0;v<m;v++)
        {
                      printf("Inserisci il %d elemento del secondo array: ",v+1);
                      scanf("%f",&j[m]);
        }
        b=n+m;
        merge(x,j,k,n,m);
}

void merge(float x[],float j[],float k[],int n,int m)/*gli indici non si passano*/
  {
       int b,i,v;
       b=0;
           while ((i<n)&&(v<m))
          {
                         if (x[n]<j[m])
                          {
                                     k[b]=x[n];
                                     i++;
                          }
                         else
                          {
                                     k[b]=j[m];
                                     v++;

                         }
          }
          if (i>n)
             {
                         for (b=n;b<(n+m);b++)
                          {
                            k[b]=j[v];
                          v++;
                          }
             }
             else
             {
                         for(b=m;b<(n+m);b++)
                         {
                             k[b]=x[n];
                          n++;
                          }
             }
  }