Am completat o introducere în programarea folosind Python și sunt mai obișnuit cu Python decât cu C, așa că aș putea amesteca cele două. C îmi dă tot felul de erori. Am încercat să schimb lucrurile, dar notarea pare să funcționeze; odată ce îmi dau seama de sintaxa lui C, probabil voi rescrie acest program.

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

Erori:

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. 

Răspuns

Este „o paranteză curlată greșită.

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

Doriți să includeți instrucțiunea do între acolade, dar păstrați condiția while în afara. Fii atent la valorificarea cu majuscule. Funcțiile sunt sensibile la majuscule și minuscule. De asemenea, nu puteți „folosi cuvântul” sau „, ci folosiți || (conducta dublă). (Și pentru referință viitoare, && înseamnă „și”).

Încercați asta!

De asemenea, Notele de curs din săptămâna 1: Construcția programării în C conține o mulțime de exemple de sintaxă pentru diferite bucle, condiții etc. Ar putea merita să fie la îndemână ca referință în timp ce lucrați la acest lucru.

Brenda.

Comentarii

  • toate erorile au fost remediate mulțumesc
  • @ zoot404, dacă răspunsul a fost de ajutor, vă rugăm să votați și să-l marcați ca acceptat. Asta îi ajută pe ceilalți atunci când caută propriile răspunsuri. 🙂
  • @curiouskiwi (verificarea sănătății din partea mea) când spui, " atașează do declarație între paranteze, " vrei să spui paranteze {} mai degrabă decât paranteze ()?
  • Da, mulțumesc. I am editat răspunsul meu.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *