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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.06.2010, 02:16   #1
UnknownVirus
 
Регистрация: 21.01.2010
Сообщений: 8
Сообщение Двумерный динамический массив С++

Просьба помочь со след. задачей:
Составить программу для вывода записи по N студентам: фамилия, год рождения, год поступления в техникум и оценки по 4 предметам (ОС, Языки программирования, Высшая математика, Английский язык) последней аттестации. Распечатать анкетные данные студентов, получивших в аттестации оценку 2.
Коечто набрасал но дальше запутался.
Код:
#include<iostream.h>
#include<windows.h>
#include<math.h>
struct stud
{
	char fam[25];
	int godr,godp,os,prog,mat,angl;
	float srb;

};
int i,n;
stud *a=new stud[n];
char s[50];
void vvod()
{

	CharToOem("Введите кол-во: ",s);
	cout<<s;
    cin>>n;

	{
		CharToOem("Введите фамилию: ",s);
		cout<<s;
		cin>>a[n].fam;
		CharToOem("Введите год рождения: ",s);
		cout<<s;
		cin>>a[n].godr;
		CharToOem("Введите год поступл. в техникум: ",s);
		cout<<s;
		cin>>a[n].godp;
		CharToOem("Введите оценку по ОС: ",s);
		cout<<s;
		cin>>a[n].os;
		CharToOem("Введите оценку по Программированию: ",s);
		cout<<s;
		cin>>a[n].mat;
		CharToOem("Введите оценку по Математике: ",s);
		cout<<s;
		cin>>a[n].mat;
		CharToOem("Введите оценку по Английскому: ",s);
		cout<<s;
		cin>>a[n].angl;}
		
}
void vivod()
{
	int i,n;
	for (i=0;i<n;i++)
	{
		cout<<a[n].fam<<" "<<a[n].godr<<" "<<a[n].godp<<" "<<a[n].os<<" "<<a[n].prog<<" "<<a[n].mat<<" "<<a[n].angl;
	}
}
void main()
{
	int k;
	do
	{
		CharToOem("МЕНЮ",s);
		cout<<s<<"\n";
		CharToOem("1. ВВОД",s);
		cout<<s<<"\n";
		CharToOem("2. вывод",s);
		cout<<s<<"\n";
		CharToOem("3. вывод по услови",s);
		cout<<s<<"\n";
		CharToOem("4. выход ",s);
		cout<<s<<"\n";
		CharToOem("Введите цифру: ",s);
		cout<<s;
		cin>>k;
		switch(k)
		{
		case 1:{vvod();break;}
		case 2:{vivod();break;}
		default: main();
		}
	}
	while (k==3);
}
UnknownVirus вне форума Ответить с цитированием
Старый 16.06.2010, 09:48   #2
RUSt88
Участник клуба
 
Регистрация: 29.12.2009
Сообщений: 1,166
По умолчанию

Цитата:
дальше запутался.
пошаговая отладка эх и хорошая все же штука
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть]
RUSt88 вне форума Ответить с цитированием
Старый 16.06.2010, 11:06   #3
Sweta
Форумчанин
 
Регистрация: 22.11.2007
Сообщений: 664
По умолчанию

