抄自:https://blog.csdn.net/zhy755788055/article/details/49254101
#include<stdio.h>
#include<stdlib.h>
int main()
{
double gpslng = 11355.8494;
double gpslat = 2231.6704;
double resultlng = 0;
double resultlat = 0;
resultlng = (int)(gpslng/100) + (gpslng/100.0 - (int)(gpslng/100)) *100.0 / 60.0;
resultlat = (int)(gpslat/100) + (gpslat/100.0 - (int)(gpslat/100)) *100.0 / 60.0;
printf("lng = %lf,lat = %lf\n",resultlng,resultlat);
return 0;
}
抄自:https://zhidao.baidu.com/question/90279104.html
%f和%lf分别是float类型和double类型用于格式化输入输出时对应的格式符号。
其中:
float,单精度浮点型,对应%f.
double,双精度浮点型,对应%lf.
在用于输出时:
float类型可以使用%lf格式,但不会有任何好处。
double类型如果使用了%f格式可能会导致输出错误。
在用于输入时:
double 类型使用了%f格式,会导致输入值错误。
float类型使用double类型不仅会导致输入错误,还可能引起程序崩溃。
所以在输入输出时,一定要区分好double和float,而使用对应的格式符号。
输出格式:
抄自:https://zhidao.baidu.com/question/207746042.html
"%7.2lf"表示输出宽度是7,小数保留2位,l表示双精度。
抄自:https://zhidao.baidu.com/question/1383768168389540620.html
printf的输出格式
printf格式说明:
可以在"%"和字母之间插进数字表示最大场宽。例如: %3d 表示输出3位整型数, 不够3位右对齐。
%9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为7,小数点占一位, 不够9位右对齐。
%8s 表示输出8个字符的字符串, 不够8个字符右对齐。
如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。
但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出;
若小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。
另外, 若想在输出值前加一些0, 就应在场宽项前加个0。
例如: %04d 表示在输出一个小于4位的数值时, 将在前面补0使其总宽度为4位。
如果用浮点数表示字符或整型量的输出格式, 小数点后的数字代表最大宽度,小数点前的数字代表最小宽度。
例如: %6.9s 表示显示一个长度不小于6且不大于9的字符串。若大于9, 则第9个字符以后的内容将被删除。
(2). 可以在"%"和字母之间加小写字母l, 表示输出的是长型数。
例如: %ld 表示输出long整数
%lf 表示输出double浮点数
(3). 可以控制输出左对齐或右对齐, 即在"%"和字母之间加入一个"-" 号可
说明输出为左对齐, 否则为右对齐。
例如: %-7d 表示输出7位整数左对齐
%-10s 表示输出10个字符左对齐
参考资料:百度百科——printf()