Как написать правильный цикл do.. while? - PullRequest
0 голосов
/ 08 октября 2018

по какой-то причине этот код выдает ошибку, когда я пытаюсь его скомпилировать.Что не так, подскажите пожалуйста?Я беру курс CS50, и это фактически первое задание.

Программа должна запрашивать ввод у пользователя, пока условие не станет ложным.

#include <stdio.h>
#include <cs50.h>

int n;

do
{
    n = get_int();
}
while ( n < 0 || n > 23 );

Это ошибка:

pyramid.c:6:1: error: expected identifier or '('
do
^
pyramid.c:10:1: error: expected identifier or '('
while ( n < 0 || n > 23 );

1 Ответ

0 голосов
/ 08 октября 2018

Это общий пример использования цикла do {...} while(); в C. cs50 не является стандартным заголовком C, это домашняя выпечка для студентов, проходящих курс cs50.

Вы должны проверить get_int();определение в заголовочном файле cs50.h.

Код:

#include <stdio.h>
int main()
{
    int number;

    // Do while loop is executed at least once
    do
    {
      printf("Enter a number from 0-23: ");
      scanf("%d", &number);

    }
    while(number < 0 || number > 23);

    printf("Number = %d\n",number);

    return 0;
}
...