Найти фамилии владельцев по номеру и цвету автомобиля - C (СИ)
Формулировка задачи:
Программистам хай, помогите пж с задачкой. Я сделал часть а дальше совсем не понимаю как сделать поиск и т.д.
Вложение 775702
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
using namespace std;
typedef struct
{
int nomer;
char color [9];
char name [9];
char FIO [9];
}Mash;
Mash mash[9];
int MyArray(FILE *f){
int i=0,m;
while (!feof(f))
{
m = fscanf(f,"%d%s%s%s",&mash[i].nomer,mash[i].color,mash[i].name,mash[i].FIO);
if (m==0)
{
break;
}
i++;
}
return i;
}
void mashi(int n){
int i;
printf("| Number | Color |\n");
for(i=0;i<=n;i++){
printf("|%10d|%10s|\n",mash[i].nomer,mash[i].color);
}
}
main()
{
setlocale(LC_ALL, "Rus");
FILE *f;
f = fopen("Auto.txt", "r+");
//---------------------------------------------- Проверка ошибки открытия файла
if (f==NULL) {
printf("Файл не найден... /n Для окончания работы нажмите любую клавишу...");
system("pause");
return 0;
}
int n=MyArray(f);
mashi(n);
fclose(f);
printf("\n");
system("pause");
return 0;
}Решение задачи: «Найти фамилии владельцев по номеру и цвету автомобиля»
textual
Листинг программы
int main()
Объяснение кода листинга программы
- Создается переменная
car_numberи ей присваивается значение номера автомобиля - Создается переменная
car_colorи ей присваивается значение цвета автомобиля - Создается пустой массив
ownersдля хранения фамилий владельцев - Происходит проверка номера и цвета автомобиля с помощью условного оператора if
- Если условие выполняется, то происходит поиск фамилии владельца по номеру и цвету автомобиля с помощью цикла for
- В каждой итерации цикла происходит проверка соответствия фамилии владельца номеру и цвету автомобиля
- Если условие выполняется, то фамилия владельца добавляется в массив
owners - После завершения цикла, выводится на экран содержимое массива
ownersс помощью цикла for