質問編集履歴

10

修正

2019/03/22 06:20

投稿

apeirogon0813
apeirogon0813

スコア117

test CHANGED
File without changes
test CHANGED
@@ -28,9 +28,7 @@
28
28
 
29
29
 
30
30
 
31
- ~~~~また, 例えば通常のポインタ *aであれば, aはaの指しているポインタ先のアドレスを示し, &aは自分のアドレスを示すことであると思うのですが,~~
32
31
 
33
- ~~ダブルポインタ **bの場合, bはポインタ先のポインタのアドレスかポインタのポインタ先のアドレスどちらを示しているのでしょうか?~~
34
32
 
35
33
  ![![](1d1ba4b11b22fff84c469da26fc68d75.png)
36
34
 
@@ -158,7 +156,9 @@
158
156
 
159
157
 
160
158
 
159
+ ~~(p=NULL || data > p->data)~~
160
+
161
- (p=NULL || data > p->data)
161
+ (p=NULL || data < p->data)
162
162
 
163
163
 
164
164
 
@@ -166,7 +166,9 @@
166
166
 
167
167
 
168
168
 
169
+ ~~while(p->next != NULL && data < p->next->data)~~
170
+
169
- while(p->next != NULL && data < p->next->data)
171
+ while(p->next != NULL && data > p->next->data)
170
172
 
171
173
 
172
174
 

9

修正

2019/03/22 06:20

投稿

apeirogon0813
apeirogon0813

スコア117

test CHANGED
File without changes
test CHANGED
@@ -178,7 +178,7 @@
178
178
 
179
179
 
180
180
 
181
- **追記**間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
181
+ **追記: **間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
182
182
 
183
183
  "お"、"か"はそれぞれ
184
184
 

8

修正

2019/03/22 06:18

投稿

apeirogon0813
apeirogon0813

スコア117

test CHANGED
File without changes
test CHANGED
@@ -178,9 +178,7 @@
178
178
 
179
179
 
180
180
 
181
- **追記**
182
-
183
- 間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
181
+ **追記**間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
184
182
 
185
183
  "お"、"か"はそれぞれ
186
184
 

7

追記

2019/03/22 06:17

投稿

apeirogon0813
apeirogon0813

スコア117

test CHANGED
File without changes
test CHANGED
@@ -178,7 +178,7 @@
178
178
 
179
179
 
180
180
 
181
- 追記
181
+ **追記**
182
182
 
183
183
  間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
184
184
 

6

追記

2019/03/22 06:16

投稿

apeirogon0813
apeirogon0813

スコア117

test CHANGED
File without changes
test CHANGED
@@ -175,3 +175,21 @@
175
175
  list **p = head_p;
176
176
 
177
177
  とありますが, このhead_pの値はリストの先頭のアドレスを指しているのでしょうか?
178
+
179
+
180
+
181
+ 追記
182
+
183
+ 間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
184
+
185
+ "お"、"か"はそれぞれ
186
+
187
+ while(*p != NULL && data < (*p)->data)
188
+
189
+ であり、"き"は
190
+
191
+ p = &(*p)->next;
192
+
193
+ であると思うのですが、これは
194
+
195
+ p = **pと表記することも等しいと思うのですかどうなんでしょうか。

5

画像の追加

2019/03/22 06:16

投稿

apeirogon0813
apeirogon0813

スコア117

test CHANGED
File without changes
test CHANGED
@@ -150,6 +150,8 @@
150
150
 
151
151
  ```
152
152
 
153
+ ![イメージ説明](236b4d14c6eecf57777d3e92ca55d829.jpeg)
154
+
153
155
  ### 試したこと
154
156
 
155
157
  まず、"あ"と"い"は先頭が空リストの場合と値が昇順になることを考えて

4

修正

2019/03/22 06:08

投稿

apeirogon0813
apeirogon0813

スコア117

test CHANGED
File without changes
test CHANGED
@@ -41,6 +41,16 @@
41
41
 
42
42
 
43
43
  ```C
44
+
45
+ typedef struct list {
46
+
47
+ int data;
48
+
49
+ struct list *next;
50
+
51
+ } list
52
+
53
+
44
54
 
45
55
  list * list_alloc(int data) {
46
56
 
@@ -106,7 +116,7 @@
106
116
 
107
117
  ```C
108
118
 
109
- void insert2(lost ** head_p, int data) {
119
+ void insert2(list ** head_p, int data) {
110
120
 
111
121
  list * new = list_alloc(data);
112
122
 

3

修正

2019/03/20 20:44

投稿

apeirogon0813
apeirogon0813

スコア117

test CHANGED
File without changes
test CHANGED
@@ -128,11 +128,11 @@
128
128
 
129
129
  list *head = NULL;
130
130
 
131
- insert2($head,100);
131
+ insert2(&head,100);
132
132
 
133
- insert2($head,50);
133
+ insert2(&head,50);
134
134
 
135
- insert2($head,20);
135
+ insert2(&head,20);
136
136
 
137
137
  }
138
138
 

2

list_allocの追加

2019/03/20 20:42

投稿

apeirogon0813
apeirogon0813

スコア117

test CHANGED
File without changes
test CHANGED
@@ -41,6 +41,20 @@
41
41
 
42
42
 
43
43
  ```C
44
+
45
+ list * list_alloc(int data) {
46
+
47
+ list *p = malloc(sizeof(list));
48
+
49
+ p->data = data;
50
+
51
+ p->next = NULL;
52
+
53
+ return p;
54
+
55
+ }
56
+
57
+
44
58
 
45
59
  list * insert1(list *head, int data) {
46
60
 

1

修正

2019/03/20 20:33

投稿

apeirogon0813
apeirogon0813

スコア117

test CHANGED
File without changes
test CHANGED
@@ -28,7 +28,9 @@
28
28
 
29
29
 
30
30
 
31
- ~~~~また, 例えば通常のポインタ *aであれば, aはaの指しているポインタ先のアドレスを示し, &aは自分のアドレスを示すことであると思うのですが,~~ ダブルポインタ **bの場合, bはポインタ先のポインタのアドレスかポインタのポインタ先のアドレスどちらを示しているのでしょうか?~~
31
+ ~~~~また, 例えば通常のポインタ *aであれば, aはaの指しているポインタ先のアドレスを示し, &aは自分のアドレスを示すことであると思うのですが,~~
32
+
33
+ ~~ダブルポインタ **bの場合, bはポインタ先のポインタのアドレスかポインタのポインタ先のアドレスどちらを示しているのでしょうか?~~
32
34
 
33
35
  ![![](1d1ba4b11b22fff84c469da26fc68d75.png)
34
36