質問編集履歴
1
無限ループの削除、char data[100]の0クリアを施しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -218,7 +218,7 @@
|
|
218
218
|
|
219
219
|
}else if (s==1){ /*ファイルからの入力*/
|
220
220
|
|
221
|
-
char data[100];
|
221
|
+
char data[100]={0}; /*訂正箇所:0クリア*/
|
222
222
|
|
223
223
|
int ch;
|
224
224
|
|
@@ -246,77 +246,77 @@
|
|
246
246
|
|
247
247
|
}
|
248
248
|
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
249
|
+
|
250
|
+
|
251
|
+
for (int i=0;data[i]!='\0';i++){
|
252
|
+
|
253
|
+
if (isdigit(data[i])){
|
254
|
+
|
255
|
+
push(data[i]);
|
256
|
+
|
257
|
+
}else{
|
258
|
+
|
259
|
+
switch (data[i]){
|
260
|
+
|
261
|
+
case '.':
|
262
|
+
|
263
|
+
pop();
|
264
|
+
|
265
|
+
break;
|
266
|
+
|
267
|
+
case '+':
|
268
|
+
|
269
|
+
b=pop();a=pop();
|
270
|
+
|
271
|
+
push(a+b);
|
272
|
+
|
273
|
+
break;
|
274
|
+
|
275
|
+
case '-':
|
276
|
+
|
277
|
+
b=pop();a=pop();
|
278
|
+
|
279
|
+
push(a-b);
|
280
|
+
|
281
|
+
break;
|
282
|
+
|
283
|
+
case '*':
|
284
|
+
|
285
|
+
b=pop();a=pop();
|
286
|
+
|
287
|
+
push(a*b);
|
288
|
+
|
289
|
+
break;
|
290
|
+
|
291
|
+
case '/':
|
292
|
+
|
293
|
+
b=pop();a=pop();
|
294
|
+
|
295
|
+
push(a/b);
|
296
|
+
|
297
|
+
break;
|
298
|
+
|
299
|
+
case ' ':
|
300
|
+
|
301
|
+
break;
|
302
|
+
|
303
|
+
case '\n':
|
304
|
+
|
305
|
+
if(n!=0)
|
306
|
+
|
307
|
+
printf("答えは%ldです。",pop());
|
308
|
+
|
309
|
+
n=0;
|
310
|
+
|
311
|
+
break;
|
312
312
|
|
313
313
|
|
314
314
|
|
315
|
-
|
315
|
+
default:
|
316
|
-
|
316
|
+
|
317
|
-
|
317
|
+
push(data[i]);
|
318
|
-
|
318
|
+
|
319
|
-
|
319
|
+
break;
|
320
320
|
|
321
321
|
}
|
322
322
|
|
@@ -324,7 +324,7 @@
|
|
324
324
|
|
325
325
|
|
326
326
|
|
327
|
-
|
327
|
+
|
328
328
|
|
329
329
|
}
|
330
330
|
|