Форум программистов, компьютерный форум CyberForum.ru

Написать программу удаления книги из массива структур с введенным именем автора - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ функция вывода листьев с бинарного дерева http://www.cyberforum.ru/cpp-beginners/thread840553.html
Написал функцию вывода всего что есть в дереве. помогите переделать ее так чтобы она выводила только листья(без детей которые) void Node::Scan(void (*f)(void* n)) { f(this->Data); std::cout<<std::endl; if (this->Left != NULL) this->Left->Scan(f); if (this->Right != NULL) this->Right->Scan(f);
C++ Написать функцию раньше мейна, через void. потом в мейне её вызывать Помогите. Нужно написать функцию раньше мейна, через void. потом в мейне её вызывать #include <iostream.h> #include <cstdlib.h> #include <ctime.h> using namespace std; int main() { const int SIZE = 5; http://www.cyberforum.ru/cpp-beginners/thread840536.html
C++ Перевод из Паскаля в Си++
uses crt; var kr:array of real; br:array of string; n,i:integer; begin clrscr; write('Количество бригад n='); readln(n); writeln('Введите данные:'); for i:=1 to n do
Как называется и что означает такая форма объявления объекта (конструктор) C++
Конструктор явно вызывать нельзя, но эта форма записи у меня часто ассоциируется с "явным" вызовом конструктора. Как правильно это называть и объяснить человеку что происходит? MyClass obb; obb = MyClass(2); // прокомментировать
C++ Определите поезда, которые отправляются с 21 до 23 часов http://www.cyberforum.ru/cpp-beginners/thread840508.html
Определите поезда, которые отправляются с 21 до 23 ч. Информация о поездах (город назначения и время отправления) хранится в соответствующих массивах.
C++ Задача в С++ Составьте программу для решения следующих задач. Программы снабдите подробными комментариями. Подготовьте блок-схему алгоритма. 1. Дана последовательность натуральных чисел а1, а2,..., аn. Создать массив из четных чисел этой последовательности. Если таких чисел нет, то вывести сообщение об этом факте. 2. Сформируйте два массива, по k элементов в каждом, с помощью датчика случайных ... подробнее

Показать сообщение отдельно
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
17.04.2013, 19:10     Написать программу удаления книги из массива структур с введенным именем автора
if (p[i].avtor==A)
Это сравнение адресов первых элементов массивов, а не строк. Сравнивать C-строки можно только посимвольно(например, c помощью функции strcmp).
p[i].avtor==o;
p[i].book==o;
Здесь вы, как я понимаю, подразумевали присваивание(символ =), а не сравнение... Во-первых переменная o у вас ничем не инициализирована, а во-вторых, присвоить что-либо массиву используя его имя нельзя. Если вы хотите "обнулить" строки, то можно просто записать первым элементом символ '\0'(естественно, сами элементы массива p от этого никуда не "удаляться").
Цитата Сообщение от J_I Посмотреть сообщение
именно функцию УДАЛЕНИЯ мы ещё типа не проходили
Удалить из массива ничего нельзя. Весь процесс "удаления" сводится к сдвигу элементов массива влево и затеранию тем самым "удаляемых" элементов
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
#include <string.h>
#include <iostream.h>
#include <conio.h>
 
int main ()
{
    struct library
    {
        char author[30];
        char book[30];
    } p[5];
 
    int i, j;
    char author[30];
    int n = sizeof(p) / sizeof(library);
 
    for(i = 0; i < n; ++i)
    {
        cout << " Vvedi avtora ";
        cin >> p[i].author;
        cout << " Vvedi knigu ";
        cin >> p[i].book;
    }
 
    cout<<" Vvedi imya avtora ";
    cin >> author;
 
    //.....................
    for(i = 0, j = 0; i < n; ++i)
    {
        if(strcmp(p[i].author, author) != 0)
        {
            p[j] = p[i];
            ++j;
        }
    }
    n = j;
    //.....................
 
    for(i = 0; i < n; ++i)
        cout << p[i].author << " \t" << p[i].book << "\n";
    getch();
 
    return 0;
}
 
Текущее время: 10:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru