C語言科學計數法介紹和示例

1、科學計數法

在實際開發中,我們很少使用科學計數法,但是它經常出現在計算機系統中,例如浮點數在內存中的存放方式就是科學計數法,所以我們還是有必要學習科學計數法。

科學記數法是一種記數的方法。把一個數表示成a與10n相乘的形式(1≤|a|<10,n爲整數),這種記數法叫做科學記數法。當我們要書寫或運算某個較大或較小且位數較多時,用科學記數法免去浪費很多空間和時間。

例如:51400000000=5.14×1011,計算機表達10的冪是一般是用E或e,也就是51400000000=5.14E11或5.14e11。

用科學記數法表示數時,不改變數的符號,只是改變數的書寫形式而已,可以方便的表示日常生活中遇到的一些極大或極小的數 。如:光的速度大約是300,000,000米/秒;全世界人口數大約是:6,100,000,000,這樣的數書寫和顯示都很不方便,爲了免去寫這麼多重複的0,將其表現爲這樣的形式:6,100,000,000=6.1×109,即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);
}

運行效果
在這裏插入圖片描述

2、版權聲明

C語言技術網原創文章,轉載請說明文章的來源、作者和原文的鏈接。

來源:C語言技術網(www.freecplus.net

作者:碼農有道

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章