Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2011, 11:56   #1
student71
 
Регистрация: 04.05.2011
Сообщений: 4
По умолчанию C++. Структура и вывод в файл.

Код:
#include "stdafx.h"
#include "iostream"
#include <conio.h>
#include <fstream>

	using namespace std;
	char a[20],chk[1024],srch[1024],srchtaunt[1024];
	int n,t,j,b,e,f,srchcount,srchnum,srchk;
	
	struct atmbl
	{
		char fam[1024];
		char name[1024];
		char otch[1024];
	}c1[1024],c2[1024];

	void out()					
	{
		cout<<endl;
		cout<<"ВЫВОД БАЗЫ ДАННЫХ: "<<endl;
		cout<<endl;
			for(int out=0;out<n;out++)
			cout<<c1[out].fam<<","<<c1[out].name<<","<<c1[out].otch;
		cout<<endl;
	}

	


	void add()        

	{
	char ffam[1024],fname[1024],fotch[1024];
	int count;
    
	ofstream outp;
	outp.open("database.txt",ios::app);
	cout<<"Введите фамилию человека: ";
	cin>>ffam;
	cout<<endl<<endl;
	cout<<"Введите имя человека: ";
	cin>>fname;
	cout<<endl<<endl;
	cout<<"Введите отчество человека: ";
	cin>>fotch;
	cout<<endl<<endl;
	outp.put('\n');
	count = strlen(ffam);
	outp.write(ffam,count);
	outp.put(',');
	count = strlen(fname);
	outp.write(fname,count);
	outp.put(',');
	count = strlen(fotch);
	outp.write(fotch,count);
	cout<<endl;
	cout<<"1. Добавить еще одну запись"<<endl;
	cout<<"2. Завершить"<<endl;
	cin>>a;
	cout<<endl;
	switch(a[0])
	{
		case '1':{add();
			break;}
		default: {
			break;}
	}
	}

	
    void main()  

	{   setlocale(LC_ALL,"Russian");
	cout<< "--===Начало работы===--";
	cout<<endl;
	cout<<endl;
	for(;;) 
	{	
	cout<<"1. Вывести базу данных"<<endl;
	cout<<"2. Добавить новые записи в базу данных"<<endl;
	cout<<"3. Выход из программы"<<endl;
	cout<<endl;
	cout<<"Выберите действие и нажмите Enter для продолжения: ";
	FILE * str;                                                  
	str=fopen("database.txt","r");								
	n=0;
							do
							{
							fscanf(str,"%[^,] %*[,] %[^,] %*[,] %[^,] %*[,] %[^,] %*[,] %[^,] %*[,] %[^\n]",c1[n].fam,c1[n].name,c1[n].otch);
							n++;
							}
							while (fscanf(str,"%c",chk) != EOF);   
	fclose(str);				
	cin>>a;
	switch(a[0]) {             
			case '1': {
					out();
					cout<<"Действие выполнено"<<endl;
					break;
					}
		
			case '2': {add();
						  break;}
			case '3': {exit(1);
						  break;}
			default: {
				cout<<endl;
				cout<<"Введено неверное значение, попробуйте еще раз";
				cout<<endl<<endl;
				
					 }
				}
	}
	}
Нужно добавить функцию, которая считывает фамилию с клавиатуры и выводит Ф.И.O. всех людей с этой фамилией в другой файл. Заранее спасибо.
student71 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Структура+файл revanatar Общие вопросы C/C++ 6 23.01.2011 12:22
Файл,структура (TASM) natt23 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 07.12.2010 21:22
файл и структура muxazila Общие вопросы C/C++ 0 08.06.2010 16:42
Текстовый файл - Структура (записи) felmor Паскаль, Turbo Pascal, PascalABC.NET 0 18.05.2009 22:36