teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

4

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

2020/06/29 16:33

投稿

mememe0331
mememe0331

スコア55

title CHANGED
File without changes
body CHANGED
@@ -79,33 +79,28 @@
79
79
  {
80
80
  int i=0;
81
81
 
82
- while(*(str1+i)!='\0'&&*(str2+i)!='\0'){
82
+ while(*str1!='\0' && *str2!='\0'){
83
83
  if(i%2==0){
84
84
  *str3++ = *str1++;
85
- }
86
- if(i%2!=0){
85
+ } else {
87
86
  *str3++ = *str2++;
88
87
  }
89
88
  i++;
90
89
  }
91
90
 
92
- if(*(str1+i)!='\0'){
91
+ while(*str1!='\0'){
93
- while(*(str1+i)){
94
- *(str3+i)=*(str1+i);
92
+ *str3++ = *str1++;
95
- i++;
96
- }
97
93
  }
94
+
98
- if(*(str2+i)!='\0'){
95
+ while(*str2!='\0'){
99
- while(*(str2+i)){
100
- *(str3+i)=*(str2+i);
96
+ *str3++ = *str2++;
101
- i++;
102
- }
103
97
  }
104
98
  }
105
99
  に変更してみたのですが、出力がおかしくなってしましました。
106
100
  自分ではこれ以上、どこを直せば良いのか分かりません。
107
101
 
108
102
  実行結果
109
- 出力:ax
103
+ 出力:axbycd・
104
+
110
105
  ### 補足情報(FW/ツールのバージョンなど)
111
106
  サクラエディタ、コマンドプロンプト for VS 2019を使用しています。

3

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

2020/06/29 16:33

投稿

mememe0331
mememe0331

スコア55

title CHANGED
File without changes
body CHANGED
@@ -103,10 +103,9 @@
103
103
  }
104
104
  }
105
105
  に変更してみたのですが、出力がおかしくなってしましました。
106
- 自分ではこれ以上、どこを直せば良いのか分かりませんでした
106
+ 自分ではこれ以上、どこを直せば良いのか分かりません。
107
107
 
108
108
  実行結果
109
- 出力:aycヒ
109
+ 出力:ax
110
-
111
110
  ### 補足情報(FW/ツールのバージョンなど)
112
111
  サクラエディタ、コマンドプロンプト for VS 2019を使用しています。

2

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

2020/06/29 15:53

投稿

mememe0331
mememe0331

スコア55

title CHANGED
File without changes
body CHANGED
@@ -81,10 +81,10 @@
81
81
 
82
82
  while(*(str1+i)!='\0'&&*(str2+i)!='\0'){
83
83
  if(i%2==0){
84
- *(str3+i)=*(str1+i);
84
+ *str3++ = *str1++;
85
85
  }
86
86
  if(i%2!=0){
87
- *(str3+i)=*(str2+i);
87
+ *str3++ = *str2++;
88
88
  }
89
89
  i++;
90
90
  }

1

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

2020/06/29 15:50

投稿

mememe0331
mememe0331

スコア55

title CHANGED
File without changes
body CHANGED
@@ -74,7 +74,39 @@
74
74
 
75
75
  ### 試したこと
76
76
 
77
+ 関数内の条件を
78
+ void strMix(char *str1,char *str2, char *str3)
79
+ {
80
+ int i=0;
81
+
82
+ while(*(str1+i)!='\0'&&*(str2+i)!='\0'){
83
+ if(i%2==0){
84
+ *(str3+i)=*(str1+i);
85
+ }
86
+ if(i%2!=0){
87
+ *(str3+i)=*(str2+i);
88
+ }
89
+ i++;
90
+ }
91
+
92
+ if(*(str1+i)!='\0'){
93
+ while(*(str1+i)){
94
+ *(str3+i)=*(str1+i);
95
+ i++;
96
+ }
97
+ }
98
+ if(*(str2+i)!='\0'){
99
+ while(*(str2+i)){
100
+ *(str3+i)=*(str2+i);
101
+ i++;
102
+ }
103
+ }
104
+ }
105
+ に変更してみたのですが、出力がおかしくなってしましました。
77
- したらのか分かりませんでした。
106
+ 自分ではこれ以上、どこ直せば良いのか分かりませんでした。
78
107
 
108
+ 実行結果
109
+ 出力:aycヒ
110
+
79
111
  ### 補足情報(FW/ツールのバージョンなど)
80
112
  サクラエディタ、コマンドプロンプト for VS 2019を使用しています。