=0;i--){printf("%d",a[i]);}}"."/> =0;i--){printf("%d",a[i]);}}".">

Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menukar perpuluhan kepada binari dalam bahasa c

Bagaimana untuk menukar perpuluhan kepada binari dalam bahasa c

青灯夜游
青灯夜游asal
2022-11-24 10:27:2647457semak imbas

Cara menukar perpuluhan kepada perduaan: teruskan membahagikan nombor perpuluhan dengan 2 sehingga hasil bagi sifar, dan kemudian tulis baki dari bawah ke atas; ;int a[20];scanf("%d",&n);while(n/2){a[len ]=n%2;n=n/2;}a[len ]=n%2;for (i=len-1;i>=0;i--){printf("%d",a[i]);}}".

Bagaimana untuk menukar perpuluhan kepada binari dalam bahasa c

Persekitaran pengendalian tutorial ini: sistem Windows 7, versi c99, komputer Dell G3.

Perpuluhan bahasa C kepada penukaran binari

Dalam bahasa C, menukar perpuluhan kepada asas lain adalah lebih rumit.

Integer perpuluhan ditukar kepada integer berasaskan N menggunakan kaedah "bahagi dengan N, ambil baki dan susun dalam susunan terbalik". Kaedah khusus ialah:

  • Gunakan N sebagai pembahagi dan bahagikan integer perpuluhan dengan N untuk mendapatkan hasil bagi dan baki

  • Simpan baki, Teruskan bahagikan hasil bahagi dengan N, dan anda akan mendapat hasil bahagi baharu dan baki

  • Masih mengekalkan baki, terus bahagikan hasil bahagi dengan N, dan anda akan mendapat satu; hasil bagi baharu dan baki;

  • Ulang ini, mengekalkan baki setiap kali, dan kemudian bahagikan dengan N dengan hasil bahagi sehingga hasil bahagi ialah 0.

Ambil baki yang diperoleh dahulu sebagai digit tertib rendah nombor asas N, dan selebihnya diperoleh kemudian sebagai digit tertib tinggi nombor asas N Susunkannya untuk mendapatkan nombor asas N.

Dan Jika anda ingin menukar perpuluhan kepada perduaan, anda perlu menggunakan prinsip "bahagi dengan 2, ambil baki, dan susun dalam susunan terbalik":

  • Tukar nombor Bahagi dengan 2 secara berterusan sehingga hasil bahagi sifar, dan kemudian tulis baki dari bawah ke atas untuk mendapatkan perwakilan binari nombor tersebut.

Rajah berikut menunjukkan proses menukar nombor perpuluhan 42 kepada binari:

Bagaimana untuk menukar perpuluhan kepada binari dalam bahasa c

Seperti yang anda boleh lihat daripada rajah, nombor perpuluhan 42 Keputusan ditukar kepada binari ialah 101010.

Kod pelaksanaan:

#include <stdio.h>
int main(void)
{
	int n,length;	//length用来装二进制数的个数
	int a[20];		//定义一个数组来装余2得到的余数
	scanf("%d",&n);	//输入十进制的数字
	while(n/2){		//当n=1时,n/2=0,此时while(0)不执行while中的语句,直接执行下面的语句
		a[length++] = n%2;	//将除2得到的余数装入数组中
		n = n/2;			//除二
	}
	a[length++] = n%2;		//存储最后一个余数
	//将余数从下往上输出
	for(int i = length-1;i>=0;i--)
		printf("%d",a[i]);
}

Bagaimana untuk menukar perpuluhan kepada binari dalam bahasa c

Cadangan berkaitan: "Tutorial Video C"

Atas ialah kandungan terperinci Bagaimana untuk menukar perpuluhan kepada binari dalam bahasa 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