- 计算机编程教程
- 计算机编程 - 首页
- 计算机编程 - 概述
- 计算机编程 - 基础
- 编程 - 环境
- 编程 - 基本语法
- 编程 - 数据类型
- 计算机编程 - 变量
- 计算机编程 - 关键字
- 计算机编程 - 运算符
- 计算机编程 - 决策
- 计算机编程 - 循环
- 计算机编程 - 数字
- 编程 - 字符
- 计算机编程 - 数组
- 计算机编程 - 字符串
- 计算机编程 - 函数
- 计算机编程 - 文件I/O
- 计算机编程 - 总结
- 计算机编程资源
- 编程 - 快速指南
- 计算机编程 - 资源
- 编程 - 讨论
计算机编程 - 数字
每种编程语言都支持操作不同类型的数字,例如简单的整数和浮点数。C、Java和Python根据数字的性质将它们分为几类。
让我们回顾一下数据类型章节,我们列出了与数字相关的核心数据类型:
类型 | 关键字 | 此数据类型可以表示的值范围 |
---|---|---|
整数 | int | -32,768 到 32,767 或 -2,147,483,648 到 2,147,483,647 |
短整数 | short | -32,768 到 32,767 |
长整数 | long | -2,147,483,648 到 2,147,483,647 |
十进制数 | float | 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 | double cos(double); 此函数接收一个角度(作为double类型)并返回余弦值。 |
2 | double sin(double); 此函数接收一个角度(作为double类型)并返回正弦值。 |
3 | double tan(double); 此函数接收一个角度(作为double类型)并返回正切值。 |
4 | double log(double); 此函数接收一个数字并返回该数字的自然对数。 |
5 | double pow(double, double); 第一个参数是您希望提升的数字,第二个参数是您希望提升的幂。 |
6 | double hypot(double, double); 如果您将直角三角形的两条边的长度传递给此函数,它将返回斜边的长度。 |
7 | double sqrt(double); 您将一个数字传递给此函数,它将返回其平方根。 |
8 | int abs(int); 此函数返回传递给它的整数的绝对值。 |
9 | double fabs(double); 此函数返回传递给它的任何十进制数的绝对值。 |
10 | double floor(double); 查找小于或等于传递给它的参数的整数。 |
下面是一个简单的示例,用于显示一些数学运算。要使用这些函数,您需要像包含stdio.h一样,在程序中包含数学头文件<math.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略有不同;它将数字分为int、long、float和complex。以下是Python中一些数字的示例:
int | long | float | 复数 |
---|---|---|---|
10 | 51924361L | 0.0 | 3.14j |
100 | -0x19323L | 15.20 | 45.j |
-786 | 0122L | -21.9 | 9.322e-36j |
080 | 0xDEFABCECBDAECBFBAEl | 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编程中一样使用它们。