float p1[2] , p2[2] , p3[2] , p4[2] , p12a , p12b , p34a , p34b , p5[2];
  printf("p1の座標入力\n");
  scanf("%f %f",p1,p1+1);
  printf("p2の座標入力\n");
  scanf("%f %f",p2,p2+1);
  printf("p3の座標入力\n");
  scanf("%f %f",p3,p3+1);
  printf("p4の座標入力\n");
  scanf("%f %f",p4,p4+1);
  
  p12a = (p2[1]-p1[1])/(p2[0]-p1[0]);
  p12b = (0 - p1[0]) * p12a + p1[1];
  p34a = (p4[1]-p3[1])/(p4[0]-p3[0]);
  p34b = (0 - p3[0]) * p34a + p3[1];
  p5[0] = (p34b - p12b)/(p12a - p34a);
  p5[1] = (p5[0] * p12a) + p12b;
  if(p12a==p34a)
  {
    printf("二直線は平行\n");
    return 0;
  }
  printf("二直線の交点の座標\n(%f , %f)\n",p5[0],p5[1]);