C 언어에서 함수를 사용하여 10진수를 2진수로 변환하는 방법은 무엇인가요?
이 프로그램에서는 main()에서 바이너리 함수를 호출합니다. 호출된 이진수 변환 함수가 실제 변환을 수행합니다.
십진수를 이진수로 변환하는 데 사용하는 호출 함수의 논리는 다음과 같습니다. -
while(dno != 0){ rem = dno % 2; bno = bno + rem * f; f = f * 10; dno = dno / 2; }
마지막으로 이진수가 메인 프로그램에 반환됩니다.
다음은 10진수를 2진수로 변환하는 C 프로그램입니다-
< p>Live Demonstration#include<stdio.h> long tobinary(int); int main(){ long bno; int dno; printf(" Enter any decimal number : "); scanf("%d",&dno); bno = tobinary(dno); printf("</p><p> The Binary value is : %ld</p><p></p><p>",bno); return 0; } long tobinary(int dno){ long bno=0,rem,f=1; while(dno != 0){ rem = dno % 2; bno = bno + rem * f; f = f * 10; dno = dno / 2; } return bno;; }
위 프로그램을 실행하면 다음과 같은 결과가 나옵니다-
Enter any decimal number: 12 The Binary value is: 1100
자, 시도해 보세요 이진수를 십진수로 변환합니다.
다음은 이진수를 십진수로 변환하는 C 프로그램입니다 -
Live Demo
#include #include <stdio.h> int todecimal(long bno); int main(){ long bno; int dno; printf("Enter a binary number: "); scanf("%ld", &bno); dno=todecimal(bno); printf("The decimal value is:%d</p><p>",dno); return 0; } int todecimal(long bno){ int dno = 0, i = 0, rem; while (bno != 0) { rem = bno % 10; bno /= 10; dno += rem * pow(2, i); ++i; } return dno; }
위 프로그램을 실행하면 다음과 같은 결과가 나옵니다 -
Enter a binary number: 10011 The decimal value is:19
위 내용은 10진수를 2진수로 변환하는 C언어 프로그램 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!