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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.03.2011, 14:09   #1
SeregaTihonov
Пользователь
 
Регистрация: 20.12.2010
Сообщений: 12
Радость !!!переделать структуру в классы

#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#define MAX 2//кол-во компьютеров для регистрации
int i;
//сама структура
struct list {
char marka[20];
int hdd;
int ozu;
int date;
char monitor[20];
} s[MAX];//список стуктур
//функция регистрации
void reg()
{
for(i=0;i<MAX;i++)
{
printf("\n Nomer zapisi: %d\n",i);
printf("\n Vvedite marku computera: ");
scanf("%s",&s[i].marka);
printf("\n Vvedite tip monitora: ");
scanf("%s",&s[i].monitor);
printf("\n Vvedite razmer HDD (v gigabaytax): ");
scanf("%d",&s[i].hdd);
printf("\n Vvedite razmer OZU (v gigabaytax): ");
scanf("%d",&s[i].ozu);

printf("\n Vvedite god vipuska: ");
scanf("%d",&s[i].date);
printf("\a");//звуковой сигнал для удобства
}
}
void bubod()
{
for(i=0;i<MAX;i++)
{
printf("\n Nomer zapisi %d\n",i);
printf("\n Marka: %s\n",s[i].marka);
printf("\n HDD: %d\n",s[i].hdd);
printf("\n OZU: %d\n",s[i].ozu);
printf("\n Data: %d\n",s[i].date);
printf("\n Model monitora: %s\n",s[i].monitor);
printf("\n");
}
}

void serch()
{
int chois; // выбор действия.
int tupint; // переменная для int.
char tupchar[20];//переменная для char.
printf("Vvedite svoystvo, po kotoromu budet vipolniatsia poisk\n");
printf("1 - Nomer zapisi\n\n");
printf("2 - HDD\n");
printf("3 - OZU\n");
printf("4 - God vipuska\n");
printf("5 - Model monitora\n");
printf("6 - Marka\n");
scanf("%d",&chois);
printf("Vvedite deystviye\n");
if(chois==5 || chois==6)
{
scanf("%s",&tupchar);
}
else
{
scanf("%d",&tupint);
}

for(i=0;i<MAX;i++)
{
if(chois==1)
{
if(i==tupint)
{
printf("Nomer zapisi %d\n",i);
printf("Marka: %s\n",s[i].marka);
printf("HDD: %d\n",s[i].hdd);
printf("OZU: %d\n",s[i].ozu);
printf("Data: %d\n",s[i].date);
printf("Model monitora: %s\n",s[i].monitor);
printf("\n");
}
}
if(chois==2)
{
if(s[i].hdd==tupint)
{
printf("Nomer zapisi %d\n",i);
printf("Marka: %s\n",s[i].marka);
printf("HDD: %d\n",s[i].hdd);
printf("OZU: %d\n",s[i].ozu);
printf("Data: %d\n",s[i].date);
printf("Model monitora: %s\n",s[i].monitor);
printf("\n");
}
}
if(chois==3)
{
if(s[i].ozu==tupint)
{
printf("Nomer zapisi %d\n",i);
printf("Marka: %s\n",s[i].marka);
printf("HDD: %d\n",s[i].hdd);
printf("OZU: %d\n",s[i].ozu);
printf("Data: %d\n",s[i].date);
printf("Model monitora: %s\n",s[i].monitor);
printf("\n");
}
}
if(chois==4)
{
if(s[i].date==tupint)
{
printf("Nomer zapisi %d\n",i);
printf("Marka: %s\n",s[i].marka);
printf("HDD: %d\n",s[i].hdd);
printf("OZU: %d\n",s[i].ozu);
printf("Data: %d\n",s[i].date);
printf("Model monitora: %s\n",s[i].monitor);
printf("\n");
}
}
if(chois==5)
{
if(!strcmp(s[i].monitor,tupchar))
{
printf("Nomer zapisi %d\n",i);
printf("Marka: %s\n",s[i].marka);
printf("HDD: %d\n",s[i].hdd);
printf("OZU: %d\n",s[i].ozu);
printf("Data: %d\n",s[i].date);
printf("Model monitora: %s\n",s[i].monitor);
printf("\n");
}
}
if(chois==6)
{
if(!strcmp(s[i].marka,tupchar))
{
printf("Nomer zapisi %d\n",i);
printf("Marka: %s\n",s[i].marka);
printf("HDD: %d\n",s[i].hdd);
printf("OZU: %d\n",s[i].ozu);
printf("Data: %d\n",s[i].date);
printf("Model monitora: %s\n",s[i].monitor);
printf("\n");
}
}
}
}

