ぼるじょあがC/C++の宿題を片づけますYO! 68代目at TECHぼるじょあがC/C++の宿題を片づけますYO! 68代目 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト404:もり 07/07/14 10:34:36 [1] 授業単元:C言語 [2] 問題文(含コード&リンク):次のプログラムは、式を入力すると計算結果を表示するプログラムであるが、 誤っている点があります。現在の内容を理解し、誤りを訂正してコメントをつけてください。 #include <stdio.h> #include <stdlib.h> #include <ctype.h> char *p; char c[100]; int expression(void); int term(void); int number(void); main(){ int ans; while(1){ printf("Enter expression : "); fgets(c,90,stdin); p=&c; if(*p == '\n') break; ans = expression(); printf("Answer:%d\n", ans); } } int expression(){ int ans; ans = term(); while(1){ if(*p == '+'){ ans = ans + term(); }else if(*p == '-'){ ans = ans - term(); }else break; } return(ans); } int term(){ int ans,x; ans = number(); while(1){ if(*p == '*'){ ans = ans * number(); }else if(*p == '/'){ x = number(); if(x == 0){ printf("Division by 0\n"); exit(1); } ans = ans / x; }else break; } return(ans); } int number(){ int i=0; while (isdigit(*p)){ i=i*10+(*p++)-48;} return(i); } [3] 環境 [3.1] OS: Windows [3.2] gcc 3.4 [3.3] 言語: C言語 [4] 期限: 2007/7/17 改行が多すぎて、乗せられなかったためこんな形になりますた。すみません。宜しくお願いします。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch