计算机编程 - 数字


每种编程语言都支持操作不同类型的数字,例如简单的整数和浮点数。C、Java 和 Python 根据这些数字的性质将其分为几个类别。

让我们回顾一下数据类型章节,其中我们列出了与数字相关的核心数据类型 -

类型 关键词 该数据类型可以表示的取值范围
数字 整数 -32,768 至 32,767 或 -2,147,483,648 至 2,147,483,647
少数 短的 -32,768 至 32,767
长数 长的 -2,147,483,648 至 2,147,483,647
十进制数 漂浮 1.2E-38 至 3.4E+38 直至小数点后 6 位

这些数据类型称为原始数据类型,您可以使用这些数据类型构建更多数据类型,这些数据类型称为用户定义的数据类型。

在讨论运算符时,我们已经看到了数字的各种数学和逻辑运算。所以我们知道如何加法、减法、除法等。

首先让我们看看如何打印 C 编程语言中可用的各种类型的数字 -

#include <stdio.h>

int main() {
   short  s;
   int    i;
   long   l;
   float  f;
   double d;

   s = 10;
   i = 1000;
   l = 1000000;
   f = 230.47;
   d = 30949.374;

   printf( "s: %d\n", s);
   printf( "i: %d\n", i);
   printf( "l: %ld\n", l);
   printf( "f: %.3f\n", f);
   printf( "d: %.3f\n", d);
}

其余的编码非常明显,但是我们使用%.3f来打印 float 和 double,它表示要打印的小数点后的位数。执行上述程序时,会产生以下结果 -

s: 10
i: 1000
l: 1000000
f: 230.470
d: 30949.374

数字的数学运算

下表列出了 C 编程语言中可用的各种有用的内置数学函数,可用于各种重要的数学计算。

例如,如果您想计算一个数字(例如 2304)的平方根,那么您可以使用一个内置函数来计算平方根。

先生。 功能与目的
1

双余弦(双);

该函数接受一个角度(作为双精度值)并返回余弦值。

2

双罪(双);

该函数接受一个角度(作为双精度值)并返回正弦值。

3

双棕褐色(双);

该函数接受一个角度(作为双精度值)并返回正切值。

4

双对数(双);

该函数接受一个数字并返回该数字的自然对数。

5

双战俘(双,双);

第一个是您希望提高的数字,第二个是您希望提高的功率。

6

双hypot(双,双);

如果将此函数传递给直角三角形两条边的长度,它将返回斜边的长度。

7

双开方(双);

您向该函数传递一个数字,它会返回其平方根。

8

int 绝对值(int);

此函数返回传递给它的整数的绝对值。

9

双晶圆厂(双);

此函数返回传递给它的任何十进制数的绝对值。

10

双层(双人);

查找小于或等于传递给它的参数的整数。

下面是一个简单的例子来展示一些数学运算。要使用这些函数,您需要在程序中包含数学头文件<math.h>,就像包含stdio.h一样-

#include <stdio.h>
#include <math.h>

int main() {
   short  s;
   int    i;
   long   l;
   float  f;
   double d;

   printf( "sin(s): %f\n", sin(10));
   printf( "abs(i): %f\n", abs(1000));
   printf( "floor(f): %f\n", floor(230.47));
   printf( "sqrt(l): %f\n", sqrt(1000000));
   printf( "pow(d, 2): %f\n", pow(2.374, 2));
}

执行上述程序时,会产生以下结果 -

sin(s): -0.544021
abs(i): -0.544021
floor(f): 230.000000
sqrt(l): 1000.000000
pow(d, 2): 5.635876

除了上述用法之外,您还将在 C 编程中使用循环计数、标志表示、真值或假值中的数字。

Java 中的数字

以下是用 Java 编写的等效程序。Java 提供了 C 编程中几乎所有可用的数值数据类型。

您可以尝试执行以下程序来查看输出,该输出与上面的 C 示例生成的结果相同。

public class DemoJava {
   public static void main(String []args) {
      short  s;
      int    i;
      long   l;
      float  f;
      double d;

      s = 10;
      i = 1000;
      l = 1000000L;
      f = 230.47f;
      d = 30949.374;

      System.out.format( "s: %d\n", s);
      System.out.format( "i: %d\n", i);
      System.out.format( "l: %d\n", l);
      System.out.format( "f: %f\n", f);
      System.out.format( "d: %f\n", d);
   }
}

执行上述程序时,会产生以下结果 -

s: 10
i: 1000
l: 1000000
f: 230.470001
d: 30949.374000

Java还提供了一整套用于数学计算的内置函数,您可以像在C编程中一样使用它们。

Python 中的数字

Python 与 C 和 Java 略有不同;它将数字分类为intlongfloatcomplex。以下是 Python 中数字的一些示例 -

整数 长的 漂浮 复杂的
10 51924361L 0.0 3.14j
100 -0x19323L 15.20 45.j
-786 0122L -21.9 9.322e-36j
080 0xDEFABCCECBDAECBFBAEl 32.3+e18 .876j
-0490 535633629843L -90。 -.6545+0J
-0x260 -052318172735L -32.54e100 3e+26J
0x69 -4721885298529L 70.2-E12 4.53e-7j

以下是用 Python 编写的等效程序 -

s = 10
i = 1000
l = 1000000
f = 230.47
d = 30949.374

print "s: ", s
print "i: ", i
print "l: ", l
print "f: ", f
print "d: ", d

执行上述程序时,会产生以下结果 -

s:  10
i:  1000
l:  1000000
f:  230.47
d:  30949.374

Python 还提供了一整套用于数学计算的内置函数,您可以像在 C 编程中使用它们一样使用它们。