質問編集履歴

4

試したことを追記しました。

2020/06/29 16:33

投稿

mememe0331
mememe0331

スコア55

test CHANGED
File without changes
test CHANGED
@@ -160,15 +160,13 @@
160
160
 
161
161
 
162
162
 
163
- while(*(str1+i)!='\0'&&*(str2+i)!='\0'){
163
+ while(*str1!='\0' && *str2!='\0'){
164
164
 
165
165
  if(i%2==0){
166
166
 
167
167
  *str3++ = *str1++;
168
168
 
169
- }
170
-
171
- if(i%2!=0){
169
+ } else {
172
170
 
173
171
  *str3++ = *str2++;
174
172
 
@@ -180,27 +178,17 @@
180
178
 
181
179
 
182
180
 
183
- if(*(str1+i)!='\0'){
181
+ while(*str1!='\0'){
184
-
185
- while(*(str1+i)){
182
+
186
-
187
- *(str3+i)=*(str1+i);
183
+ *str3++ = *str1++;
188
-
189
- i++;
184
+
190
-
191
- }
185
+ }
192
-
193
- }
186
+
194
-
187
+
188
+
195
- if(*(str2+i)!='\0'){
189
+ while(*str2!='\0'){
196
-
197
- while(*(str2+i)){
190
+
198
-
199
- *(str3+i)=*(str2+i);
191
+ *str3++ = *str2++;
200
-
201
- i++;
202
-
203
- }
204
192
 
205
193
  }
206
194
 
@@ -214,7 +202,9 @@
214
202
 
215
203
  実行結果
216
204
 
217
- 出力:ax
205
+ 出力:axbycd・
206
+
207
+
218
208
 
219
209
  ### 補足情報(FW/ツールのバージョンなど)
220
210
 

3

試したことを追記しました。

2020/06/29 16:33

投稿

mememe0331
mememe0331

スコア55

test CHANGED
File without changes
test CHANGED
@@ -208,15 +208,13 @@
208
208
 
209
209
  に変更してみたのですが、出力がおかしくなってしましました。
210
210
 
211
- 自分ではこれ以上、どこを直せば良いのか分かりませんでした
211
+ 自分ではこれ以上、どこを直せば良いのか分かりません。
212
212
 
213
213
 
214
214
 
215
215
  実行結果
216
216
 
217
- 出力:aycヒ
217
+ 出力:ax
218
-
219
-
220
218
 
221
219
  ### 補足情報(FW/ツールのバージョンなど)
222
220
 

2

試したことを追記しました。

2020/06/29 15:53

投稿

mememe0331
mememe0331

スコア55

test CHANGED
File without changes
test CHANGED
@@ -164,40 +164,40 @@
164
164
 
165
165
  if(i%2==0){
166
166
 
167
+ *str3++ = *str1++;
168
+
169
+ }
170
+
171
+ if(i%2!=0){
172
+
173
+ *str3++ = *str2++;
174
+
175
+ }
176
+
177
+ i++;
178
+
179
+ }
180
+
181
+
182
+
183
+ if(*(str1+i)!='\0'){
184
+
185
+ while(*(str1+i)){
186
+
167
187
  *(str3+i)=*(str1+i);
168
188
 
189
+ i++;
190
+
169
- }
191
+ }
192
+
170
-
193
+ }
194
+
195
+ if(*(str2+i)!='\0'){
196
+
171
- if(i%2!=0){
197
+ while(*(str2+i)){
172
198
 
173
199
  *(str3+i)=*(str2+i);
174
200
 
175
- }
176
-
177
- i++;
178
-
179
- }
180
-
181
-
182
-
183
- if(*(str1+i)!='\0'){
184
-
185
- while(*(str1+i)){
186
-
187
- *(str3+i)=*(str1+i);
188
-
189
- i++;
190
-
191
- }
192
-
193
- }
194
-
195
- if(*(str2+i)!='\0'){
196
-
197
- while(*(str2+i)){
198
-
199
- *(str3+i)=*(str2+i);
200
-
201
201
  i++;
202
202
 
203
203
  }

1

試したことを追記しました。

2020/06/29 15:50

投稿

mememe0331
mememe0331

スコア55

test CHANGED
File without changes
test CHANGED
@@ -150,7 +150,71 @@
150
150
 
151
151
 
152
152
 
153
+ 関数内の条件を
154
+
155
+ void strMix(char *str1,char *str2, char *str3)
156
+
157
+ {
158
+
159
+ int i=0;
160
+
161
+
162
+
163
+ while(*(str1+i)!='\0'&&*(str2+i)!='\0'){
164
+
165
+ if(i%2==0){
166
+
167
+ *(str3+i)=*(str1+i);
168
+
169
+ }
170
+
171
+ if(i%2!=0){
172
+
173
+ *(str3+i)=*(str2+i);
174
+
175
+ }
176
+
177
+ i++;
178
+
179
+ }
180
+
181
+
182
+
183
+ if(*(str1+i)!='\0'){
184
+
185
+ while(*(str1+i)){
186
+
187
+ *(str3+i)=*(str1+i);
188
+
189
+ i++;
190
+
191
+ }
192
+
193
+ }
194
+
195
+ if(*(str2+i)!='\0'){
196
+
197
+ while(*(str2+i)){
198
+
199
+ *(str3+i)=*(str2+i);
200
+
201
+ i++;
202
+
203
+ }
204
+
205
+ }
206
+
207
+ }
208
+
209
+ に変更してみたのですが、出力がおかしくなってしましました。
210
+
153
- したらのか分かりませんでした。
211
+ 自分ではこれ以上、どこ直せば良いのか分かりませんでした。
212
+
213
+
214
+
215
+ 実行結果
216
+
217
+ 出力:aycヒ
154
218
 
155
219
 
156
220