Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Mendapatkan Keputusan Terapung daripada Bahagian Integer dalam C?

Bagaimana untuk Mendapatkan Keputusan Terapung daripada Bahagian Integer dalam C?

DDD
DDDasal
2024-11-25 17:37:14561semak imbas

How to Get a Float Result from Integer Division in C  ?

Melemparkan Integer ke Terapung untuk Pembahagian Tepat

Dalam C , membahagi dua integer, seperti dalam a/b, menghasilkan hasil bahagi integer . Untuk mendapatkan hasil apungan, seseorang mesti secara khusus membuang operan ke terapung.

Pernyataan Masalah:

Apabila menggunakan operan integer dalam operasi bahagi, hasilnya dipotong kepada integer. Bagaimanakah seseorang boleh menghalang perkara ini dan mengekalkan integriti nombor?

Penyelesaian:

Untuk membetulkan isu ini dan memastikan hasil apungan, hantar operan ke terapung:

float ans = (float)a / (float)b;

Dengan menukarkan operan kepada terapung secara eksplisit, operasi bahagi akan menghasilkan hasil apungan, mengekalkan sebarang ketepatan perpuluhan.

Contoh:

Pertimbangkan kod berikut:

#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
  int a = 10, b = 3;
  float ans = (float)a / (float)b;
  cout << fixed << setprecision(3);
  cout << (a/b) << endl;
  cout << ans << endl;
  return 0;
}

Output:

3
3.333

Seperti yang dilihat di atas, tuangan memastikan hasil apungan, mengekalkan ketepatan perpuluhan yang betul.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Keputusan Terapung daripada Bahagian Integer dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn