<div>#pragma hdrstop</div> <div>#pragma argsused</div> <div><br></div> <div>#include <stdio.h></div> <div>#include <tchar.h></div> <div>#include <conio.h></div> <div><br></div> <div>//13. int의 상위 2바이트와 하위 2바이트의 값을 short int로 각각 출력하는</div> <div>// 프로그램을 작성하라. 이때, 하나의 int와 short int 배열의 두 원소로 구성된</div> <div>// 공용체를 사용하라</div> <div><br></div> <div>struct bc{</div> <div> int a;</div> <div> int short b[20];</div> <div> int short c[20];</div> <div>};</div> <div><br></div> <div><br></div> <div>int main()</div> <div>{</div> <div> int i, j, ij, result[20];</div> <div><br></div> <div>struct bc bc;</div> <div><br></div> <div> scanf("%d",&bc.a);</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>// 10진수를 2진수로 변환</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for(i=0; bc.a>0 ; i++)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>result[20] = bc.a%2;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>bc.a = bc.a/2;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>ij = i;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> j = i;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for(j=--i;j>-1;j--)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> if(j>i/2)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> bc.b[j] = result[j];</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> printf("%d\n", bc.b[j]);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> bc.c[j] = result[j];</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span> printf("%d\n", bc.c[j]);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("\n변환 결과\n");</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for(--i;i>-1;i--)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(i>ij/2)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("%d", bc.b[j]);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("%d", bc.c[j]);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><br></div> <div><br></div> <div> system("pause");</div> <div> return 0;</div> <div> }</div> <div><br></div> <div><br></div> <div>/* 나름 이리 저리 돌려봤는대 결국은 안됩니다.</div> <div>그냥 상하위 바이트를 나누지 않고는 잘 만들어서 돌렸는대 나누라니깐 모르겠더군요</div> <div>*<span style="font-size:9pt;">/</span></div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.