【求教】假设除数是0值,怎么办?
#include<stdio.h> #include<stdlib.h>
float commp(const void *a, const void *b)
{
return *(float *)a > *(float *)b ? 1 : -1;
}
main()
{
int c[19]={7 ,8 ,9 ,14 ,16 ,18 ,20 ,21 ,25 ,33 ,34 ,41 ,46 ,47 ,52 ,56 ,60 ,61 ,62 },
i[1][7]={2 ,5 ,11 ,12 ,13 ,14 ,16 },j;
float a[2][2]={{(c[i[0][2]]-c[i[0][1]]-c[i[0][0]])/(i[0][2]-i[0][1]-i[0][0]),i[0][2]-i[0][1]-i[0][0]},{(c[i[0][3]]-c[i[0][2]]-c[i[0][1]])/(i[0][3]-i[0][2]-i[0][1]),(i[0][3]-i[0][2]-i[0][1])}};
qsort(a, sizeof(a)/sizeof(float)/2, 2*sizeof(float ),commp);
for(j = 0; j < sizeof(a)/sizeof(float )/2; j++)
{
if(a[j][1] != 0)
{
printf("%f\n", a[j][0]); printf("%f\n%f\n%f\n%f\n", a[0][0], a[0][1], a[1][0], a[1][1]);
printf("%f\n", (float)a[0][1]/a[0][0]);
printf("\n");
break;
}
}
return 0;
}
3.000000
3.000000
4.000000
3.000000
-4.000000
1.333333
Press any key to continue
a[0][0]=(c[i[0][2]]-c[i[0][1]]-c[i[0][0]])/(i[0][2]-i[0][1]-i[0][0]);
如果(i[0][2]-i[0][1]-i[0][0])=0,程序停止工作,怎么办?