С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 09.11.2022
Сообщений: 31
1

Поиск в односвязном списке

05.05.2023, 13:48. Показов 349. Ответов 1

Author24 — интернет-сервис помощи студентам
Задание: Осуществить поиск элемента списка по фамилии сотрудника; по возрасту. Информация для поиска запрашивается у пользователя.

Частично мой код с реализацией этого задания:
C++
1
2
3
4
5
6
7
8
9
10
11
12
#pragma once
#include "Sotrudnik.h"
#include "node.h"
class LinkedList
{
    Node* Top; 
public:
    LinkedList() :Top(nullptr) {};
    ~LinkedList();
    void SearchBySurname(char* s);
    void SearchByAge(int k);
};
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
void LinkedList::SearchBySurname(char* s)
{
    setlocale(LC_ALL, "Rus");
    Node* tmp = Top;
    while (tmp != nullptr)
    {
        if (strcmp(tmp->data.surname, s))
        {
            cout << setw(20) << tmp->data.surname;
            cout << setw(20) << tmp->data.pos;
            cout << setw(10) << tmp->data.age;
            cout << setw(10) << tmp->data.exp;
            cout << setw(10) << tmp->data.sal << endl;
        }
        tmp = tmp->next;
    }
}
 
void LinkedList::SearchByAge(int k)
{
    setlocale(LC_ALL, "Rus");
    Node* tmp = Top;
    while (tmp != nullptr)
    {
        if (tmp->data.age == k)
        {
            cout << setw(20) << tmp->data.surname;
            cout << setw(20) << tmp->data.pos;
            cout << setw(10) << tmp->data.age;
            cout << setw(10) << tmp->data.exp;
            cout << setw(10) << tmp->data.sal << endl;
        }
        tmp = tmp->next;
    }
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void SearchInListBySurname(LinkedList *list)
{
    system("cls");
    char* s;
    cout << "Введите фамилию: "; 
    cin >> s;
    cout << "Работники с фамилией " << s << ":" << endl;
    list->SearchBySurname(s);
 
}
 
void SearchInListByAge(LinkedList* list)
{
    system("cls");
    int k;
    cout << "Введите возраст: ";
    cin >> k;
    cout << "Работники возраста " << k << ":" << endl;
    list->SearchByAge(k);
}
Часть с поиском по возрасту работает, а по фамилии нет - ошибка c4700. Пробовал s определять и как char, и как char*. Помогите пожалуйста, как исправить
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.05.2023, 13:48
Ответы с готовыми решениями:

Поиск в односвязном списке
Добрый всем день. Знаю что тема неоднократно поднималась. Помогите реализовать поиск по...

Поиск цикла в односвязном списке
есть односвязный список struct List { int value; struct List *next; } _list; ...

Поиск и удаление в односвязном списке
Помогите с удаление элемента по ключу(номеру этажа). При удалении 2-го элемента в списке, удаляется...

Поиск по содержимому в односвязном списке
Проблема в поиске по содержимому, выводит ерунду, но при этом все верно находит. К примеру есть 3...

1
79 / 60 / 22
Регистрация: 14.12.2022
Сообщений: 240
05.05.2023, 13:53 2
Лучший ответ Сообщение было отмечено xd000 как решение

Решение

самый быстрый и тупой способ поправить:
C++
1
2
3
4
5
6
7
8
9
10
void SearchInListBySurname(LinkedList *list)
{
    system("cls");
    char s[128];
    cout << "Введите фамилию: "; 
    cin >> s;
    cout << "Работники с фамилией " << s << ":" << endl;
    list->SearchBySurname(s);
 
}
1
05.05.2023, 13:53
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.05.2023, 13:53
Помогаю со студенческими работами здесь

поиск элемента по значению в односвязном списке
накидайте примеров информация запрашивается у пользователя

Поиск покупателя по имени в односвязном списке
Добрый день. Я не могу понять, как мне реализовать функцию поиска покупателя по имени, помогите...

Поиск нужного элемента в односвязном списке
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; struct Node { int data; Node*...

Поиск максимального элемента между соседями в односвязном списке
Дан список из n целых чисел a0, a1, ... , an−1 (|ai|&lt;=100). Выдать на экран те ai (1 &lt;= i &lt; n − 1),...

Ошибка в односвязном списке
#include&lt;iostream&gt; #include&lt;clocale&gt; using namespace std; #define DEBUG class Monom{...

Remove_at() в односвязном списке
Привет. Не пойму как в данном(рабочем) коде, при удалении элемента посреди списка, предыдущему...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
Как написать микросервис на Go/Golang с Kafka и GitHub CI/CD
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C# с RabbitMQ, CQRS и CI/CD
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
Как создать игру "Танчики" на Unity3d и C#
InfoMaster 14.01.2025
Разработка игр – это увлекательный процесс, сочетающий в себе творчество и технические навыки. В этой статье мы рассмотрим создание классической игры "Танчики" с использованием Unity3D и языка. . .
Организую платный онлайн микро-курс по доработке Android-клиента Telegram
_Ivana 14.01.2025
Официальная версия и распространенные форки не полностью устраивают? Сделай свою кастомную версию клиента! 4 занятия по 2 часа (2 недели пн, ср 19:00-21:00 по Москве). Первое вводное занятие. . .
Как создать приложение для фитнеса для iOS/iPhone на Kotlin
InfoMaster 14.01.2025
Создание собственного фитнес-приложения — это не только захватывающий, но и полезный процесс, ведь оно может стать вашим верным помощником на пути к здоровому и активному образу жизни. В современных. . .
Как создать приложение магазина для iOS/iPhone на Swift
InfoMaster 14.01.2025
Введение в разработку iOS-приложений Разработка приложений для iPhone и других устройств на базе iOS открывает огромные возможности для создания инновационных мобильных решений. В данной статье мы. . .
Это работает. Скорость асинхронной логики велика. Вопрос видимо останется в стабильности. Плата - огонь!
Hrethgir 13.01.2025
По прошлому проекту в Logisim Evolution https:/ / www. cyberforum. ru/ blogs/ 223907/ blog8781. html прилагаю файл архива проекта в Gowin Eda. Восьмибитный счётчик из сумматора+ генератор сигнала. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru