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

Цикл со смещением на 1 символ

24.03.2010, 16:29. Показов 1527. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите со следующим заданием пожалуйста:

Написать программу, которая циклически выводит ФИО со смещением на один символ (бегущая строка):
Цикл со смещением на 1 символ


Использовать динамические структуры данных linked list

Язык только С
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.03.2010, 16:29
Ответы с готовыми решениями:

Цикл считывания со смещением
Как выглядит цикл в котором считываются данные из массива со смещением в 27 байт от начала, в...

Циклически вывести ФИО со смещением на один символ (бегущая строка)
Помогите разобраться. Есть следующее задание: Написать программу, которая циклически выводит ФИО...

Строка: Написать программу, которая циклически выводит ФИО со смещением на один символ
Написать программу. Пользователь вводит строчку. Программы циклически выводит на экран со смещением...

Как удалить последний символ через цикл?
Как реализовать код ниже, что б после 9 не выводилось запятая? int i = 0; do {...

6
1 / 1 / 0
Регистрация: 26.12.2009
Сообщений: 47
25.03.2010, 14:42  [ТС] 2
Ну что неужели никого нет кто может помочь

Добавлено через 6 часов 42 минуты
Вот что-то подобное, но никак не могу разобраться помогите преобразовать

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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#include <stdio.h>
#include <stdlib.h>
 
/*
 * Структура Element предназначена для хранения значения
 * элемента связного списка и указателя на следующий элемент.
 */
struct SElement
{
    int value; // Значение элемента списка
    struct SElement* next; // Указатель на следующий элемент
} typedef Element;
 
/*
 * Структура LinkedList является реализацией односвязного
 * списка. Содержит указатели на первый и последний элементы
 * списка.
 */
struct
{
    Element* first; // Первый элемент списка
    Element* last; // Последний элемент списка
} typedef LinkedList;
 
// Создание списка
LinkedList* createLinkedList();
// Удаление списка (очистка памяти)
void deleteLinkedList(LinkedList* list);
// Добавление элемента конец списка
void add(LinkedList* list, int value);
// Задание элемента списка с индексом index
void set(LinkedList* list, int index, int value);
// Получение элемента списка по индексу index
int get(LinkedList* list, int index);
 
LinkedList* createLinkedList()
{
    LinkedList* list = malloc(sizeof(LinkedList));
    return list;
}
 
void deleteLinkedList(LinkedList* list)
{
    Element* element = list->first;
    while (element != NULL)
    {
        Element* next = element->next;
        free(element);
        element = next;
    }
}
 
void add(LinkedList* list, int value)
{
    Element* newElement = malloc(sizeof(Element));
    newElement->value = value;
    if (newElement)
    {
        if (list->first == NULL)
        {
            list->first = newElement;
            list->last = newElement;
        }
        else
        {
            list->last->next = newElement;
            list->last = newElement;
        }
    }
}
 
void set(LinkedList* list, int index, int value)
{
    Element* element = list->first;
    int i;
    for (i=0; i<index; i++)
    {
        element = element->next;
    }
    element->value = value;
}
 
int get(LinkedList* list, int index)
{
    Element* element = list->first;
    int i;
    for (i=0; i<index; i++)
    {
        element = element->next;
    }
    return element->value;
}
 
int main(void)
{
    LinkedList* list = createLinkedList();
    add(list, 131);
    add(list, 132);
    add(list, 133);
    add(list, 134);
    set(list, 1, 47);
    printf("list[1] = %d\n", get(list, 1));
    printf("list[3] = %d\n", get(list, 3));
    deleteLinkedList(list);
    fflush(stdout);
    return EXIT_SUCCESS;
}
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12460 / 7484 / 1754
Регистрация: 25.07.2009
Сообщений: 13,762
25.03.2010, 16:10 3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <string.h>
 
#define MAX_STR 64
 
int main(void){
    char str[MAX_STR] = "Vasya Pupkin ", buf[MAX_STR] = { 0 };
    int i, len;
    len = strlen(str);
    for ( i = 0; i < len; ++i ){
        strncpy(buf, str + i, len - i);
        buf[len - i] = 0;
        strncat(buf, str, i);
        buf[len] = 0;
        printf("%s\n", buf);
    }
    printf("%s\n", str);
    return 0;
}
0
1 / 1 / 0
Регистрация: 26.12.2009
Сообщений: 47
25.03.2010, 16:23  [ТС] 4
А где тут Linked list? Надо ведь это сделать на его основе
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12460 / 7484 / 1754
Регистрация: 25.07.2009
Сообщений: 13,762
25.03.2010, 16:35 5
Цитата Сообщение от fantazer333 Посмотреть сообщение
А где тут Linked list?
Нету ни одного!
Цитата Сообщение от fantazer333 Посмотреть сообщение
Надо ведь это сделать на его основе
А так проще... Если задача была - изучить эти самые динамические связанные списки, то пример крайне неудачный.
0
1 / 1 / 0
Регистрация: 26.12.2009
Сообщений: 47
25.03.2010, 16:39  [ТС] 6
А можете подсказать или показать более удачный пример с Linked list для этого задания?
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12460 / 7484 / 1754
Регистрация: 25.07.2009
Сообщений: 13,762
25.03.2010, 16:57 7
fantazer333, не знаю, на сколько удачный, но вот пример односвязного списка
0
25.03.2010, 16:57
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.03.2010, 16:57
Помогаю со студенческими работами здесь

Оператор READ отказывается считывать символ(цикл)
PROGRAM TelNum(INPUT, OUTPUT); VAR Ch: CHAR; B: BOOLEAN; BEGIN ASSIGN(F, 'F.tel'); B...

Как можно ввести с клавиатуры символ не прерывая цикл в программе
Ввод символа. Здравствуйте. У меня вопрос о том, как можно ввести с клавиатуры символ не прерывая...

Почему цикл с условием EOF читает последний символ 2 раза?
Данная программа читает двоичную строку и выводит длину самой продолжительной цепочки нулей....

Создать программу по всем 3 видам циклов...цикл с параметром,цикл с условием,цикл,и цикл с предусловием...
Найти сумму чисел 1 в квадрате до 10 c квадрате...операцию возведению в степень не использовать...

Цикл: каждый символ символьного массива вывести на новой строке консоли
Доброго всем здравия, споткнулся на ровном месте, цикл do while отказывается делать, то что я хочу...

В строке, на первый символ которой указывает указатель s, заменить все буквы ‘a’ на ‘b’ (написать цикл)
Можно с пояснениями.


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru