Jai terminé une introduction à la programmation en utilisant Python et je suis plus habitué à Python que C, donc je pourrais mélanger les deux. C me donne toutes sortes derreurs. Jai essayé de changer les choses mais le fait de noter semble fonctionner; une fois que jaurai compris la syntaxe de C « , je vais probablement réécrire ce programme.

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

Erreurs:

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éponse

Cest « une accolade mal placée.

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

Vous voulez mettre linstruction do entre accolades, mais gardez la condition while à lextérieur. Faites attention à la capitalisation. Les fonctions sont sensibles à la casse. De plus, vous ne pouvez pas « t utiliser le mot » ou « mais utiliser à la place || (le double tube). (Et pour référence future, && signifie « et »).

Essayez cela!

De plus, les notes de cours de la semaine 1: Constructions de programmation dans C contient de nombreux exemples de syntaxe pour diverses boucles, conditions, etc. Cela pourrait valoir la peine dêtre conservé à portée de main pendant que vous travaillez dessus.

Brenda.

Commentaires

  • tous les bogues ont été corrigés merci
  • @ zoot404, si la réponse vous a été utile, votez et marquez-la comme acceptée. Cela aide les autres lors de la recherche de leurs propres réponses. 🙂
  • @curiouskiwi (contrôle de santé de ma part) quand vous dites, " entourez le do déclaration entre parenthèses, " voulez-vous dire accolades {} plutôt que parenthèses ()?
  • Oui merci. Je jai modifié ma réponse.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *