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

массив строк с++ - C++

Восстановить пароль Регистрация
 
dserp18
 Аватар для dserp18
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 74
Записей в блоге: 2
15.06.2013, 13:02     массив строк с++ #1
есть массив строк char array[10][80]={
"tom","15",
"bob","20",
"bill","25"
};
Дальше я делаю выборку по возрасту if(atoi(array[i])>x) cout... (с этим проблем нет)
как добавить в массив еще и фамилию? Нужно, по хорошему, делать структуру, но можно наверное как-то массивом обойтись?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.06.2013, 13:02     массив строк с++
Посмотрите здесь:

C++ Ввод нескольких строк или массив строк
Массив строк как массив указателей на массивы чаров C++
Сформировать массив строк. Удалить из него одинаковые строки. Сформировать массив строк. Удалить из него К последних строк C++
Используя функцию копирования строк, организуйте конкатенацію и копирование строк в четвертый массив, содержащий полные имена C++
Запросить название учебного заведения, специальность и номер группы. записав их в массив из 3 строк. Подсчитать длины каждой строк C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Belfegor
15.06.2013, 13:05
  #2

Не по теме:

зачем извращатся?

C++
1
2
3
4
5
struct {
    std::string name;
    std::string name;
    int age;
};

dserp18
 Аватар для dserp18
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 74
Записей в блоге: 2
15.06.2013, 13:21  [ТС]     массив строк с++ #3
ок а как тогда по простому сделать выборку по возрасту в структуре?
Belfegor
Ghost
 Аватар для Belfegor
172 / 172 / 6
Регистрация: 16.09.2012
Сообщений: 524
15.06.2013, 14:13     массив строк с++ #4
массив структур и сортируй по полю прямо
IGPIGP
Комп_Оратор)
 Аватар для IGPIGP
6156 / 2885 / 281
Регистрация: 04.12.2011
Сообщений: 7,680
Записей в блоге: 3
15.06.2013, 15:05     массив строк с++ #5
Цитата Сообщение от dserp18 Посмотреть сообщение
ок а как тогда по простому сделать выборку по возрасту в структуре?
чем старше структура, тем возраст у неё длиннее) :
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
#include <iostream>
#include <string>
#include <vector>
using namespace std;
class Peoples{
public://для простоты, закройте, что хотите, написав seters/getters
string fnam;
string snam;
int age;
Peoples(string _fnam="", string _snam="", int _age=0) :fnam(_fnam), snam(_snam), age(_age){};
Peoples(const Peoples& toCopy){
    if(this!=&toCopy){
fnam=string(toCopy.fnam);
snam=string(toCopy.snam);
age=int(toCopy.age);
    }
}
Peoples& operator=(const Peoples& toCopy){
if(this!=&toCopy){
fnam=string(toCopy.fnam);
snam=string(toCopy.snam);
age=int(toCopy.age);
    }
return *this;
}
void show(){
cout<<endl;
cout<<fnam<<endl;
cout<<snam<<endl;
cout<<age<<endl;
}
};
int main(){
setlocale(0,"rus");
int n;
cout<<"Введите количество людей для переписи ";
cin>>n;
vector<Peoples> vec;
Peoples tmp;
cout<<"Введите человеческие данные"<<endl;
 
for(int i=0; i<n; ++i){
cout<<"Введите имя человека № "<<i+1<<" : ";
cin>>tmp.fnam;
cout<<endl;
cout<<"Введите фамилию человека № "<<i+1<<" : ";
cin>>tmp.snam;
cout<<endl;
cout<<"Введите возраст человека № "<<i+1<<" : ";
cin>>tmp.age;
cout<<endl;
vec.push_back(tmp);
}
for(int i=0; i<n; ++i)vec[i].show();
cout<<"---------------------"<<endl;
int nmin, nmax;
cout<<"Введите диапазон возрастов для поиска "<<endl;
cout<<"Минимальный возраст для поиска ";
cin>>nmin;
cout<<endl;
cout<<"Максимальный возраст для поиска ";
cin>>nmax;
cout<<"----------------------"<<endl;
vector<Peoples> toSelect;
int cnt=0;
for(int i=0; i<n; ++i){
    if(vec[i].age >= nmin && vec[i].age <= nmax){
toSelect.push_back(vec[i]); cnt++;
    }
}
cout<<"Найдено:"<<endl;
for(int i=0; i<cnt; ++i)toSelect[i].show();
cout<<endl;
cin.get();
cin.get();
return 0;
}
Yandex
Объявления
15.06.2013, 15:05     массив строк с++
Ответ Создать тему
Опции темы

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