質問編集履歴

2

初心者マークのつけ方がわかったので付けました。

2019/04/24 16:02

投稿

cherry_0515
cherry_0515

スコア13

test CHANGED
File without changes
test CHANGED
File without changes

1

少し内容をいじったのですが、いじる前のプログラムを誤って添付していました。

2019/04/24 16:02

投稿

cherry_0515
cherry_0515

スコア13

test CHANGED
File without changes
test CHANGED
@@ -114,7 +114,7 @@
114
114
 
115
115
  int young(char *str,int x,int min,int k){
116
116
 
117
- /*x+1番目の文字とmin+1番目の文字を比較 若い方の位置を返す kは最初の文字からどれだけ離れたかの記憶*/
117
+ /*x+1番目の文字とmin+1番目の文字を比較 若い方の位置を返す kは最初の文字からどれだけ離れたかの記憶*/
118
118
 
119
119
  if(str[x]>str[min]){ /*minの方が若い*/
120
120
 
@@ -128,9 +128,11 @@
128
128
 
129
129
  if(str[min+1]<'A' || (str[min+1]>'Z' && str[min+1]<'a') || str[min+1]>'z'){
130
130
 
131
- /*minの方が単語が短いからreturn min-k*/
131
+ /*minの方が単語が短いからreturn min-k*/
132
+
132
-
133
+ printf("return min-k(%d)\n",min-k);
134
+
133
- return min-k;
135
+ return min-k;
134
136
 
135
137
  }
136
138
 
@@ -138,6 +140,8 @@
138
140
 
139
141
  /*xの方が単語が短いからreturn x-k*/
140
142
 
143
+ printf("return x-k(%d)\n",x-k);
144
+
141
145
  return x-k;
142
146
 
143
147
  }
@@ -174,15 +178,13 @@
174
178
 
175
179
  if(str[x[i]]<'A' || (str[x[i]]>'Z' && str[x[i]]<'a') || str[x[i]]>'z') continue;
176
180
 
177
- printf("min=%d\n",min);
181
+ printf("%d回目 youngに入れる前 min=%d\n",i+1,min);
178
182
 
179
183
  min=young(str,x[i],min,0); /*x[i]+1文字目からの単語とそれまでで一番若い単語の比較*/
180
184
 
181
- printf("min=%d\n",i,min);
185
+ printf("%d回目 youngに入れた後 min=%d\n\n",i+1,min);
182
-
186
+
183
- }
187
+ }
184
-
185
-
186
188
 
187
189
 
188
190