Конкретно, я хочу представить различные автомобили с 6 районами, которые объявлены в начале. Программа спросит меня, в каком округе есть автомобиль, и если вход будет таким же, я продолжу детали автомобиля, если нет, я хочу вернуться в районное чтение. Моя проблема в том, когда я читаю первый квартал по-разному, программа отлично работает и возвращается к чтению в округе, но на втором не работает. Я приложу код выше. Я должен упомянуть, что это первый случай, когда я использую оператор «continue» и «break», и я думаю, что это основная проблема. Благодаря !Продолжить и нарушить операторную ошибку в цикле do..while
#include <stdio.h>
#include <string.h>
typedef struct record {
char name[15];
int year[4];
char serial[15];
char owner[24];
char plate[12];
};
int main() {
struct record rec[100];
char search[20];
int imax=0;
int i=0,j=0;
char n;
char* district[]= {"Rahova","Giulesti","Crangasi","Militari","Pantelimon","Ferentari"};
char district_input[20];
printf("\nEnter the cars: ");
do {
printf("\nCar's number %d -> Enter district: ",i+1);
scanf("%s",district_input);
for (;j<=5;j++) {
if(strcmp(district_input,district[j])==0){
printf("\t\t ->Name of the car: ");
scanf("%s",rec[i].name);
printf("\t\t ->Release year: ");
scanf("%d",rec[i].year);
printf("\t\t ->Serial number: ");
scanf("%s",rec[i].serial);
printf("\t\t ->Number plate: ");
scanf("%s",rec[i].plate);
printf("\t\t ->Last 3 owners: ");
scanf("%s",rec[i].owner);
printf("\nAdd more? [y/n]\t");
i++;
imax++;
break;
}
continue;
}
printf("\nAdd more? [y/n]\t");
} while ((n=getche()) != 'n');
}
Параметр 'continue' в конце цикла' for' не имеет никакого эффекта. Не уверен, что не ясно; прочитайте о двух утверждениях в своей книге C. – Olaf