CAFE

C 프로그래밍

2진수로 입력하면 10진수로 출력

작성자별은빛나고|작성시간15.07.23|조회수405 목록 댓글 1


#include <stdio.h>
 
int main()
{
    char str[30= "\0";
    int num = 0, i;
 
    printf("Input binary number:");
    scanf("%s", str);
 
    for (i = 0; str[i]; i++) {
        num = (num <<= 1+ (str[i] - '0');
//        num <<= 1;        num += str[i] - '0';
    }
 
    printf("%d\n", num);
 
    return 0;
}
cs

#include <stdio.h>
 
int main()
{
    char str[30= "\0";
    int num = 0, i;
 
    printf("2진수 :");
    scanf("%s", str);
 
    for (i = 0; str[i]; i++) {
        num = num * 2;
        num = num + (str[i] - '0');
   }
 
    printf("%d(10)입니다.\n", num);
 
    return 0;
}
cs


다음검색
현재 게시글 추가 기능 열기

댓글

댓글 리스트
  • 작성자난나나임 | 작성시간 16.04.05 밑에 코드에서 num = num + (str[i] - '0'); 이 부분을 왜 사용하는 지 이해가 안되는데 설명좀 해주세요
댓글 전체보기
맨위로

카페 검색

카페 검색어 입력폼