質問編集履歴

5

修正

2018/05/24 04:11

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -150,30 +150,6 @@
150
150
 
151
151
 
152
152
 
153
- イメージ
154
-
155
- A:3 5 7 9 11 13
156
-
157
- B:0 0 0 0 0 0
158
-
159
-
160
-
161
- A:0 0 0 0 0 0
162
-
163
- B:3 5 7 9 11 13
164
-
165
-
166
-
167
- **問題文**
168
-
169
- move_array 関数の引数は、各配列の先頭アドレスを渡すポインタ 2 つと配列の個数とする。また、 show_array 関数の引数は、配列の先頭アドレスを渡すポインタと配列の個数とする。配列の初期値の設定は main 関数にて行うこと。なお、関数内ではポインタを用いてデータの操作を行うこととし、配列形式での変 数の操作は行わないこと。
170
-
171
-
172
-
173
- ![イメージ説明](5b55e61dedce2873c96e3979f7fc4c11.png)
174
-
175
-
176
-
177
153
  ```c
178
154
 
179
155
  void show_array( int *x, int n )

4

追記

2018/05/24 04:11

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -197,3 +197,119 @@
197
197
  }
198
198
 
199
199
  ```
200
+
201
+
202
+
203
+ ```c
204
+
205
+ #include <stdio.h>
206
+
207
+
208
+
209
+ void move_array(int *s, int *d, int n );
210
+
211
+ void show_array( int *x, int n );
212
+
213
+
214
+
215
+ int main(void)
216
+
217
+ {
218
+
219
+ int a[6];
220
+
221
+ a[0] = 3;
222
+
223
+ a[1] = 5;
224
+
225
+ a[2] = 7;
226
+
227
+ a[3] = 9;
228
+
229
+ a[4] = 11;
230
+
231
+ a[5] = 13;
232
+
233
+
234
+
235
+ int b[6];
236
+
237
+
238
+
239
+ b[0] = 0;
240
+
241
+ b[1] = 0;
242
+
243
+ b[2] = 0;
244
+
245
+ b[3] = 0;
246
+
247
+ b[4] = 0;
248
+
249
+ b[5] = 0;
250
+
251
+
252
+
253
+
254
+
255
+ move_array(&a[6],&b[6], 6);
256
+
257
+ show_array(a, 6);
258
+
259
+ show_array(b, 6);
260
+
261
+
262
+
263
+ return 0;
264
+
265
+ }
266
+
267
+
268
+
269
+ void move_array(int *s, int *d, int n )
270
+
271
+ {
272
+
273
+ int tmp = 0;
274
+
275
+ for (int i=0; i < n; i++)
276
+
277
+ {
278
+
279
+ tmp = s[i];
280
+
281
+ s[i] = d[i];
282
+
283
+ s[i] = tmp;
284
+
285
+ }
286
+
287
+ return;
288
+
289
+ }
290
+
291
+
292
+
293
+
294
+
295
+ void show_array( int *x, int n )
296
+
297
+ {
298
+
299
+ printf("A:");
300
+
301
+ printf("B:");
302
+
303
+ for (int i = 0; i < n; i++)
304
+
305
+ {
306
+
307
+ printf("%d",x[i]);
308
+
309
+ }
310
+
311
+
312
+
313
+ }
314
+
315
+ ```

3

追記

2018/05/23 17:58

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -171,3 +171,29 @@
171
171
 
172
172
 
173
173
  ![イメージ説明](5b55e61dedce2873c96e3979f7fc4c11.png)
174
+
175
+
176
+
177
+ ```c
178
+
179
+ void show_array( int *x, int n )
180
+
181
+ {
182
+
183
+ printf("A:");
184
+
185
+ printf("B:");
186
+
187
+ for (int i = 0; i < n; i++)
188
+
189
+ {
190
+
191
+ printf("%d",x[i]);
192
+
193
+ }
194
+
195
+
196
+
197
+ }
198
+
199
+ ```

2

追記

2018/05/23 17:56

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -161,3 +161,13 @@
161
161
  A:0 0 0 0 0 0
162
162
 
163
163
  B:3 5 7 9 11 13
164
+
165
+
166
+
167
+ **問題文**
168
+
169
+ move_array 関数の引数は、各配列の先頭アドレスを渡すポインタ 2 つと配列の個数とする。また、 show_array 関数の引数は、配列の先頭アドレスを渡すポインタと配列の個数とする。配列の初期値の設定は main 関数にて行うこと。なお、関数内ではポインタを用いてデータの操作を行うこととし、配列形式での変 数の操作は行わないこと。
170
+
171
+
172
+
173
+ ![イメージ説明](5b55e61dedce2873c96e3979f7fc4c11.png)

1

追記

2018/05/23 17:36

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -115,3 +115,49 @@
115
115
  ### やりたい事
116
116
 
117
117
  main関数の二つの配列をmobe_arrayに渡し、関数内で入れ替えたのを今度はshow_arrayに渡してshow_array内で入れ替えた配列を表示させたい。
118
+
119
+
120
+
121
+ 変更点
122
+
123
+ ```c
124
+
125
+ void move_array(int *s, int *d, int n )
126
+
127
+ {
128
+
129
+ int tmp = 0;
130
+
131
+ for (int i=0; i < n; i++)
132
+
133
+ {
134
+
135
+ tmp = *s;
136
+
137
+ *s = *d;
138
+
139
+ *d = tmp;
140
+
141
+ }
142
+
143
+
144
+
145
+ return;
146
+
147
+ }
148
+
149
+ ```
150
+
151
+
152
+
153
+ イメージ
154
+
155
+ A:3 5 7 9 11 13
156
+
157
+ B:0 0 0 0 0 0
158
+
159
+
160
+
161
+ A:0 0 0 0 0 0
162
+
163
+ B:3 5 7 9 11 13