void del()
{
int chois2;
char d[1];

printf("Vvedite nomer zapisi dlya udaleniya!\n");
scanf("%d",&chois2);
for(i=0;i<MAX;i++)
{
if(i==chois2)
{
strcpy(s[i].marka,d);//strcpy(s1,s2) Копирование s2 в s1
strcpy(s[i].monitor,d);//strcpy(s1,s2) Копирование s2 в s1
s[i].hdd=0;
s[i].ozu=0;
s[i].date=0;

}
}
}



main()
{
int chois;
for(; //здесь бесконечный for
{
printf("\n *** Viberite deystvie *** :\n");
printf("\n 1 - Vvesti spisok.\n");
printf("\n 2 - Vivesti spisok na ekran.\n");
printf("\n 3 - Ispolzovat spisok.\n");
printf("\n 4 - Udalit spisok.\n");
printf("\n 5 - Exit.\n");
printf("\n * Vvedite vibrannoe deystvie : ");
scanf("%d",&chois);
puts("\n=========================== ============");
if(chois==1)
{
reg();
}
if(chois==2)
{
bubod();
}
if(chois==3)
{
serch();
}
if(chois==4)
{
del();
}
if(chois==5)
{
break;
}
}
}

Последний раз редактировалось SeregaTihonov; 26.03.2011 в 14:11.
SeregaTihonov вне форума Ответить с цитированием
Старый 26.03.2011, 14:10   #2
SeregaTihonov
Пользователь
 
Регистрация: 20.12.2010
Сообщений: 12
По умолчанию

помогите пожалуйста!!! в понедельник нужно сдать!!!
а то повторка!!!
SeregaTihonov вне форума Ответить с цитированием
Старый 26.03.2011, 15:08   #3
Mandrivnyk
Software Developer
Участник клуба
 
Аватар для Mandrivnyk
 
Регистрация: 01.03.2011
Сообщений: 1,098
По умолчанию

Цитата:
Код:
if(chois==1)
{
reg();
}
if(chois==2)
{
bubod();
}
if(chois==3)
{
serch();
}
if(chois==4)
{
del();
}
if(chois==5)
{
break;
}
}
Оператор switch? Не, не слышал... (с)

По сабжу -- в С++ структура от класса отличается, по большому счету, только доступом по умолчанию. В классе он private, в структуре -- public.
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв.
Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062
Mandrivnyk вне форума Ответить с цитированием
Старый 26.03.2011, 15:50   #4
onewho
Форумчанин
 
Регистрация: 29.09.2010
Сообщений: 636
По умолчанию

ну если "на отъебись"

Код:
struct list {
char marka[20];
int hdd;
int ozu;
int date;
char monitor[20];
} s[MAX];
поменять на
Код:
class list {
public:
char marka[20];
int hdd;
int ozu;
int date;
char monitor[20];
} s[MAX];
и усё
onewho вне форума Ответить с цитированием
Старый 27.03.2011, 01:57   #5
SeregaTihonov
Пользователь
 
Регистрация: 20.12.2010
Сообщений: 12
По умолчанию

Ну этоже только обьявление, по-моему в
классах printf и scanf заменяются на cout и cin?
SeregaTihonov вне форума Ответить с цитированием
Старый 27.03.2011, 01:57   #6
Mandrivnyk
Software Developer
Участник клуба
 
Аватар для Mandrivnyk
 
Регистрация: 01.03.2011
Сообщений: 1,098
По умолчанию

Цитата:
Сообщение от SeregaTihonov Посмотреть сообщение
Ну этоже только обьявление, по-моему в
классах printf и scanf заменяются на cout и cin?
Вот блин! А мужики-то не знают... (с)

cout и cin -- объекты класса iostream, отвечающие за стандартный вывод и ввод.
подключай <iostream> -- и меняй.

ЗЫ Кстати, остальные инклуды тоже поменял бы -- программа, судя по всему, на С, поэтому и используется структура вместо класса, printf и scanf вместо cout и cin, и старые заголовки.
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв.
Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062
Mandrivnyk вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
переделать в классы DRELORD Помощь студентам 1 03.06.2010 12:46
переделать в классы DRELORD Помощь студентам 0 31.05.2010 22:23
Переделать код с процедуры в классы на С++ Tusichka Помощь студентам 0 30.05.2010 19:51
Добавление в структуру decompressed Помощь студентам 8 17.02.2010 21:38