回答編集履歴

4

whileとscanfコード追記

2020/05/30 15:04

投稿

SHOMI
SHOMI

スコア4079

test CHANGED
@@ -27,3 +27,33 @@
27
27
  }
28
28
 
29
29
  ```
30
+
31
+
32
+
33
+ ---
34
+
35
+ `while`と`scanf`
36
+
37
+ ```C
38
+
39
+ #include<stdio.h>
40
+
41
+ int main(void)
42
+
43
+ {
44
+
45
+ char a = 0;
46
+
47
+ while (a != 'E') {
48
+
49
+ scanf("%c", &a);
50
+
51
+ printf("%c:0x%x\n", a, a);
52
+
53
+ }
54
+
55
+ return 0;
56
+
57
+ }
58
+
59
+ ```

3

Eも表示はしたいようなのでコード修正

2020/05/30 15:04

投稿

SHOMI
SHOMI

スコア4079

test CHANGED
@@ -14,11 +14,13 @@
14
14
 
15
15
  int a;
16
16
 
17
+ do{
18
+
17
- while ((a = _getch()) != 'E') {
19
+ a = _getch();
18
20
 
19
21
  printf("%c:0x%x\n", a, a);
20
22
 
21
- }
23
+ } while (a != 'E');
22
24
 
23
25
  return 0;
24
26
 

2

Eを入力後も改行するまで文字入力できる旨追記

2020/05/30 11:16

投稿

SHOMI
SHOMI

スコア4079

test CHANGED
@@ -1,6 +1,6 @@
1
1
  `printf`の書式文字列`%c`は1文字表示。それに対応するコードを表示すればよいので、`%d`(10進)もしくは`%x`(16進)。
2
2
 
3
- `scanf()`は~~改行処理がめんどう~~改行するまで処理されない&エコーバックが邪魔なので、`_getch()`に変更しています。
3
+ `scanf()`は~~改行処理がめんどう~~改行するまで処理されない(Eを入力後も改行するまで文字入力できる)&エコーバックが邪魔なので、`_getch()`に変更しています。
4
4
 
5
5
  ```C
6
6
 

1

文言修正

2020/05/30 11:12

投稿

SHOMI
SHOMI

スコア4079

test CHANGED
@@ -1,6 +1,6 @@
1
1
  `printf`の書式文字列`%c`は1文字表示。それに対応するコードを表示すればよいので、`%d`(10進)もしくは`%x`(16進)。
2
2
 
3
- `scanf()`は改行処理がめんどうなので、`_getch()`に変更しています。
3
+ `scanf()`は~~改行処理がめんどう~~改行するまで処理されい&エコーバックが邪魔なので、`_getch()`に変更しています。
4
4
 
5
5
  ```C
6
6