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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.07.2010, 14:22   #1
YooGine
Новичок
Джуниор
 
Регистрация: 20.07.2010
Сообщений: 1
По умолчанию не могу додуматься как исправит программу ...

Есть программа , которая делает операции над тремя студентами ...
Нужно сделать так , чтобы студентов было не три , а столько , сколько зададим в начале выполнения программы ...

Код:
#include "stdafx.h"
#include "stdio.h"
#include "string.h"
#include <iostream>

using namespace std;
struct student
{
public:
	char name[10];
	int kyrs;
	char sex[1];
};
void add (student s[5])
{
int i;
for (i=0; i < 5; i++)
	{
	cout << " Vvedite imya: ";
	cin >> s[i].name;
	cout << " Vvedite kyrs: ";
	cin >> s[i].kyrs;
	cout << " Vvedite pol: ";
	cin >> s[i].sex;
	}
cout<<"\n*************input***********\n";
cout << "\nNAME	KYRS	POL\n";
for (i=0; i<5; i++)
{
cout << s[i].name << "\t";
cout << s[i].kyrs << "\t";
cout << s[i].sex << "\n";
}
};
void del (student s[5])
{
int i;
int a;
	cout << "\nVvedite kyrs dlya udaleniya:\n ";
	cin >> a ;

cout << "\n***********Deleted***********\n";
cout << "\n NAME	KYRS	POL\n";
for (i=0; i<5; i++)
{
	if (s[i].kyrs != a)
	{
	cout << s[i].name << "\t";
	cout << s[i].kyrs << "\t";
	cout << s[i].sex << "\n";
	}
}
};
void output (student s[5])
{
int i,t;
char f[] = "F";
cout << "\n***********output************\n";
cout <<"\nNAME	KYRS	POL\n";
for (i=0; i<5; i++)
	{
	if (s[i].kyrs != 2 && s[i].sex != f)
		{
			cout << s[i].name << "\t";
			cout << s[i].kyrs << "\t";
			cout << s[i].sex << "\n";
			
		}
	}
};
void main()
{
student s[5];
add (s);
del (s);
output(s);
cin.get ();
}

Последний раз редактировалось Stilet; 23.07.2010 в 13:04.
YooGine вне форума Ответить с цитированием
Старый 20.07.2010, 14:27   #2
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

Вместо
Код:
student studarray[3];
используйте что-то вроде
Код:
int size = 10;
student* studarray = new student[size];
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 23.07.2010, 11:44   #3
Teksa
Пользователь
 
Регистрация: 24.08.2007
Сообщений: 88
По умолчанию

можно воспользоватся std::vector для хранения записей.

std::vector<student> students;
Teksa вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Текстовая формула (не могу додуматься) WIC Microsoft Office Excel 1 26.02.2009 12:35
Делимся идеями (простыми, но до которых все-равно нужно додуматься) Jora_Kornev Общие вопросы Delphi 3 11.01.2009 14:18
Помогите исправит прогу!!! Ванька Помощь студентам 1 25.11.2007 14:47
Не могу понять как отредактировать программу asale Microsoft Office Excel 1 31.01.2007 20:57