С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
3 / 2 / 1
Регистрация: 19.09.2017
Сообщений: 54

Char в if

24.04.2020, 16:16. Показов 2329. Ответов 4

Студворк — интернет-сервис помощи студентам
Здравствуйте.

Появилась проблема в цикле с if. Тип данный Char, есть условие с данным типом, но оно не выполняется при вводе необходимых для выполнения условия данных. Подскажите, что не так?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <string.h>
#include <conio.h>
#include <math.h>
#include <iostream>
#include <iomanip>
#include <tchar.h>
#include <stdio.h>
using namespace std;
 
struct Sad
{
char nom[30];
char prof[30];
int kol;
int kolgr;
char noch[30];
};
 
int _tmain(int argc, _TCHAR* argv[])
{
Sad m[10];
int n,k;
cout <<"Enter kol-vo sadikov > " ;
cin>>n;
for (int i=0; i < n; i++) {
cout<<"Nomer: ";
cin >> setw(7)>>m[i].nom;
cout<<"Profile: ";
cin >> setw(9)>>m[i].prof;
cout<<"Kol-vo free slots: ";
cin >> m[i].kol;
cout<<"Kol-vo children in group: ";
cin >> m[i].kolgr;
cout<<"Overnight stay available: ";
cin >> setw(26)>>m[i].noch;
}
puts("\n");
cout <<"Nomer "<<"Profile "
<<"Kol-vo free slots ";
cout <<"Kol-vo children in group "<<"Overnight stay available\n"<<endl;
 
for (int i=0; i < n; i++) {
cout << setw(3)<< m[i].nom<<setw(9)<<m[i].prof
<<setw(12) <<m[i].kol;
cout << setw(23)<<m[i].kolgr<< setw(25)<<m[i].noch<<endl;
}
puts("\n");
 
for (int i = 0; i < n; i++) {
if ((m[i].nom=="Gos") && (m[i].prof=="Sport") && (m[i].kol>=2) && (m[i].noch=="Yes")) {
cout <<"Nomer sport gos sadika dlya 2-h detei s nochevkoy "<< m[i].nom << endl;
}
}
getch();
return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.04.2020, 16:16
Ответы с готовыми решениями:

Char unsigned char signed char длинна Кааак
Здравствуйте. char l = {0,0}; l = 0xff; Почему, меня, компилятор не посылает куда подальше. Нет он конечно...

Методы Char.IsLower Char.IsUpper Char.IsDigit
Доброго времени суток, месяц назад сделал задание: С помощью перебора всех символов строки, введенной в текстовое поле, вычислите...

char* to char или (char* запись в файл)
Привет всем! Вопрос: Как можно перевести char* в char или записать даные в файл с char*? Пробовал так: char *szBuffer =...

4
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
24.04.2020, 16:26
Лучший ответ Сообщение было отмечено ddellog как решение

Решение

strcmp() или string используй.
1
3 / 2 / 1
Регистрация: 19.09.2017
Сообщений: 54
24.04.2020, 16:28  [ТС]
Т.е. переводить массивы в string или strcmp()? По-другому никак не сделать?
0
Гвоздь Задиров
 Аватар для Folian
1718 / 1117 / 337
Регистрация: 25.01.2019
Сообщений: 2,940
24.04.2020, 16:29
Лучший ответ Сообщение было отмечено ddellog как решение

Решение

Цитата Сообщение от ddellog Посмотреть сообщение
C++
1
if ((m[i].nom=="Gos")
C++
1
if( !strcmp(m[i].nom, "Gos"))
и т.д.
1
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
24.04.2020, 16:52
Цитата Сообщение от ddellog Посмотреть сообщение
Т.е. переводить массивы в string или strcmp()?
Либо функцией сравнивай, либо используй string, который сравнивается через ==.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.04.2020, 16:52
Помогаю со студенческими работами здесь

Ошибка: "char *concat(char *,.)": невозможно преобразовать аргумент 1 из "const char [4]" в "char *"
делал задание, но на строке 36 строке пишет, что &quot;char *concat(char *,...)&quot;: невозможно преобразовать аргумент 1 из &quot;const char &quot;...

CONST_RETURN char *__cdecl strstr (const char *_Str, const char *_SubStr)
#include &lt;stdio.h&gt; #include &lt;string.h&gt; char tracks = { &quot;ya ostavil svoe serdce v harvardskom med univere&quot;, &quot;NewYork New York...

Assigning from int to char[10] from char to char[10]
добрый день, подскажите пожалуйста, в карточной колоде 52 карты, у меня есть массив структур где Value 1 2 3 ...13 suit c h d s ...

(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&
astxx::manager::connection::connection(std::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt; const&amp;, unsigned short); ...

Error C2664: sprintf: невозможно преобразовать параметр 1 из 'const char *' в 'char *'
error C2664: sprintf: невозможно преобразовать параметр 1 из 'const char *' в 'char *' void crpost(const statep &amp;struc1) { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru