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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
KorolevaE
2 / 2 / 0
Регистрация: 24.11.2012
Сообщений: 34
#1

моделирование базы данных (ошибка в коде) - C++

10.12.2013, 20:29. Просмотров 158. Ответов 0
Метки нет (Все метки)

Не могу понять где ошибка...
Структура "Книга". удалить K элементов из начала файла. добавить K элементов в конец файла.

#include "stdafx.h"
#include <iostream>
#include <stdio.h>
using namespace std;

struct book {
char name[40];
char author[40];
int year;
int strn;
};

int _tmain(int argc, _TCHAR* argv[])
{
setlocale (LC_ALL, "RUS");
book e, q;
FILE *f, *g;
if ((f=fopen("text.dat","w"))==NULL) {
printf ("\nФайл не открыт для записи");
}
int n, i, k;
printf ("\nВведите количество записей=");
scanf ("%d", &n);
for (i=0; i<n; i++) {
printf ("Введите название:");
scanf ("%s", &e.name);
printf ("Введите автора:");
scanf ("%s", &e.author);
printf ("ВВедите год издания:");
scanf ("%d", &e.year);
printf ("Введите количество страниц:");
scanf ("%d", &e.strn);
fwrite (&e, sizeof (book), 1, f);
}
fclose (f);
if((f=fopen("text.dat","rb"))==NULL)
printf("\nФайл не открыт для чтения.");
printf("\t______________________________________________________________\n");
printf("\t|name\t|author\t|year\t|strn|\n");
while(fread(&e,sizeof(book),1,f)) {
printf("\t______________________________________________________________\n");
printf("\t| %s\t| %s\t| %d\t| %d|\n", e.name, e.author, e.year, e.strn);
}
printf("\t______________________________________________________________\n");
fclose(f);
if ((g=fopen("text1.dat","w"))==NULL) {
printf("\nФайл не открыт для записи");
}
printf("Введите количество добавленных и удаленных записей = ");
scanf("%d", &k);
for (int i=k; i<n; i++) {
printf ("Введите название:");
scanf ("%s", &e.name);
printf ("Введите автора:");
scanf ("%s", &e.author);
printf ("ВВедите год издания:");
scanf ("%d", &e.year);
printf ("Введите количество страниц:");
scanf ("%d", &e.strn);
fwrite (&e, sizeof (book), 1, f);
}
fclose(g);
printf("\tИзмененные данные:\n");
printf("\t______________________________________________________________\n");
printf("\t|name\t|author\t|year\t|strn|\n");
if((f=fopen("text.dat","rb"))==NULL)
printf("\nФайл не открыт для чтения");
if((g=fopen("text1.dat","rb"))==NULL)
printf("\nФайл не открыт для чтения");
while(fread(&e,sizeof(book),1,g)) {
for (i=0; i<n; i++) {
printf("\t______________________________________________________________\n");
printf("\t| %s\t| %s\t| %d\t| %d|\n", e.name, e.author, e.year, e.strn);
}
}
printf("\t______________________________________________________________\n");
while(fread(&q,sizeof(book),1,g)) {
printf("\t______________________________________________________________\n");
printf("\t| %s\t| %s\t| %d\t| %d|\n", e.name, e.author, e.year, e.strn);
}
printf("\t______________________________________________________________\n");
fclose(f);
fclose(g);
system ("pause");
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2013, 20:29     моделирование базы данных (ошибка в коде)
Посмотрите здесь:

C++ ошибка в коде
C++ Ошибка в коде
C++ Ошибка в коде
ошибка в коде C++
Ошибка в коде C++
Ошибка при создании новой базы данных C++
C++ Ошибка в коде
Ошибка в коде C++
Ошибка в коде. Запись данных на хостинг ftp C++
Удалить из файла абонента с отрицательным балансом (моделирование базы данных) C++
C++ Ошибка в коде с признаками (свойствами) вывода данных
C++ Ошибка в коде

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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