Форум программистов, компьютерный форум CyberForum.ru

Описать структуру с именем PRICE - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 5.00
Serdox
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 32
03.01.2013, 19:25     Описать структуру с именем PRICE #1
Помогите! Даны задачи нужно написать программу
1.) Описать структуру с именем PRICE, содержащую следующие поля:
· название товара;
· название магазина, в котором продается товар;
· стоимость товара в рублях.
2.) Написать программу, выполняющую следующие действия:
· ввод с клавиатуры данных в массив, состоящий из восьми элементов типаPRICE, записи должны быть размещены в алфавитном порядке по названиям магазинов;
· вывод на дисплей информации о товарах, продающихся в магазине, название которого введено с клавиатуры;
· если такого магазина нет, выдать на дисплей соответствующее сообщение.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
v.a.l.i.d
 Аватар для v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
03.01.2013, 19:31     Описать структуру с именем PRICE #2
Структура:
C++
1
2
3
4
5
6
struct PRICE
{
    char name[20];
    char shop[20];
    int price;
};
ZaMaZaN4iK
Мой лучший друг-отладчик!
 Аватар для ZaMaZaN4iK
163 / 163 / 9
Регистрация: 24.06.2012
Сообщений: 662
Записей в блоге: 5
Завершенные тесты: 1
03.01.2013, 21:18     Описать структуру с именем PRICE #3
v.a.l.i.d, в данном случае думаю через std::string удобнее будет(стоки сравнивать можно напрямую, без спец функций всяких)
C++
1
2
3
4
5
6
struct PRICE
{
    std::string name;
    std::string shop;
    int price;
};
Serdox
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 32
05.01.2013, 00:39  [ТС]     Описать структуру с именем PRICE #4
Помогите! Даны задачи нужно написать программу
1.) Описать структуру с именем PRICE, содержащую следующие поля:
· название товара;
· название магазина, в котором продается товар;
· стоимость товара в рублях.
2.) Написать программу, выполняющую следующие действия:
· ввод с клавиатуры данных в массив, состоящий из восьми элементов типаPRICE, записи должны быть размещены в алфавитном порядке по названиям магазинов;
· вывод на дисплей информации о товарах, продающихся в магазине, название которого введено с клавиатуры;
· если такого магазина нет, выдать на дисплей соответствующее сообщение.
Написал код, но он очень кривой. Помогите исправить. Очень ПОЖАЛУЙСТА!!!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#pragma hdrstop
#include "stdafx.h"
#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 main(){
 setlocale(0, "Russian");
 PRICE routes[8];
 int c=3;
 //ввод с консоли в массив
 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;
 }
Заранее Большое Спасибо!!!
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,051
05.01.2013, 00:48     Описать структуру с именем PRICE #5
Цитата Сообщение от Serdox Посмотреть сообщение
for (int i=0; i<c; i++)
* * * * *if (strcmp(routes[i].name, routes[i+1].name)>0){
за пределы массива однако выходишь
C++
1
for (int i=0; i<c-1; i++)
Serdox
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 32
05.01.2013, 23:25  [ТС]     Описать структуру с именем PRICE #6
Ещё такой вопрос. У меня в итоге, после запроса магазина всё правильно выдаёт цену и товар, но товар не поддерживает русский язык(при вводе товара по русски выдаются иероглифы) Кто знает как это исправить подскажите?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.01.2013, 23:27     Описать структуру с именем PRICE
Еще ссылки по теме:

C++ Описать структуру с именем Price, содержащую следующие поля
Определить структуру с именем Price, содержащую следующие поля C++
Описать структуру с именем NOTE C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
05.01.2013, 23:27     Описать структуру с именем PRICE #7
Русские шрифты в консоли
Yandex
Объявления
05.01.2013, 23:27     Описать структуру с именем PRICE
Ответ Создать тему
Опции темы

Текущее время: 02:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru