如何从double中分隔数字并将它们存储为C中的int?

说我有一个双如下:

double aDouble = 15.6; 

我想将它转换为三个int,如下所示:

 int x = 1; int y = 5; int z = 6; 

我该怎么做呢?

 double aDouble = 15.6; int tmp = aDouble*10; int x, y, z; x = tmp/100; tmp -= x * 100; y = tmp/10; tmp -= y * 10; z = tmp; 

由于这看起来像家庭作业,我会给你2条线索。

  1. 15.6 = 1 * 10 + 5 * 1 + 6 * 0.1
  2. 从double转换为int会使双重转换。

你应该能够解决剩下的问题。