Jeg fullførte en introduksjon til programmering med Python, og jeg er mer vant til Python enn C, så jeg kan blande de to sammen. C gir meg alle slags feil. Jeg prøvde å endre ting, men det syntes å virke å merke seg; når jeg først har funnet ut Cs syntaks, skal jeg sannsynligvis skrive om dette programmet.

#include <stdio.h> #include <cs50.h> int main(void) { int num; do { int num = getint(); while( int num < 0 or int num > 23 ); } } 

Feil:

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. 

Svar

Det er en feilplassert krøllestag.

do { int num = GetInt(); } while( int num < 0 || int num > 23 ); 

Du vil legge inn do i krøllete bukseseler, men hold mens tilstanden er utenfor. Vær forsiktig med store bokstaver. Funksjoner er store og små bokstaver. Du kan også «ikke bruke ordet» eller «men i stedet bruke || (dobbeltrøret). (Og for fremtidig referanse, && betyr «og»).

Prøv det!

Også forelesningsnotatene fra uke 1: Programmering konstruerer i C har mange eksempler på syntaks for forskjellige sløyfer, forhold osv. Det kan være verdt å være praktisk som referanse mens du jobber med dette.

Brenda.

Kommentarer

  • alle feil er løst takk.
  • @ zoot404, hvis svaret var nyttig, vennligst stem og merk det også som akseptert. Det hjelper andre når de leter etter egne svar. 🙂
  • @curiouskiwi (sunnhetssjekk fra min side) når du sier, " legg inn do uttalelse i parentes, " mener du krøllete bukseseler {} i stedet for parenteser ()?
  • Ja takk. Jeg har redigert svaret mitt.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *