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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.02.2010, 22:14   #1
decompressed
 
Аватар для decompressed
 
Регистрация: 31.01.2010
Сообщений: 9
По умолчанию Добавление в структуру

Вот программа:
Код:
#include <stdio.h>
#include <conio.h>
#include <iostream.h>

struct price_sheet
{
	int nomber_pp;
	char kind[30];
	int nomber_model;
	char colour[30];
	char date_of_issue[30];
	int cost;
};

price_sheet footwear[5]=
{
	{1, "shoe" , 243,"white", "1.09.2009", 500},
	{2, "shoe", 135, "black-pink", "15.12.2009", 600},
	{3, "sneakers", 57, "white" ,"24.10.2009", 300},
	{4, "trainers", 90, "white-black", "29.07.2009", 250},
	{5, "trainers", 112, "black" ,"5.07.2009", 270}
};

void main(void)
{ 
	char add;
	for (int i=0; i<5; i++)		cout<<footwear[i].nomber_pp<<"  "<<footwear[i].kind<<"  "<<footwear[i].nomber_model<<"  "<<
	footwear[i].colour<<"  "<<footwear[i].date_of_issue<<"  "<<footwear[i].cost<<"$"<<endl;
	
	cout<<"Добавить стуктуру? (y/n)"<<" ";
	cin>>add;
	switch (add)
	{
		case 'y': {
						
						break;
			     }
		case 'n': cout<<"Ну не очень то и хотелось"<<endl; break;
		default:cout << "Неверный ввод" << endl; break;
    }


}
Вообщем, в операторе swich по запросу пользователя надо сделать добовление структуры по образцу в конец списка.
Код:
price_sheet footwear[5]=
{
	{1, "shoe" , 243,"white", "1.09.2009", 500},
	{2, "shoe", 135, "black-pink", "15.12.2009", 600},
	{3, "sneakers", 57, "white" ,"24.10.2009", 300},
	{4, "trainers", 90, "white-black", "29.07.2009", 250},
	{5, "trainers", 112, "black" ,"5.07.2009", 270}
};
И потом вывод обновленного списка. Помогите, а?
decompressed вне форума Ответить с цитированием
Старый 16.02.2010, 09:13   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Так стоп!. Я правильно понимаю что тебе нужен именно динамический список а не просто статический, коим ты пользуешь в программе?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.02.2010, 14:37   #3
decompressed
 
Аватар для decompressed
 
Регистрация: 31.01.2010
Сообщений: 9
По умолчанию

Ну как бы да. )
decompressed вне форума Ответить с цитированием
Старый 16.02.2010, 15:24   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

STL тип List можно использовать?
Или нужно классическими динмассивами оперировать?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.02.2010, 15:39   #5
decompressed
 
Аватар для decompressed
 
Регистрация: 31.01.2010
Сообщений: 9
По умолчанию

Да использовать можно все. ))
decompressed вне форума Ответить с цитированием
Старый 16.02.2010, 15:57   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Вот смотри:
Код:
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <list>
using namespace std;
struct price_sheet
{
	int nomber_pp;
 // Тут остальные поля добавишь
}q;

int _tmain(int argc, _TCHAR* argv[])
{
 list<price_sheet> l;
 price_sheet pr;

// Добавляем в список
 pr.nomber_pp=1; l.push_front(pr);
// Еще добавляем
 pr.nomber_pp=2; l.push_front(pr);
// и так до посинения будем добавлять
 pr.nomber_pp=3; l.push_front(pr);
// Ввод полей price_sheet сам напишешь, там несколько раз Scanf

// Выводим на экран. Тут тоже остальные поля допиши.
 for(list<price_sheet>::iterator  i = l.begin();  i != l.end(); i++)
      {
		  price_sheet p=*i;
		  printf("\t %d",p.nomber_pp);
      }
	getchar();
	return 0;

	return 0;
}
Ато у меня чет VS2010 начала компушку вешать...

Понятен смысл?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.02.2010, 18:50   #7
decompressed
 
Аватар для decompressed
 
Регистрация: 31.01.2010
Сообщений: 9
По умолчанию

Пока не особо, но попробую разобраться. =)


Слушай, у тя библиотека stdafx.h требует atlstr.h. Первую то я нашел, а вот вторую можешь выложить?

Последний раз редактировалось decompressed; 16.02.2010 в 21:33.
decompressed вне форума Ответить с цитированием
Старый 17.02.2010, 08:52   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
у тя библиотека stdafx.h требует atlstr.h
Ну вообще-то можно по-моему и без "stdafx.h".

Код:
#include <list>
#include <iostream>
using namespace std;

struct price_sheet
{
	int nomber_pp;
	char kind[30];
	int nomber_model;
	char colour[30];
	char date_of_issue[30];
	int cost;
};


int _tmain(int argc, _TCHAR* argv[])
{
	 list<price_sheet> l;
     price_sheet pr;
	 char add='n';

	 do{
		 cout<<"\n\nnomber_pp\t";cin>>pr.nomber_pp;
		 cout<<"kind\t";cin>>pr.kind;
		 cout<<"nomber_model\t";cin>>pr.nomber_model;
		 cout<<"colour\t";cin>>pr.colour;
		 cout<<"date_of_issue\t";cin>>pr.date_of_issue;
		 cout<<"cost\t";cin>>pr.cost;
		 l.push_front(pr);
		 cout<<"Enough? [y\\n]"; cin>>add;
	 }while(add=='n');

	  for(list<price_sheet>::iterator  i = l.begin();  i != l.end(); i++)
      {
		  price_sheet p=*i;
		  printf("\n %d\t%s\t%d",p.nomber_pp,p.kind,p.nomber_model);
      }
	getchar();getchar();

	return 0;
}
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.02.2010, 21:38   #9
decompressed
 
Аватар для decompressed
 
Регистрация: 31.01.2010
Сообщений: 9
По умолчанию

Спасиб за основу, буду дорабатывать. =)
decompressed вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Описать структуру NOTE stellavin Общие вопросы .NET 1 13.12.2009 21:01
Упорядочить структуру файла. Guinsoo Microsoft Office Excel 3 03.07.2009 12:38
Исправить структуру на С. STS_1991 Помощь студентам 4 29.04.2009 16:39