일반적인 문제 C 언어에서 10진수를 16진수로 변환하는 방법은 무엇입니까?

C 언어에서 10진수를 16진수로 변환하는 방법은 무엇입니까?

Feb 22, 2019 am 11:45 AM
c 언어

C 언어에서 10진수를 16진수로 변환하는 방법: 1. while 루프 방법을 통해 2. for 루프 방법을 통해 3. "intdecimal_to_hexadecimal(int x)"와 같은 코드를 변환하는 함수를 사용합니다.

C 언어에서 10진수를 16진수로 변환하는 방법은 무엇입니까?

이 문서의 운영 환경: Windows 7 시스템, 버전 C11, Dell G3 컴퓨터.

C 언어에서는 for 루프, while 루프 또는 함수를 사용하여 10진수를 16진수로 변환하는 방법이 많이 있습니다. 구체적인 방법 소개를 살펴보겠습니다

10진수는 10진수를 가지며 다음 숫자를 포함합니다: 0 1 2 3 4 5 6 7 8 9

16진수 숫자는 16진수를 가지며 다음 값을 포함합니다: 0 1 2 3 4 5 6 7 8 9 A B C D E F, 여기서 A = 10, B = 11, C = 12, D = 13, E = 14, F = 15입니다.

C언어에서 10진수를 16진수로 변환하는 코드는 다음과 같습니다

while 루프:

#include<stdio.h>
int main() {
	long int decimalNumber,remainder,quotient;
	int i=1,j,temp;
	char hexadecimalNumber[100];
	printf("输入十进制数任意: ");
	scanf("%ld",&decimalNumber);
	quotient = decimalNumber;
	while(quotient!=0) {
		temp = quotient % 16;
		if( temp < 10)
		           temp =temp + 48; else
		         temp = temp + 55;
		hexadecimalNumber[i++]= temp;
		quotient = quotient / 16;
	}
	printf("十进制数的等效十六进制值 %d: ",decimalNumber);
	for (j = i -1 ;j> 0;j--)
	      printf("%c",hexadecimalNumber[j]);
	return 0;
}
로그인 후 복사

for 루프

#include<stdio.h>
#include<math.h>

int main()
{
      int decimal_number, remainder, hexadecimal_number = 0;
      int count;
      printf("Enter a Decimal Number:\t");
      scanf("%d", &decimal_number);	
      for(count = 0; decimal_number > 0; count++)
      {
            remainder = decimal_number % 16;
            hexadecimal_number = hexadecimal_number + remainder * pow(10, count);
            decimal_number = decimal_number / 16;
      }
      printf("\nHexadecimal Equivalent:\t%d\n", hexadecimal_number);
      return 0;
}
로그인 후 복사

함수 사용

#include<stdio.h>
#include<math.h>

int decimal_to_hexadecimal(int x)
{
      int hexadecimal_number, remainder, count = 0;
      for(count = 0; x > 0; count++)
      {
            remainder = x % 16;
            hexadecimal_number = hexadecimal_number + remainder * pow(10, count);
            x = x / 16;
      }
      return hexadecimal_number;
}

int main()
{
      int decimal_number, result;
      printf("Enter a Decimal Number:\t");
      scanf("%d", &decimal_number);		
      result = decimal_to_hexadecimal(decimal_number);	
      printf("\nHexadecimal Equivalent:\t%d\n", result);
      return 0;
}
로그인 후 복사

위 내용은 C 언어에서 10진수를 16진수로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

C 언어에서 typedef 구조체 사용법 C 언어에서 typedef 구조체 사용법 May 09, 2024 am 10:15 AM

C 언어에서 typedef 구조체 사용법

C 언어에서 strcpy와 strcat의 차이점 C 언어에서 strcpy와 strcat의 차이점 May 08, 2024 pm 01:03 PM

C 언어에서 strcpy와 strcat의 차이점

C 언어에서 Real은 무엇을 의미합니까? C 언어에서 Real은 무엇을 의미합니까? May 09, 2024 pm 12:06 PM

C 언어에서 Real은 무엇을 의미합니까?

C 언어로 거듭제곱 함수를 구현하는 방법 C 언어로 거듭제곱 함수를 구현하는 방법 May 09, 2024 pm 11:33 PM

C 언어로 거듭제곱 함수를 구현하는 방법

C 언어에서 제한을 사용하는 방법 C 언어에서 제한을 사용하는 방법 May 08, 2024 pm 01:30 PM

C 언어에서 제한을 사용하는 방법

C 언어에서 scanf 오류가 발생하면 어떻게 해야 할까요? C 언어에서 scanf 오류가 발생하면 어떻게 해야 할까요? May 09, 2024 am 11:39 AM

C 언어에서 scanf 오류가 발생하면 어떻게 해야 할까요?

_C 언어의 복잡한 사용법 _C 언어의 복잡한 사용법 May 08, 2024 pm 01:27 PM

_C 언어의 복잡한 사용법

_C언어에서 bool은 무슨 뜻인가요? _C언어에서 bool은 무슨 뜻인가요? May 08, 2024 pm 01:33 PM

_C언어에서 bool은 무슨 뜻인가요?