В чем запутались?
Вот текст исправленной программы.
Код:
#include<iostream.h>
#include<windows.h>
#include<math.h>
struct stud
{
	char fam[25];
	int godr,godp,os,prog,mat,angl;
	float srb;

};
int i,n;
stud *a=new stud[n];
char s[50];
void vvod()
{

	CharToOem("Введите кол-во: ",s);
	cout<<s;
    cin>>n;
 for (i=0;i<n;i++)
	{
		CharToOem("Введите фамилию: ",s);
		cout<<s;
		cin>>a[i].fam;
		CharToOem("Введите год рождения: ",s);
		cout<<s;
		cin>>a[i].godr;
		CharToOem("Введите год поступл. в техникум: ",s);
		cout<<s;
		cin>>a[i].godp;
		CharToOem("Введите оценку по ОС: ",s);
		cout<<s;
		cin>>a[i].os;
		CharToOem("Введите оценку по Программированию: ",s);
		cout<<s;
		cin>>a[i].mat;
		CharToOem("Введите оценку по Математике: ",s);
		cout<<s;
		cin>>a[i].mat;
		CharToOem("Введите оценку по Английскому: ",s);
		cout<<s;
		cin>>a[i].angl;
                 }
}
void vivod()
{
	for (i=0;i<n;i++)
	{

		cout<<a[i].fam<<" "<<a[i].godr<<" "
                <<a[i].godp<<" "<<a[i].os<<" "<<a[i].prog<<" "
                <<a[i].mat<<" "<<a[i].angl<<endl;
	}
}
int main()
{
	int k;
	do
	{
		CharToOem("МЕНЮ",s);
		cout<<s<<"\n";
		CharToOem("1. ВВОД",s);
		cout<<s<<"\n";
		CharToOem("2. вывод",s);
		cout<<s<<"\n";
		CharToOem("3. вывод по услови",s);
		cout<<s<<"\n";
		CharToOem("4. выход ",s);
		cout<<s<<"\n";
		CharToOem("Введите цифру: ",s);
		cout<<s;
		cin>>k;
		switch(k)
		{
		case 1:{vvod(); break;}
		case 2:{vivod(); break;}
		default: continue;
		}
	}
	while (k!=3);

 system("pause");
 return 0;
 }
Вам осталось определить у кого есть 2 и вывести на печать.
Неприятности приходят и уходят, а жизнь продолжается!
Sweta вне форума Ответить с цитированием
Старый 16.06.2010, 14:20   #4
savva
Форумчанин
 
Регистрация: 10.06.2010
Сообщений: 225
По умолчанию

system("pause");

эм,а что лучше

system("pause");
или
getch();
?ну это лично мне интересно.
За помощь: Нажмите на весы слева от сообщения!
savva вне форума Ответить с цитированием
Старый 16.06.2010, 14:48   #5
RUSt88
Участник клуба
 
Регистрация: 29.12.2009
Сообщений: 1,166
По умолчанию

getch - правильно будет, т.к. ожидает нажатия клавиши
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть]
RUSt88 вне форума Ответить с цитированием
Старый 16.06.2010, 19:42   #6
savva
Форумчанин
 
Регистрация: 10.06.2010
Сообщений: 225
По умолчанию

ну для getch(); нужно #include <conio.h> делать.

а system("pause") что делает?
За помощь: Нажмите на весы слева от сообщения!
savva вне форума Ответить с цитированием
Старый 16.06.2010, 21:43   #7
Galusy
Новичок
Джуниор
 
Регистрация: 16.06.2010
Сообщений: 1
По умолчанию

Здравствуйте, все!
Помогите мне пожалуйста!
Завтра надо защищать лабу, я бьюсь над ней уже третий день.
Чувствую, что где-то ошибка, но где не понимаю.
В С++ делаю только первые шаги.
Вот мое задание:Дана действительная матрица A[i j], i, j=1, . . . n. Получить действительную матрицу B[i j], i, j=1…..n, значения элемента B[i j] определяются как среднее геометрическое максимального из элементов i- го столбца для строк, расположенных выше j-й строки (включительно) и минимального из элементов j-го столбца для строк, расположенных ниже i-й строки (включительно).
Galusy вне форума Ответить с цитированием
Старый 20.06.2010, 01:48   #8
UnknownVirus
 
Регистрация: 21.01.2010
Сообщений: 8
По умолчанию

Спасибо Огромное))
UnknownVirus вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
двумерный динамический массив amandra Общие вопросы Delphi 16 30.07.2013 22:56
Как правильно передать через ссылку двумерный динамический массив? amerhant Общие вопросы C/C++ 2 21.04.2010 23:50
Динамический двумерный массив кнопок. Вопрос i-cpp Общие вопросы C/C++ 4 25.01.2010 21:39
двумерный динамический массив с запросом к пользователю о кол-ве строк и столбцов? vasyapupkin Общие вопросы C/C++ 2 22.11.2009 17:37
Двумерный динамический массив IceExecutioner Общие вопросы Delphi 1 04.06.2009 08:41