我已经在网上搜索了一段时间...但是我找不到一种方法来要求程序打印一个超过6个十进制数字的数字。我需要更多的十进制数字以提高精度,因为我要测量的差异远小于0.0000004(需要执行小函数的时间差异)。有没有一种方法可以提高精度?
PS:我是编程初学者。
编辑:我应该在之前发布它:
我正在使用一种简单的clock()
安排来获取时间。在这种情况下:
double t;
start = clock();
f();
t = (double)(clock() - start)/CLOCKS_PER_SEC;
printf("t = %lf", t);
但是它总是返回我0.000000,因为我可以给t的最小值是0.000001,并且函数“ f”花费的时间少于运行该函数的时间。
答案 0 :(得分:0)
如果您正在寻找精度更高的数据类型,则可以使用double并注明要打印的位数。
有关数据类型的更多详细信息-https://www.geeksforgeeks.org/data-types-in-c/
答案 1 :(得分:0)
以下是在浮点后打印10位数字的方法:
printf("t = %.10lf", t);
这是在浮点数后打印15位数字的方法:
printf("t = %.15lf", t);