|
val을 char 로 바꾸시고요
char val[10]; 이렇게요.
그리고
scanf 를 잘못쓰셨네요
scanf("%s",val); 이렇게 바꾸세요
계산식은
a = (val[0]-'0')*2*2*2*2........... 이런식으로
물론 입력은 1과 0으로만 조합되어진 문자열이겠죠.
카리쓸까? 님이 쓰신 글 :
: 2진수를 10진형으루 하기위해서 입력값 일의 자리에는 2의 영승을
:
: 입력값의 십의 자리에는 2의 1승을..
:
: 입력값의 백의 자리에는 2의 2승을..
:
: ~~~~~~12자리까지....
:
: 이런식으루 하려는데여 잘안되네여 ㅜ.ㅡ 밑글에 진수변환? 글은 이해하기 힘드네여
: 책보고 대충 짜봤는데 역시나 원하는 값이 나오지 않는데 고수님들의 조언좀...
:
:
: #include<stdio.h>
: main()
: {
: int a,b,c,d,e,f,g,h,i,j
: int val[10];
:
: scanf("%s",&val);
:
:
:
:
: a=val[0]*2*2*2*2*2*2*2*2*2;
: b=val[1]*2*2*2*2*2*2*2*2;
: c=val[2]*2*2*2*2*2*2*2;
: d=val[3]*2*2*2*2*2*2;
: e=val[4]*2*2*2*2*2;
: f=val[5]*2*2*2*2;
: g=val[6]*2*2*2;
: h=val[7]*2*2;
: i=val[8]*2;
: j=val[9];
:
:
: x=a+b+c+d+e+f+g+h+i+j;
:
: printf("%d",x);
: }
:
:
|