などのC構文エラーが完了しましたPythonを使用したプログラミングの概要で、私はCよりもPythonに慣れているので、2つを混同する可能性があります。 Cは私にあらゆる種類のエラーを与えています。私は物事を変えようとしましたが、注意することはうまくいくようです。 Cの構文がわかったら、おそらくこのプログラムを書き直します。
#include <stdio.h> #include <cs50.h> int main(void) { int num; do { int num = getint(); while( int num < 0 or int num > 23 ); } }
エラー:
mario.c:13:9: error: expected expression while( int num < 0 or int num > 23 ); ^ mario.c:16:1: error: expected "while" in do/while loop } ^ mario.c:9:2: note: to match this "do" do ^ mario.c:16:2: error: expected "}" } ^ mario.c:6:1: note: to match this "{" { ^ 3 errors generated. jharvard@appliance (~/Dropbox): make mario clang -ggdb3 -O0 -std=c99 -Wall -Werror mario.c -lcs50 -lm -o mario mario.c:13:9: error: expected expression while( int num < 0 or int num > 23 ); ^ mario.c:16:1: error: expected "while" in do/while loop } ^ mario.c:9:2: note: to match this "do" do ^ mario.c:18:1: error: expected "}" ^ mario.c:6:1: note: to match this "{" { ^ 3 errors generated.
回答
中かっこを置き忘れました。
do { int num = GetInt(); } while( int num < 0 || int num > 23 );
do
ステートメントを中括弧で囲みますが、while条件は外側に保ちます。大文字の使用に注意してください。関数では大文字と小文字が区別されます。また、「または」という単語を使用することはできませんが、代わりに||
(二重パイプ)を使用してください(今後の参考のために、&&
は「and」を意味します。
試してみてください!
また、第1週のレクチャーノートプログラミング構造C には、さまざまなループや条件などの構文の例がたくさんあります。これに取り組むときは、参照として手元に置いておく価値があるかもしれません。
ブレンダ。
()
<ではなく中括弧{}
を意味しますか/ div>?