Формальная постановка задачи
Входные данные: с – кол-во товаров для ввода с клавиатуры, с>1; Выходные данные: routes[i].name,routes[i].price Метод решения: Создание структуры PRICE содержащую следующие поля: название товара, название магазина, в котором продается товар, стоимость товара (в рублях). Выполнить ввод с клавиатуры данных в массив, состоящий из «с» элементов типа PRICE и вывести на экран информации о товарах, продающихся в магазине, название которого введено с клавиатуры, иначе выдать сообщение что такого магазина нет. 3. Алгоритм решения задачи Листинг программы
#include <stdio.h> #include <stdlib.h> #include "conio.h" #include <string.h> #include "locale.h" #include <tchar.h> #pragma argsused struct PRICE{ char name[20]; char shop[20]; int price; }; int c; int main(){ setlocale(0, "Russian"); PRICE routes[8]; printf("введите кол-во товаров, которые вы хотите ввести:\n"); scanf("%d", &c); for(int i=0; i<c; i++){ printf("Данные для %d товара: \n",i+1); printf("Название товара: \n"); scanf("%s", routes[i].name); printf("Название магазина: \n"); scanf("%s", (routes[i].shop)); printf("Стоимость: \n"); scanf("%d", &routes[i].price); } PRICE n; int k=1; while(k==1) { k=0; for (int i=0; i<c; i++) if (strcmp(routes[i].name, routes[i+1].name)>0){ n=routes[i]; routes[i]=routes[i+1]; routes[i+1]=n; k=1; } } char str[20]; printf("Магазин: \n"); scanf("%s",str); int b=0; for (int i=0; i<c; i++){ if (strcmp(routes[i].shop,str)==0){ printf("Товар:%s, Стоимость:%d \n",routes[i].name,routes[i].price); b=1; } } if (b==0){ printf("Отсутствует!\n"); } getch(); return 0; }
|