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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2013, 19:44   #1
spinogryz_ua
Форумчанин
 
Аватар для spinogryz_ua
 
Регистрация: 14.01.2012
Сообщений: 150
По умолчанию Поля (С++)

Вроде всё правильно написал, уже с корешом сидели думали - не додумались.

Вобщем вывожу я 2 поля int и char, потом из клавиатуры ввожу символ и если этот символ совпадает с 2-м полем тогда я вывожу первое поле (int). В противном случае "Символ не совпал".

Заранее спасибо.

Код:
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#include <stdio.h>
using namespace std;
struct bb 
{
  unsigned int p1;
  char p2;
};
bool b=true;  
char sp;
int main()
{
	
	srand((unsigned)time(NULL));
	bb ms[9];
	cout<<'\n'<<" #    Pole1   Pole2\n";
	for(int i=0;i<9;i++)
	{
		ms[i].p1=rand()%(1000)/100;
		ms[i].p2=rand()%(25)+65;
		cout<<'\n'<<" "<<i+1<<'\t'<<ms[i].p1<<'\t'<<ms[i].p2;
	}
	cout << "\n \n";
	scanf("%d",&sp);
	for(i=0;i<9;i++)
		if (sp==ms[i].p2)
		{
			printf("%d",ms[i].p1);
			b=false;
		}
	if (b==true)
		printf("Simvol ne spivpav \n");
}

Последний раз редактировалось spinogryz_ua; 18.03.2013 в 20:02.
spinogryz_ua вне форума Ответить с цитированием
Старый 18.03.2013, 20:36   #2
Bugrimov
C/C++, Java
Участник клуба
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Сообщений: 1,679
По умолчанию

Код:
cin >> sp;
или
Код:
scanf("%c", &sp);
Вместо
Код:
scanf("%d",&sp);
и обязательно объявите переменную i во втором цикле
Если помог, оставьте отзыв.... мелочь а приятно
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!
Bugrimov вне форума Ответить с цитированием
Старый 18.03.2013, 21:28   #3
spinogryz_ua
Форумчанин
 
Аватар для spinogryz_ua
 
Регистрация: 14.01.2012
Сообщений: 150
По умолчанию

Нет, всёравно пишет мне в любом случае "символ не совпал".
spinogryz_ua вне форума Ответить с цитированием
Старый 18.03.2013, 21:32   #4
Bugrimov
C/C++, Java
Участник клуба
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Сообщений: 1,679
По умолчанию

А вы вводите заглавную латинскую букву???
У Вас массив структур заполняется случайными числами и заглавными латинскими буквами...
Вот проверяемый мною код...
Код:
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#include <stdio.h>
using namespace std;
struct bb 
{
  unsigned int p1;
  char p2;
};
bool b=true;  
char sp;
int main()
{
	
	srand((unsigned)time(NULL));
	bb ms[9];
	cout<<'\n'<<" #    Pole1   Pole2\n";
	for(int i=0;i<9;i++)
	{
		ms[i].p1=rand()%(1000)/100;
		ms[i].p2=rand()%(25)+65;
		cout<<'\n'<<" "<<i+1<<'\t'<<ms[i].p1<<'\t'<<ms[i].p2;
	}
	cout << "\n \n";
	scanf("%c",&sp);
	for(int i=0;i<9;i++)
		if (sp==ms[i].p2)
		{
			printf("%d",ms[i].p1);
			b=false;
		}
	if (b==true)
		printf("Simvol ne spivpav \n");
}
Получилось?
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!

Последний раз редактировалось Bugrimov; 18.03.2013 в 21:50.
Bugrimov вне форума Ответить с цитированием
Старый 19.03.2013, 15:57   #5
spinogryz_ua
Форумчанин
 
Аватар для spinogryz_ua
 
Регистрация: 14.01.2012
Сообщений: 150
По умолчанию

Ух, наконец то а в чём то разница я не могу понять?
spinogryz_ua вне форума Ответить с цитированием
Старый 19.03.2013, 16:08   #6
Bugrimov
C/C++, Java
Участник клуба
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Сообщений: 1,679
По умолчанию

Разница в:
Код:
scanf("%c",&sp);
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!
Bugrimov вне форума Ответить с цитированием
Старый 19.03.2013, 16:47   #7
spinogryz_ua
Форумчанин
 
Аватар для spinogryz_ua
 
Регистрация: 14.01.2012
Сообщений: 150
По умолчанию

Но я ведь такой вариант тоже пробовал.
spinogryz_ua вне форума Ответить с цитированием
Старый 19.03.2013, 19:23   #8
Bugrimov
C/C++, Java
Участник клуба
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Сообщений: 1,679
По умолчанию

Хорошо, ни Вам ни мне
Код:
cin >> sp;
Отладчик запускали, что говорит???
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!
Bugrimov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поля Leks123 Помощь студентам 3 07.12.2011 15:23
Измененние цвета фона поля (поля со списком) при редактировании TimRus Microsoft Office Access 2 17.05.2010 21:56
получить данные поля исходя из lookup-поля malayka Помощь студентам 0 21.04.2010 21:19
как получить значение поля грид на основе значения другого lookUp поля malayka БД в Delphi 0 21.04.2010 19:06
Выявление одинаковости значений поля в одной талице по значению поля в другой nikmay SQL, базы данных 4 13.08.2009 12:51