回答編集履歴
1
追記
test
CHANGED
@@ -9,7 +9,22 @@
|
|
9
9
|
int decimal, i = 0;
|
10
10
|
printf("10進数を入力してください>>>");
|
11
11
|
scanf("%d", &decimal);
|
12
|
-
|
12
|
+
while (decimal >> ++i) ;
|
13
13
|
do putchar(decimal >> --i & 1 | '0'); while (i);
|
14
14
|
}
|
15
15
|
```
|
16
|
+
**追記**
|
17
|
+
ビット演算ではなく、四則演算だけでやるとすれば、
|
18
|
+
```c
|
19
|
+
#include <stdio.h>
|
20
|
+
|
21
|
+
int main(void)
|
22
|
+
{
|
23
|
+
int decimal, i = 2;
|
24
|
+
printf("10進数を入力してください>>>");
|
25
|
+
scanf("%d", &decimal);
|
26
|
+
while (decimal / i) i *= 2;
|
27
|
+
i /= 2;
|
28
|
+
do putchar(decimal / i % 2 + '0'); while (i /= 2);
|
29
|
+
}
|
30
|
+
```
|