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

Написать программу записи к файлу элементов типа структура - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ввод вручную размерности двумерного массива http://www.cyberforum.ru/cpp-beginners/thread140635.html
Здравствуйте уважаемые форумчане. Такая небольшая проблема. У нас есть двумерный массив, размерность n на n. С помощью #define n 5 указываю 5 на 5. Захотел вводить вручную n: int n;cout<<"n:";cin>>n; ошибки. Как ввести n подскажите. И еще проблема, когда вывожу двумерку, то вывод примерно такой: 1 11 121
C++ не получается с графикой помогите, вроде все правильно, а фигура не двигается((( #include<stdio.h> #include<stdlib.h> #include<graphics.h> #include<dos.h> #include<conio.h> void main() { int x,y,speed,GD,GM,color=1,time=0,c_l=1; char s; http://www.cyberforum.ru/cpp-beginners/thread140624.html
C++ Дан файл,содержащий текст на русском языке.& Дана строка,
#1 Дан файл,содержащий текст на русском языке.Определить сколько раз встречается самое длинное слово. #2 Дана строка,состоящая из русских слов,разделенных пробелами одним или несколькими).Найти длину самого длинного слова. Помогите кому не трудно Буду очень благодарен Добавлено через 7 часов 56 минут Поможет кто-нибудь?)
C++ Консольная программа...
Здравствуйте! Прошу помочь с написанием консольной программы, которая вводит с консоли значения элементов двумерного массива целых чисел (5*5), вычисляет сумму его значений (использовать указатели, а не идексы) и выводит результат на консоль. На Си. Буду очень благодарен!
C++ побитовые http://www.cyberforum.ru/cpp-beginners/thread140564.html
С побитовыми операциями вообще не разбираюсь! Помогите написать программу. а то допуска к экзамену не будет(( Вот задание: Дано целое неотрицательное число. Определить в его двоичном представлении количество соседств двух нулей и двух единиц
C++ написать программу, шифрующую и дешифрующую указанный с консоли текстовый файл написать программу на С\С++,шифрующую и дешифрующую указанный с консоли текстовый файл.Программа выполняет циклическую замену каждой русской буквы,расположенной в алфавите на k-ой позиции после исходной(0<k<11).например при k=3 "А" перейдет в "Г","а" в "г","Я" в "В".Букву ё в алфавите не учитывать. помогите пожалуйста с програмкой.не получается вообще никак ее сделать((( подробнее

Показать сообщение отдельно
duden
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 42

Написать программу записи к файлу элементов типа структура - C++

04.06.2010, 00:01. Просмотров 372. Ответов 5
Метки (Все метки)

Написать программу записи к файлу элементов типа структура для реестрации автомобилей с полями:
Марка автомобиля,
год выпуска,
цвет,
номер.

Распечатать информацию из файла про автомобили , с годом выпуска не поже 2005 года

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
#include <fstream.h>
#include <iostream.h>
#include <functional.h>
 
#include <vector>
 
template<typename T> void write(std::ofstream &ofs, T &t) {
   ofs.write(reinterpret_cast<char*>(&t), sizeof(T)); }
 
template<typename T> void read (std::ifstream &ifs, T &t) {
   ifs.read (reinterpret_cast<char*>(&t), sizeof(T)); }
 
template<typename T> void write_v(std::ofstream &ofs, std::vector<T> &v) 
{
   std::vector<T>::size_type size = v.size();
   write(ofs, size);
 
   for(std::vector<s>::iterator it = v.begin(); it != v.end(); ++it)
      write(ofs, *it);
}
 
template<typename T> void read_v (std::ifstream &ifs, std::vector<T> &v)
{
   std::vector<T>::size_type size = 0;
   read(ifs, size);
 
   v.reserve(size);
   while(size--)
   {
      s t;
      read(ifs, t);
      v.push_back(t);
   }
}
 
struct s
{
   char mark [16];
   char color[16];
   int  year;
   int  num;
};
 
void input (s * str)
{
   std::cout << "mark: ";
   std::cin  >> str->mark;
 
   std::cout << "color: ";
   std::cin  >> str->color;
 
   std::cout << "year: ";
   std::cin  >> str->year;
 
   std::cout << "num: ";
   std::cin  >> str->num;
}
 
void output(s * str)
{
   std::cout << str->mark << '.' << str->color << '.' << str->year << '.' << str->num << std::endl;
}
 
bool predicate(s * str)
{
   if(str->year >= 2005)
      return true;
   else
      return false;
}
 
int main()
{
   int nstructs = 0;
 
   std::cout << "enter amount autos for write data to file (0 - base not created): ";
   std::cin  >> nstructs;
 
   if(nstructs != 0)
   {
      std::ofstream out("file.dat");
      if(out.fail())
      {
         std::cerr << "could not open file for write";
         return -1;
      }
 
      std::vector<s> vstructs(nstructs);
      for(std::vector<s>::iterator it = vstructs.begin(); it != vstructs.end(); ++it)
         input(&(*it));
 
      write_v(out, vstructs);
 
      out.close();
   }
 
   std::cout << "read data from file (0 - no, 1 - yes): ";
   std::cin  >> nstructs;
 
   if(nstructs != 0)
   {
      std::ifstream in("file.dat");
 
      if(in.fail())
      {
         std::cerr << "could not open file for read";
         return -1;
      }
 
      std::vector<s> vstructs;
      
      read_v(in, vstructs);
      for(size_t i = 0; i < vstructs.size(); ++i)
         if(predicate(&(vstructs[i])))
            output(&(vstructs[i]));
 
      in.close();
   }
 
   system("pause");
   return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru