Completé una introducción a la programación usando Python y estoy más acostumbrado a Python que a C, así que podría mezclar los dos. C me está dando todo tipo de errores. Intenté cambiar las cosas, pero notarlo parece funcionar; una vez que descubra la sintaxis de C, probablemente voy a reescribir este programa.

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

Errores:

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. 

Respuesta

Es una llave mal colocada.

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

Desea encerrar la instrucción do entre llaves, pero mantenga la condición while afuera. Tenga cuidado con las mayúsculas. Las funciones distinguen entre mayúsculas y minúsculas. Además, no puede «usar la palabra» o «, sino || (el conducto doble). (Y para referencia futura, && significa «y»).

¡Pruébelo!

Además, las notas de la clase de la semana 1: Construcciones de programación en C tiene muchos ejemplos de sintaxis para varios bucles, condiciones, etc. Puede que valga la pena tenerlo a mano como referencia mientras trabaja en esto.

Brenda.

Comentarios

  • todos los errores han sido corregidos gracias
  • @ zoot404, si la respuesta fue útil, vote y marque también como aceptada. Eso ayuda a otros al buscar sus propias respuestas. 🙂
  • @curiouskiwi (control de cordura por mi parte) cuando dices, " adjunta el do declaración entre paréntesis, " ¿te refieres a llaves {} en lugar de paréntesis ()?
  • Sí, gracias. I he editado mi respuesta.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *