I\'m having a small problem with a program I\'m working on, I keep getting the warning format \'%1f\' expects type \'float *\' but argument 2 has type \'double *\'
You made a typo and then you duplicated it...
scanf("%1f", n1);
Should be written
scanf("%lf", n1);
Note the difference between l (lowercase L) and 1 (number one).
%lf stands for long float, which is not an actual C type, but a way to distinguish float (%f) and double (%lf). The l can be used with d and i to specify long int and u for long unsigned int.
These characters are difficult to distinguish, especially with fixed pitch fonts used for programming, for this very reason, one should avoid naming a variable l, ll etc. and the long integer constant 1l should be written 1L.