Перевод float в int. Неверный результат - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <string.h>
  4. int main()
  5. {
  6. float D;
  7. int Y;
  8. D=1189100068;
  9. printf("D=%f\n",D);
  10. memcpy(&Y,&D,4);
  11. printf("Y=%d\n",Y);
  12. printf("D=%f\n",D);
  13. getch();
  14. return 0;
  15. }
Когда при запуске программы выводится число, оно выводится не таким, каким задавалось( в конце 32, а не 68) Объясните , пожалуйста

Решение задачи: «Перевод float в int. Неверный результат»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <string.h>
  4. int main()
  5. {
  6.     double D,Y;
  7.     D = 1189100068;
  8.     printf("D=%f\n", D);
  9.     memcpy(&Y, &D, 4);
  10.     printf("Y=%f\n", Y);
  11.     printf("D=%f\n", D);
  12.     _getch();
  13.     return 0;
  14. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут