Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Ответ
 
Опции темы
Старый 06.12.2017, 23:07   #1
Андрій00,2
Пользователь
 
Регистрация: 24.10.2017
Сообщений: 34
Репутация: 10
По умолчанию [C++] Динамические структуры. Не выводит результат. Есть код.

РЕБЯТ,ПРИВЕТ.ПОЧЕМУ У МЕНЯ НЕ ВИВОДИТ РЕЗУЛЬТАТ
Цитата:
for(int i=0;i<1;i++)
{
if(s1.uspix[0]=='5')
{
printf("iмя студента:[%с]\nгрупа студента:[%с]",s1.name,s1.nomer);
}
ВОТ КОД:
Код:

#include <iostream>
#include<string.h>
#include<windows.h>
using namespace std;
	struct STUDENT
	{
		char *name;
		char *nomer;
		int uspix[5];	
	};

int main()
{
system("cls");
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
STUDENT s1;
STUDENT K[10];
  int i=0;
  while(i<1)
{
  	i++;
cout<<"Прізвище й ініціали:\n";
cin>>s1.name;
cout<<"номер групи:\n";
cin>>s1.nomer;
cout<<"успішність:\n";
cin>>s1.uspix[0];
cin>>s1.uspix[1];
cin>>s1.uspix[2];
cin>>s1.uspix[3];
cin>>s1.uspix[4];
cout<<endl;
}

for(int i=0;i<1;i++)
{
	if(s1.uspix[0]=='5')
	{
		printf("iмя студента:[%с]\nгрупа студента:[%с]",s1.name,s1.nomer);
	}
	
}
	return 0;
}

ПОМОГИТЕ ПЖ
Андрій00,2 вне форума   Ответить с цитированием
Старый 07.12.2017, 07:54   #2
ura_111
Профессионал
 
Регистрация: 14.05.2016
Сообщений: 1,792
Репутация: 354
По умолчанию

Сопоставь со своим (я правил не только там, где ты указал):
Код:

#include <iostream>
#include <windows.h>
using namespace std;

struct STUDENT
{
	char name[10];
	char nomer[10];
	int uspix[5];
};

int main()
{
	system("cls");
	SetConsoleCP(1251);
	SetConsoleOutputCP(1251);

	STUDENT s1;

	int i = 0;
	while (i<1)
	{
		i++;
		cout << "Прізвище й ініціали:\n";
		cin >> s1.name;
		cout << "номер групи:\n";
		cin >> s1.nomer;
		cout << "успішність:\n";
		cin >> s1.uspix[0];
		cin >> s1.uspix[1];
		cin >> s1.uspix[2];
		cin >> s1.uspix[3];
		cin >> s1.uspix[4];
		cout << endl;
	}
	for (int i = 0; i<1; i++)
	{
		if (s1.uspix[0] == 5)
		{
			cout << "iмя студента: " << s1.name << "\nгрупа студента: " << s1.nomer;
		}
	}
	cin >> s1.name; //чтобы консоль не закрывалась
	return 0;
}

___________________________________ ________________

У тебя было
Код:

#include<string.h>

а зачем оно было предусмотрено?

Для "string", но ты в программе не используешь переменные с таким типом...
Или ты хотел группу и имя именно в переменной такого типа хранить?
Тогда зачем оставил указатели на массив "char" (например "char *name")?

(дело в том, что указатели - это отдельная большая тема, и зачем ты туда полез не понятно.
Ты же совершенно не понимаешь, что значит конструкция типа "char *"?...
Я заменил на просто массивы "char")

Последний раз редактировалось ura_111; 07.12.2017 в 08:10.
ura_111 вне форума   Ответить с цитированием
Старый 07.12.2017, 14:13   #3
Андрій00,2
Пользователь
 
Регистрация: 24.10.2017
Сообщений: 34
Репутация: 10
По умолчанию

благадарю
Андрій00,2 вне форума   Ответить с цитированием
Старый 07.12.2017, 14:39   #4
Андрій00,2
Пользователь
 
Регистрация: 24.10.2017
Сообщений: 34
Репутация: 10
По умолчанию

подскажите пж,как сделать,щоб виводило все имена з 5,если і<5;
Цитата:
for (int i = 0; i<5; i++)
{
if (s1.uspix[0] == 5||4||s1.uspix[1] == 5||4||s1.uspix[2] == 5||4||s1.uspix[3] == 5||4||s1.uspix[4] == 5||4)
{

cout << "i&#236;&#255; &#241;&#242;&#243;&#228;&#229;&#237 ;&#242;&#224;: " << s1.name << "\n&#227;&#240;&#243;&#239;&#22 4;: " << s1.nomer;break;
}
оно мне виводит только последное имя,если есть 5,а нужно щоб все у кого есть 5
Андрій00,2 вне форума   Ответить с цитированием
Старый 07.12.2017, 15:09   #5
ura_111
Профессионал
 
Регистрация: 14.05.2016
Сообщений: 1,792
Репутация: 354
По умолчанию

"последнее имя" не может быть у тебя, потому что у тебя только один студент.

Ну попробуй так c "i<1":
Код:

	for (int i = 0; i<1; i++)
	{
		if (s1.uspix[0] == 5 || s1.uspix[1] == 5 || s1.uspix[2] == 5 || s1.uspix[3] == 5 || s1.uspix[4] == 5)
		{
			cout << "iмя студента: " << s1.name << "\nгрупа студента: " << s1.nomer;
		}
	}

ura_111 вне форума   Ответить с цитированием
Старый 07.12.2017, 15:26   #6
ura_111
Профессионал
 
Регистрация: 14.05.2016
Сообщений: 1,792
Репутация: 354
По умолчанию

Ты не заполняешь новых студента, а просто перезаписываешь информацию по одному студенту, который описан в "s1":


1.jpg


Если у тебя несколько студентов, тогда надо переходить к массиву студентов "s1[5]" (или можно просто название сделать "s[5]",
ведь "s1" означала 1-й студент???) и дальше плясать от этого...
Но, я знаю, что ты плохо знаешь теорию массивов, поэтому с ходу тебе не решить, - порешай сначала задачки из какого-нибудь учебника на массивы, а потом приступай к своей задачи. А если ты не хочешь работать, тогда можешь сделать так:
Код:

STUDENT s1,s2,s3,s4,s5;

для каждого студента своя переменная. И соответственно будешь работать без циклов, а просто:
Код:

cin >> s1.name;
cin >> s1.uspix[0];
........
........
cin >> s2.name;
cin >> s2.uspix[0];
........
........
cin >> s3.name;
cin >> s3.uspix[0];
........
........

Заполнение "s1" у тебя уже есть, а остальные - аналогично.
Ну и проверки соответственно s1,s2,s3,s4,s5 отдельно (без циклов) производится.

Не бойся экспериментировать с кодом.

Последний раз редактировалось ura_111; 07.12.2017 в 15:40.
ura_111 вне форума   Ответить с цитированием
Старый 07.12.2017, 16:45   #7
Андрій00,2
Пользователь
 
Регистрация: 24.10.2017
Сообщений: 34
Репутация: 10
По умолчанию

спасибо
Андрій00,2 вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не выводит адекватный результат laketych Общие вопросы C/C++ 2 29.09.2017 05:42
Не выводит результат Otar4ik Помощь студентам 4 06.09.2015 10:44
Помогите написать код на Delphi на тему динамические структуры данных Yustinka Помощь студентам 0 08.06.2015 00:25
Динамические структуры данных, списковые структуры (надо разобраться что делает программа) _4Alex4_ Помощь студентам 1 14.11.2012 07:39
Есть ли смысл создавать динамические данные внутри динамической структуры? Theseus Общие вопросы C/C++ 2 23.07.2012 12:37




10:23.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru