Читайте также:
|
|
Массивы строк обычно используются для обработки таблиц данных. Рассмотрим, например, упрощенную базу данных служащих, в которой хранится имя, номер телефона, количество часов, отработанных служащим за отчетный период, и размер почасового оклада для каждого служащего. Чтобы создать такую программу для коллектива, состоящего из десяти служащих, определим четыре массива (из них первые два будут массивами строк).
char name[10][80); // Массив имен служащих*
char phone[10][20]; // Массив телефонных номеров служащих*
float hours[10]; // Массив часов, отработанных за неделю.
float wage[10]; // Массив окладов
Чтобы ввести информацию о каждом служащем, воспользуемся следующей функцией
enter().
// Функция ввода информации в базу данных*
void enter()
{
int i;
char temp[80];
for(i=0; i<10; i++)
{
cout << "Введите фамилию: “; cin >> name[i];
cout << "Введите номер телефона: “; cin >> phone[i];
cout << "Введите количество отработанных часов: “;
cin >> hours[i];
cout << "Введите оклад: “;
cin >> wage[i];
}
На основании введенных данных можно составить отчет вычислив заработную плату, которая причитается каждому служащему. Для этого воспользуемся следующей функцией report().
// Отображение отчета
void report ()
{
int i;
for(i=0; i<10; i++)
{
cout << name[i] << ‘ ‘ << phone[i] << ‘\n’;
cout << "Заработная плата за неделю: "
<< wage[i] * hours[i];
cout << ‘\n';
}
}
Полностью программа базы данных служащих приведена ниже. Обратите особое внимание на то, как реализуется доступ к каждому массиву. Эта версия программы ведениябазы данных служащих еще далека от совершенства, поскольку введенная в нее информация теряется сразу же по выходу из программы. Позже научимся сохранять информацию в дисковом файле.
// Простая программа ведения базы данных служащих
#include <iostream>
using namespace std;
char name[10][80]; // Массив имен служащих,
char phone[10][20]; // Массив телефонных номеров служащих.
float hours[10]; // Массив часов, отработанных за неделю.
float wage[10]; / Массив окладов.
int menu();
void enter(), report();
int main()
{
int choice;
do
{
choice = menu(); //Получаем команду,
//выбранную пользователем*
switch(choice)
{
case 0: break;
case 1: enter();
break;
case 2: report ();
break;
default: cout << "Попробуйте еще раз;.\n\n";
}
}
while(choiсе!= 0);
return 0;
}
// Функция возвращает команду, выбранную пользователем
int menu()
{
int choice;
cout << “0. Выход из программы\n";
cout << "1. Ввод информации\n”;
cout << “2. Генерирование отчета\n";
cout << "\nВыберите команду: ";
cin >> choifee;
return choice;
}
// Функция ввода информации в базу данных
void enter()
{
int i;
char temp[80];
for(i=0; i<10; i++)
{
cout << "Введите фамилию: “;
cin >> name[i];
cout << "Введите номер телефона: ";
cin >> phone[i];
cout << "Введите количество отработанных часов: ";
cin >> hours[i];
cout << "Введите оклад: “;
cin >> wage[i];
}
}
// Отображение отчета
void report()
{
int i;
for(i=0; i<10; i++)
{
cout << name[i] << ‘ ‘ << phone[i] << '\n’;
cout << "Заработная плата за неделю: "
<< wage[i] * hours[i];
cout << ‘ \n’;
}
}
Дата добавления: 2015-07-24; просмотров: 73 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Массивы строк | | | ОТДЕЛ ПЕРВЫЙ: О ПЕРВЫХ И ПОСЛЕДНИХ ВЕЩАХ |