C语言科学计数法介绍和示例

lsfreeing 2020-04-26

1、科学计数法

在实际开发中,我们很少使用科学计数法,但是它经常出现在计算机系统中,例如浮点数在内存中的存放方式就是科学计数法,所以我们还是有必要学习科学计数法。

科学记数法是一种记数的方法。把一个数表示成a与10^n^相乘的形式(1≤|a|\<10,n为整数),这种记数法叫做科学记数法。当我们要书写或运算某个较大或较小且位数较多时,用科学记数法免去浪费很多空间和时间。

例如:51400000000=5.14×10^11^,计算机表达10的幂是一般是用E或e,也就是51400000000=5.14E11或5.14e11。

用科学记数法表示数时,不改变数的符号,只是改变数的书写形式而已,可以方便的表示日常生活中遇到的一些极大或极小的数 。如:光的速度大约是300,000,000米/秒;全世界人口数大约是:6,100,000,000,这样的数书写和显示都很不方便,为了免去写这么多重复的0,将其表现为这样的形式:6,100,000,000=6.1×10^9^,即6.1E9或6.1e9。

0.00001=1×10^-5^,即绝对值小于1的数也可以用科学记数法表示为a乘10^-n^的形式。即1E-5或1e-5。

科学计数法采用%e或%E输出,完整的输出格式是%m.ne或%m.nE,指定输出数据整数部分和小数部分共占m位,其中有n位是小数。如果数值长度小于m,则左端补空格,若数值长度大于m,则按实际位数输出。

示例(book78.c)

/*
 * 程序名:book78.c,此程序测试浮点数据的科学计数法。
 * 作者:C语言技术网(www.freecplus.net) 日期:20190525
*/
#include <stdio.h>

int main()
{
  double dd;

  dd=123000000;
  printf("dd is  %.2e\n",dd);

  dd=-123000000;
  printf("dd is %.2e\n",dd);

  dd=0.0000000123;
  printf("dd is  %.2e\n",dd);

  dd=-0.0000000123;
  printf("dd is %.2e\n",dd);
}

运行效果
C语言科学计数法介绍和示例

2、版权声明

C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。

来源:C语言技术网(www.freecplus.net

作者:码农有道

相关推荐