2진수를 10진수 16진수로 출력
2024. 7. 6. 19:52ㆍ정보처리,전산/Clang
반응형
2진수 -> 10진수
#include <math.h>
#include <stdio.h>
#include <string.h>
int binaryToDecimal(const char *binary) {
int decimal = 0;
int length = strlen(binary);
for (int i = 0; i < length; i++) {
if (binary[length - 1 - i] == '1') { //문자열의 끝에서부터 현재 인덱스 i 위치에 있는 문자가 '1'인지 확인
decimal += pow(2, i);
}
}
return decimal;
}
int main() {
char binary[65]; //최대 64비트 2진수
printf("이진수 입력: ");
scanf("%64s", binary);
int decimal=binaryToDecimal(binary);
printf("%d\n",decimal);
return 0;
}
10진수 -> 16진수
#include <math.h>
#include <stdio.h>
#include <string.h>
int binaryToDecimal(const char *binary) {
int decimal = 0;
int length = strlen(binary);
for (int i = 0; i < length; i++) {
if (binary[length - 1 - i] == '1') {
decimal += pow(2, i);
}
}
return decimal;
}
//10진수 ->16진수
void decimalToHexadecimal(int decimal, char *hexadecimal){
sprintf(hexadecimal,"%X",decimal);
}
int main() {
char binary[65]; //최대 64비트 2진수
char hexadecimal[17];
printf("이진수 입력: ");
scanf("%64s", binary);
int decimal=binaryToDecimal(binary);
decimalToHexadecimal(decimal,hexadecimal);
printf("%s\n",hexadecimal);
return 0;
}
#include <stdio.h>
int main(){
short digit; //2byte 정수 자료형
short *ptr; //4byte 포인터 변수
ptr=&digit;
*ptr=256;
printf("%d(%04x)",digit,digit); //10진수, 16진수 네자리 출력
}
반응형
'정보처리,전산 > Clang' 카테고리의 다른 글
포인터, 문자열, 배열, 기본 입출력 (0) | 2024.07.15 |
---|---|
Struct 구조체 메모리 할당 크기 (0) | 2024.07.10 |
포인터 변수 **p (0) | 2024.07.06 |
지역변수 정적변수 (0) | 2024.07.04 |
struct 구조체 (0) | 2024.06.30 |