0

ошибка: метка может быть частью оператора, а декларация не является оператором

FILE *f = fopen("my.txt", "r");

Эта часть кода находится в цикле switch в case 3. Жалуется на FILE

case 3:
        FILE *f = fopen("my.txt", "r");
        while(!feof(f)) {
            int i = 0;
            fscanf(f, "%d", A[i]);
            i++;
        }
        fclose(f);
        break;
  • Декларация не является оператором, как вам ясно сказал компилятор. Поставьте ; после case 3: и эта ошибка исчезнет. Хотя других ошибок тут хватает. – AnT stands with Russia May 27 '19 at 12:58

1 Answers1

1

Попробуйте

case 3:
  {
    FILE *f = fopen("my.txt", "r");
    while(!feof(f)) {
        int i = 0;
        fscanf(f, "%d", A[i]);
        i++;
    }
    fclose(f);
  }
  break;

И еще - стандартная ошибка while(!feof(f))... См. этот вопрос.

А еще - совершенно бессмысленное

int i = 0;
fscanf(f, "%d", A[i]);
i++;

в цикле, так как на каждой итерации i обнуляется, и вы читаете все, что есть - в одну переменную. Опять же, не думаю, что A[i] - указатель, куда читать, скорее всего вы имели в виду

fscanf(f, "%d", &A[i]);

Да и проверять надо - открылся ли файл благополучно, кстати...

Интересно, все ошибки нашел? :)

Harry
  • 221,325