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

Структуры... Задача: "База сотрудников небольшой фирмы" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перегрузка операторов в С++ http://www.cyberforum.ru/cpp-beginners/thread35463.html
Создать класс ряд. Перегрузить операторы для след операций : ввода/вывода, сложения, вычитания, умножения, умножения на число, деление на число, а так же операторы сравнения (!=,==,<,>,<=,>=,!). Помогите пожалуйста в написании программки, кому не сложно.
C++ Файл содержит данные об экспортируемом товаре Файл содержит данные об экспортируемом товаре : наименование товара; страна, импортирующая товар; объем партии в штуках. Записать в другой файл страны, в которые экспортируется товар заданного наименования, и посчитать общий объем его экспорта. http://www.cyberforum.ru/cpp-beginners/thread35446.html
Задача по файлам C++
Найдите в файле положение максимального элемента
C++ Вычисление функций с использованием их разложения
помогите составить решение задачки. Для х изменяющегося от a до b с шагом (b-a)/k, где (k=10), вычислить функцию f(x), используя ее разложение в степенной ряд в двух случаях: а) для заданного n; б) для заданной точности  (=0.0001). Для сравнения найти точное значение функции. y=sinx 0,1<=x<=1
C++ Задача по строкам в С http://www.cyberforum.ru/cpp-beginners/thread35427.html
Такое дело.Вот задача на С: Найти самое длинное общее слово для всех предложений текста. (Предложения отделяются точками, между словами 1 пробел). Не используя <string.h>, никаких других тем типа списков и структур тоже не использовать (так как мы их ещё не прошли). у меня запара в том, что получается 3хмерный массив: 1й его индекс - номер предложения, 2й индекс - номер слова, 3й индекс -...
C++ Функция переворота чисел Как перевернуть цыфри долгого целого числа задом на перед тоесть если есть 123456789, то сделать с него 987654321? подробнее

Показать сообщение отдельно
steve09
1 / 1 / 0
Регистрация: 26.04.2009
Сообщений: 216

Структуры... Задача: "База сотрудников небольшой фирмы" - C++

21.05.2009, 10:50. Просмотров 1317. Ответов 4
Метки (Все метки)

По каждому сотруднику вводится следующая информация:
• Фамилия, имя, отчество;
• год и дата рождения;
• пол;
• стаж работы по специальности;
• домашний адрес;
• телефон;
• должность;
• оклад.

Информация о сотрудниках фирмы хранится в файле workers.dat.

помогите исправить, пожалуйста вот эту ошибку....
[img]http://i010.***********/0905/d0/69978df9d0e1.jpg[/img]

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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
#include "stdafx.h"
#include "iostream"
#include<conio.h>
#include<stdio.h>
 
using namespace std;
 
struct WK 
{
    char fio[30];
    int year;
    char pol;
    int stag;
    char adres;
    int phone;
    char dolg;
    int oklad;
};
WK mas[10];//массив типа WK
 
//Пpоцедуpа ввода в базу
WK init (WK wk)
{
    cout<<"Vvedite familiyu, imya, otchestvo:"<<endl;
    cin.getline(wk.fio,30);//считать стpоку длиной 30 символов
 
    cout<<"Vvedite god i datu rozhdeniya:"<<endl;
    cin>>wk.year;
 
    cout<<"Vvedite pol:"<<endl;
    cin>>wk.pol;
 
    cout<<"Vvedite stag raboty po specialnosti:"<<endl;
    cin>>wk.stag;
 
    cout<<"Vvedite domashniy adres:"<<endl;
    cin>>wk.adres;
 
    cout<<"Vvedite telefon:"<<endl;
    cin>>wk.phone;
 
    cout<<"Vvedite dolgnost:"<<endl;
    cin>>wk.dolg;
    
    cout<<"Vvedite oklad:"<<endl;
    cin>>wk.oklad;
 
return wk;//функция возвpащает заполненную стpуктуpу
 
}
 
//Пpоцедуpа ввода информации в базу
void writeBase(FILE *f, WK wk)
{
 
fprintf(f, "%s ", wk.fio);
fprintf(f, "%s ", wk.year);
fprintf(f, "%s ", wk.pol);
fprintf(f, "%d ", wk.stag);
fprintf(f, "%s ", wk.adres);
fprintf(f, "%d ", wk.phone);
fprintf(f, "%s ", wk.dolg);
fprintf(f, "%f ", wk.oklad);
 
}
 
//Вывод массива из файла
void foutmas(FILE *f, WK wk)
{
 
//Считываем значение из файла
fscanf(f, "%s", wk.fio);
//Выводим его на экpан
cout<<"Familia, imya, otchestvo: "<<wk.fio<< endl;
 
fscanf(f, "%d", wk.year);
cout<<"God i data rozhdeniya: "<<wk.year<< endl;
 
fscanf(f, "%s", wk.pol);
cout<<"Pol: "<<wk.pol<< endl;
 
fscanf(f, "%d", wk.stag);
cout<<"Stag: "<<wk.stag<< endl;
 
fscanf(f, "%s", wk.adres);
cout<<"Dom. adres: "<<wk.adres<< endl;
 
fscanf(f, "%d", wk.phone);
cout<<"Stag: "<<wk.phone<< endl;
 
fscanf(f, "%s", wk.dolg);
cout<<"Dolgnost: "<<wk.dolg<< endl;
 
fscanf(f, "%f", wk.oklad);
cout<<"Oklad: "<<wk.oklad<< endl;
 
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    WK wk;//Экземпляp стpуктуpы workers
 
int i=0;
 
FILE *f=fopen("workers.dat", "w+"); //Создаем файл
 
do 
{
mas[i]=init(wk); //Заполняем элемент массив
writeBase(f, mas[i]); //Записываем элемент в файл
i++;
fseek(f, 1, SEEK_CUR); //Пеpеходим на в файле на один символ
}
while(i<10);
 
i=0; //Обнуляем пеpеменную цикла
 
printf("Nazhmite klavishu dlya vyvoda bazy na ekran...\n");
getch();
do 
{
foutmas(f, mas[i]); //Считываем массив из файла и выводим на экpан
i++;
}
while(i<10);
 
fclose(f); //Закpываем файл
return 0; //Пpизнак удачного завеpшения пpогpаммы
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru