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

Ошибка в программе. Структура "Автомобиль" - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ошибка в чтении функции из заголовочного класса (class header) http://www.cyberforum.ru/cpp-beginners/thread1155629.html
Прохожу боевое крещение в написании заголовков visual studio 2013 Source.cpp #include<iostream> #include<thread> #include<Windows.h> #include<string> #include"kaki.h" using namespace std;
C++ Ширина пикселя SetPixel Как задать ширину пикселя HPEN hPen = CreatePen(PS_DASH, 5, RGB(255, 255, 255)); таким образом не получается http://www.cyberforum.ru/cpp-beginners/thread1155625.html
C++ Записать элементы массива Х в массив У, сместив элементы массива Х вправо на 3 позиции
Записать элементы массива Х в массив У, сместив элементы массива Х вправо на 3 позиции
Не хватает опыта для того, чтобы понять ошибку в задаче циклического побитового сдвига C++
Доброго времени суток! Помогите пожалуйста разобраться, почему вместо заданных мною, скажем 4 символов, после циклического сдвига он выдаёт в разы больше. Ошибка начинает появляться на третьем цикле for. Вот функция: void lrotate(unsigned char ch,int n) { unsigned int in; for(int j=0;ch > 0;j++) { in=ch; } for(int k=0;in;k++)
C++ Описать базовый класс автомобиль http://www.cyberforum.ru/cpp-beginners/thread1155598.html
Помогите написать программу Описать базовый класс автомобиль со следующими данными: количество колес тип двигателя геометрические размеры (длина, ширина, высота) грузоподъемность(кг) На основе этого класса создать производные: легковой автомобиль грузовой автомобиль
C++ Шаблонный класс динамический вектор Создала шаблонный класс одномерный динамический массив. Нужно заполнить массив числами какими-нибудь. Объявила данные и методы: template <class T> class Exm { protected: T *mas; int len; public: Exm(); //конструктор подробнее

Показать сообщение отдельно
Bogdan_Fateev
0 / 0 / 0
Регистрация: 07.04.2014
Сообщений: 10
23.04.2014, 21:50     Ошибка в программе. Структура "Автомобиль"
Нуждаюсь в помощи. Сделал программу, но есть проблема с поиском.
Задание: создать программу, которая бы обеспечивала создание, просмотр, дополнения и извлечение данных из файла, содержащего сведения об автомобиле состоящие из названия его марки, номера, фамилии владельца. Данная информация о 20 автомобилей. Организовать поиск количества автомобилей каждой марки.
Проблема в том, что при поиске выводит "0" вместо нужного количества марок.
Например, я введу 2 машины с маркой "лада", а выводит вместо "2" "0".

Вот код:

Кликните здесь для просмотра всего текста
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
//---------------------------------------------------------------------------
struct ant
{
int kod;
char mark[15];
char fam[15];
double nomer;
};
FILE *f,*g;
ant x;
 
//stvorenn9
void stv(void)
{ if ((f=fopen("x.dat","w"))==NULL)
{perror("Fail uje suwestvuet");
getch();
exit(1);
}
cout<<"\n Vvedite inform avtomobilya\n";
do
{cout<<"\n Vvedite marku avtomobilya: ";
cin>>x.mark;
cout<<"\n Vvedite nomer avtomobilya: ";
cin>>x.nomer;
cout<<"\n Vvedite familiu vladelca: ";
cin>>x.fam;
fwrite(&x,sizeof(x),1,f);
}
while(getch()!=27);
fclose(f);
}
 
//dopolnenie
void dop(void)
{ if ((f=fopen("x.dat","a"))==NULL)
{perror("Fail uje sywestvuet");
getch();
exit(1);
}
cout<<"\n Vvedite inform avtomobilya\n";
do
{cout<<"\n Vvedite marku avtomobilya: ";
cin>>x.mark;
cout<<"\n Vvedite nomer avtomobilya: ";
cin>>x.nomer;
cout<<"\n Vvedite prizvuwe vladelca: ";
cin>>x.fam;
fwrite(&x,sizeof(x),1,f);
}
while(getch()!=27);
fclose(f);
}
 
//peresmotr
void per(void)
{ if ((f=fopen("x.dat","r"))==NULL)
{perror("Fail uje suwestvuet");
getch();
exit(1);
}
cout<<"\n Vvedite inform avtomobilya: \n";
while(fread(&x,sizeof(x),1,f)!=NULL)
{cout<<"\n Vvedite marku avtomobilya: "<<x.mark;
cout<<"\n Vvedite nomer avtomobilya: "<<x.nomer;
cout<<"\n Vvedite prizvuwe vladelca: "<<x.fam;
getch();
}
fclose(f);
}
 
//DEl
void del(void)
{ if ((f=fopen("x.dat","r"))==NULL)
{perror("Fail uje suwestvuet");
getch();
exit(1);
}
if((g=fopen("x1.dat","w"))==NULL)
{perror("Fail uje suwestvuet");
getch();
exit(1);
}
cout<<"\n Vvedite inform avtomobilya: \n";
while(fread(&x,sizeof(x),1,f)!=NULL)
{cout<<"\n Vvedite marku avtomobilya: "<<x.mark;
cout<<"\n Vvedite nomer avtomobilya: "<<x.nomer;
cout<<"\n Vvedite prizvuwe vladelca: "<<x.fam;
cout<<"\n\n UDALITE(y/n)?";
if(getch()=='n') fwrite(&x,sizeof(x),1,g);
}
fclose(f);
fclose(g);
unlink("x.dat");
rename("x1.dat","x.dat");
}
 
//dolg
void count(void)
{ char vodmark[15];
if((f=fopen("x.dat","r"))==NULL)
{perror("Fail uje sywestvuet");
getch();
exit(1);
}
cout<<"\nvvedite marku\n";
cin>>vodmark;
 int k=0;
while(fread(&x,sizeof(x),1,f))
if(vodmark==x.mark) k++;
cout<<"\n Kolichestvo marok: "<<k;
getch();
}
#pragma argsused
int main(int argc, char* argv[])
{
 int r;
clrscr();
do
{
clrscr();
cout<<"\n\n\n\t\t GLAVNOE MEHU \n\t1-SOZDANIE\n\t2-PERESMOTR";
cout<<"\n\t3-DOPOLNENIE\n\t4-DELETE\n\t5-PODSCHET\n\t6-BUXOD\n\t REGUM?\n\t";
cin>>r;
switch(r)
{case 1:{stv();break;}
case 2:{per();break;}
case 3:{dop();break;}
case 4:{del();break;}
case 5:{count();break;}
case 6:exit(1);
}
}
while(1);
 
        return 0;
}
//---------------------------------------------------------------------------
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 23:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru