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

Работа со структурой - C++

Восстановить пароль Регистрация
 
plut0
 Аватар для plut0
0 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 33
13.06.2013, 19:58     Работа со структурой #1
И так я написал одну из очередных программ для лабораторных работ, но опять возникла проблема.
Сам код:
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#include "stdafx.h"
#include "iostream"
 
const int arraySize = 1;
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(0,"Rus");
    struct Human
    {
        char name[20];
        char familia[30];
        char otchestvo[30];
        int god_rozhdeniya;
        int ves;
        int rost;
    };
    Human massive[arraySize];
    for (int i = 0; i<arraySize;i++)
    {
        cout<<"Введите фамилию человека номер "<<i+1<<": ";
        cin>>massive[i].familia;
        cout<<"Введите имя человека номер "<<i+1<<": ";
        cin>>massive[i].name;
        cout<<"Введите отчество человека номер"<<i+1<<": ";
        cin>>massive[i].otchestvo;
        cout<<"Введите год рождения человека номер "<<i+1<<": ";
        cin>>massive[i].god_rozhdeniya;
        cout<<"Введите вес человека номер "<<i+1<<": ";
        cin>>massive[i].ves;
        cout<<"Введите рост(см) человека номер "<<i+1<<": ";
        cin>>massive[i].rost;
    }
    cout<<"Введите 1 если хотите искать по фамилии\n";
    cout<<"Введите 2 если хотите искать по возрасту\n";
    int search;
    char search_familiya[30];
    int search_vozrast;
    int search_vozrast2;
    cin>>search;
    if (search == 1)
    {
        cout<<"Введите фамилию: ";
        cin>>search_familiya;
        for (int i = 0; i< arraySize; i++)
        {
            if (search_familiya == massive[i].familia)
            {
                cout<<"Фамилия: "<<massive[i].familia;
                cout<<"Имя: " <<massive[i].name;
                cout<<"Отчество: "<<massive[i].otchestvo;
                cout<<"Год рождения"<<massive[i].god_rozhdeniya<<"("<<2013-massive[i].god_rozhdeniya<<")";
                cout<<"Вес: "<<massive[i].ves;
                cout<<"Рост: "<<massive[i].rost;
            }
        }
    }
    else if (search == 2)
    {
        cout<<"Введите возраст: ";
        cin>>search_vozrast;
        for (int i = 0; i< arraySize; i++)
        {
            search_vozrast2 = (2013 - search_vozrast);
            if (search_vozrast2 == massive[i].god_rozhdeniya)
            {
                cout<<"Фамилия: "<<massive[i].familia;
                cout<<"Имя: " <<massive[i].name;
                cout<<"Отчество: "<<massive[i].otchestvo;
                cout<<"Год рождения"<<massive[i].god_rozhdeniya<<"("<<2013-massive[i].god_rozhdeniya<<")";
                cout<<"Вес: "<<massive[i].ves;
                cout<<"Рост: "<<massive[i].rost;
            }
        }
    }
    else
    {
        cout<<"По вашему запросу ничего не найдено!";
    }
    system("pause");
    return 0;
}
Но по какой то неизвестной для меня причине, при поиске необходимого человека экран консоли остается чистым.
Скрин(для ускорения проверки сделал всего одного человека и ввел его фамилию):
Миниатюры
Работа со структурой  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.06.2013, 19:58     Работа со структурой
Посмотрите здесь:

C++ Работа с файлами и структурой
Работа со структурой C++
Работа со структурой C++
C++ Работа со структурой
Работа со структурой C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,399
13.06.2013, 20:01     Работа со структурой #2
C++
1
2
3
4
5
6
7
8
#include <windows.h>
...
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    ...
}
plut0
 Аватар для plut0
0 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 33
13.06.2013, 20:07  [ТС]     Работа со структурой #3
upd.
Проверил поиск по возрасту. Выдает нужного человека, вот правда имя и фамилию коверкает...
Миниатюры
Работа со структурой  
plut0
 Аватар для plut0
0 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 33
13.06.2013, 20:10  [ТС]     Работа со структурой #4
Цитата Сообщение от MrGluck Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
#include <windows.h>
...
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    ...
}
А есть возможность это сделать без потери читабельности текста?
Миниатюры
Работа со структурой  
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,399
13.06.2013, 20:56     Работа со структурой #5
plut0, свойства консоли - шрифт - Lucida Console
plut0
 Аватар для plut0
0 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 33
13.06.2013, 21:34  [ТС]     Работа со структурой #6
Цитата Сообщение от MrGluck Посмотреть сообщение
plut0, свойства консоли - шрифт - Lucida Console
Не помогло.
Миниатюры
Работа со структурой  
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.06.2013, 02:27     Работа со структурой
Еще ссылки по теме:

работа со структурой C++
Работа со структурой C++

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

Или воспользуйтесь поиском по форуму:
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,399
14.06.2013, 02:27     Работа со структурой #7
char массивы сравниваются через strcmp, для сравнения с учетом локали - strcoll
Yandex
Объявления
14.06.2013, 02:27     Работа со структурой
Ответ Создать тему
Опции темы

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