Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C (СИ) Удалить слова, в которых количество согласных максимально удалить слова, в которых кол-во согласных максимально код Си #include<stdio.h> #include<conio.h> #include<string.h> char sogl={'q', 'w', 'r', 't', 'p', 's','d', 'f', 'g', 'h','j', 'k', 'l', 'z', 'x', 'c', 'v','b','n','m'}; char A,B; int i,j,k=0,p,s,m=0; https://www.cyberforum.ru/ c-beginners/ thread326940.html Выходит за диапазон C (СИ)
ошибка появляется после компиляции при запуске, предыдущее всё работает, до места где нужно вводить с клавиатуры район(самое последнее), пишет :Run-Time Check Failure #2 - Stack around the variable 'd' was corrupted. #include <stdio.h> #include <string.h> #include <stdlib.h> #include <conio.h> FILE *y; struct school {int nomber; char raion; char famdir;
C (СИ) Распознать символ забоя Доброго всем времени суток, уважаемы епрограммисты! Вот решил освоить С по книге Кернигана и Ричи, а там задача: Напишите программу, копирующую вводимые символы в выходной поток с заменой символа табуляции на \t, символа забоя на \b и каждой обратной наклонной черты на \\. Это сделает видимыми все символы табуляции и забоя. Проблема, программа не отлавливает символ забоя. Прошу помочь: ... https://www.cyberforum.ru/ c-beginners/ thread326336.html C (СИ) Найти ошибку в коде https://www.cyberforum.ru/ c-beginners/ thread326271.html
Добрый день помогите, пожалуйста найти ошибку: #include <stdio.h> #include <stdlib.h> typedef struct list {int el; struct list *next;} list; void print_list (list*);
Определить минимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы C (СИ)
Дана целочисленная квадратная матрица. Опрделить: 1) сумму элементов в тех строках, которые не содержат отрицательных элементов. 2) минимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы. первую часть сделал, вроде как работает  #include <stdio.h> #include <stdlib.h> int main() { int x;
C (СИ) где ошибка! где ошибка! #include <stdio.h> #include <conio.h> #include <alloc.h> typedef struct EList{ char data; struct EList *next; } EList; EList* AddElem( EList*, char ); /* Включение элемента */ void AddElem2( EList*, char ); https://www.cyberforum.ru/ c-beginners/ thread325958.html
C (СИ) Описать процедуру PowerA234(A, B, C, D), вычисляющую вторую, третью и четвертую степень числа A задача на Си: Описать процедуру PowerA234(A, B, C, D), вычисляющую вторую, третью и четвертую степень числа A и возвращающую эти степени соответственно в переменных B, C и D (A — входной, B, C, D — выходные параметры; все параметры являются вещественными). С помощью этой процедуры найти вторую, третью и четвертую степень пяти данных чисел. как сделать задачу? ведь функция может возвращать... https://www.cyberforum.ru/ c-beginners/ thread325914.html Ошибка в программе для решения СЛАУ методом Гаусса C (СИ)
Здравствуйте помогите пожалуйста! Не могу найти ошибку в программе :( Алгоритм такой: среди элементов первого столбца матрицы выбираю ненулевой, перемещаю его на крайнее верхнее положение перестановкой строк и вычитаю получившуюся после перестановки первую строку из остальных строк, домножив её на величину, равную отношению первого элемента каждой из этих строк к первому элементу первой...
C (СИ) Умножение матриц произвольного размера https://www.cyberforum.ru/ c-beginners/ thread325683.html
Доброго времени суток.Нужно написать вот это Написать функцию для умножения матриц произвольного размера. размеры матриц передавать в параметрах и контролировать их корректность. Имеется вот это помогите сделать пожалуйста # include "stdafx.h" # include <stdio.h> # include <Windows.h> # include <conio.h> int result( int size11, int size12, int size21, int size22, int resultmas) { int i=0;...
C (СИ) Преобразовать файл, чтобы все строки имели длину, не превышающую длину наименьшей Здравствуйте! Помогите с алгоритмом задачи: Дан текстовый файл. Преобразовать его таким образом, чтобы все строки имели длину, не превышающую длину его наименьшей строки. Лишние символы при необходимости переносятся в строки, расположенные ниже. С такими структурами как списки, особенностью которых является то, что они помимо данных хранят еще и ссылку на след/пред элемент, особо не шарю. ... https://www.cyberforum.ru/ c-beginners/ thread325620.html
C (СИ) Создать случайный динамический массив и отсортировать по возрастанию
Помогите пожалуйста исправить ошибку! нужно создать случайный динамический массив и отсортировать по возрастанию(количество элементов вводится) #include <stdio.h> #include <conio.h> #include <alloc.h> #include <stdlib.h> void main() { int *p,d; int i,n,k; clrscr ();
C (СИ) Разработать программу модульной структуры, для создания и обработки внешнего файла https://www.cyberforum.ru/ c-beginners/ thread325315.html
Плз народ,помогите найти ошибку,уменя
935 / 760 / 299
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
28.06.2011, 07:32 0

Сортировка односвязного списка - C (СИ) - Ответ 1800166

28.06.2011, 07:32. Показов 16026. Ответов 4
Метки (Все метки)

Ответ

Вот написал, смотри сортировка по - алфавиту и по-дате от меньшего к большему, по-возрастанию.:cofee:
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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
#include <stdio.h>
#include <malloc.h>
#include <string.h>
#include <ctype.h>
 
#ifndef NULL
#define NULL  0
#endif
 
typedef const char*  cchar;
 
 
 struct account  {
   //   int visual;
   //   int number;
     char name[9];
     char surname[12];
  //   char nickname[9];
  //   char hometown[11];
  //   char residence[12];
     int  birthday;
     int  month;
     int  year;
     struct account *nextPtr;
 };
 
 // эту функцию - добавления в список данных  можешь удалить у тебя наверное свои есть
 void  add(struct account** plist, cchar iname, cchar surname, int day, int mon, int year) {
      if(! plist) {
          (*plist) = (struct account*) malloc(sizeof(struct account));
 
          strcpy((*plist)->name, iname);
          strcpy((*plist)->surname, surname);
          (*plist)->birthday = day;
          (*plist)->month    = mon;
          (*plist)->year     = year;
 
          (*plist)->nextPtr  = NULL;
      } else {
          struct account*  ptr = (struct account*) malloc(sizeof(struct account));
 
          strcpy(ptr->name, iname);
          strcpy(ptr->surname, surname);
          ptr->birthday = day;
          ptr->month    = mon;
          ptr->year     = year;
 
          ptr->nextPtr = *plist;
          *plist = ptr;
      }
 
 }
 
 
 
 long  timestamp(struct account* obj) {
        return (obj->month * 30) + (obj->year * 12 * 30) + obj->birthday;
 }
 
 
 typedef enum enum_sort{
    sort_family = 0, sort_date = 1
 };
 
 // сортировка по-фамилиям и по-дате
 void  sort_list(struct account*  plist, enum enum_sort type) {
        struct account*  first;
        struct account*  last;
        int    id, tmp;
        char   surname[12];
        char   name[9];
        while(1) {
               id = 0;
               first = plist;
               last  = plist->nextPtr;
               for( ; last != NULL ; last = last->nextPtr, first = first->nextPtr) {
 
                   if( (tolower(first->surname[0]) > tolower(last->surname[0]) && type == sort_family) ||
                        (timestamp(first) > timestamp(last) && type == sort_date) ) {
 
                          strcpy(surname, first->surname);
                          strcpy(first->surname, last->surname);
                          strcpy(last->surname, surname);
 
                          strcpy(name, first->name);
                          strcpy(first->name, last->name);
                          strcpy(last->name, name);
 
                          tmp               = first->birthday;
                          first->birthday = last->birthday;
                          last->birthday = tmp;
 
                          tmp          = first->month;
                          first->month = last->month;
                          last->month  = tmp;
 
                          tmp          = first->year;
                          first->year = last->year;
                          last->year  = tmp;
 
                          // по-такой аналогии отсортируй оставшиеся поля в структуре
 
                          id |= 1;
                   }
               }
               if(! id)
                   break;
 
        };
 }
 
 
 
 
int main(void)
{
     struct account* iter = NULL;
     struct account* list = NULL;
 
     // добавляем в список людей
     add(&list, "Sara", "Cobra", 1, 1, 2000);
     add(&list, "Bob", "Viking", 12, 2, 1999);
     add(&list, "Make", "Zero", 22, 1, 1991);
     add(&list, "Alex", "Zorro", 1, 2, 1990);
     add(&list, "Tom", "Alien", 1, 8, 1998);
     add(&list, "Jerry", "Based", 2, 7, 1989);
     add(&list, "Vasy", "Ultra", 3, 3, 1992);
     add(&list, "Warrior", "SWAT", 12, 4, 1993);
     add(&list, "Ninja", "Apache", 28, 11, 1994);
     add(&list, "Oscar", "York", 1, 1, 1982);
 
 
 
     // сортируем список по-фамилиям
     sort_list(list, sort_family);
 
 
     // выводим отсортированный список
     iter = list;
     while(iter != NULL) {
          printf("person: %s   %s\t date: %d.%d.%d\n", iter->name, iter->surname,
          iter->birthday, iter->month, iter->year);
         iter = iter->nextPtr;
     }
 
 
     // теперь сортируем по-дате
     sort_list(list, sort_date);
 
     puts("\n");
 
     // смотрим как отсортировалась по-дате
     iter = list;
     while(iter != NULL) {
          printf("person: %s   %s\t date: %d.%d.%d\n", iter->name, iter->surname,
          iter->birthday, iter->month, iter->year);
         iter = iter->nextPtr;
     }
 
 
 
     // чистим список
     while(list != NULL) {
          iter = list;
          list = list->nextPtr;
          free(iter);
          iter = NULL;
     }
     list = NULL;
 
   getchar();
   return 0;
}


Вернуться к обсуждению:
Сортировка односвязного списка C (СИ)
2
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.06.2011, 07:32
Готовые ответы и решения:

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

Сортировка динамического односвязного списка
Здравствуйте. Буду признателен за помощь в написании функции сортировки односвязного списка. ...

Сортировка односвязного списка (пузырьком)
нужно отсортировать информацию о поездах по номеру поезда. Сортировку нужно сделать изменением...

Сортировка односвязного динамического списка
Добрый вечер! Есть список и функции работы с ним(переходы к элементам, их удаление, поиск...

4
28.06.2011, 07:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.06.2011, 07:32
Помогаю со студенческими работами здесь

Удаление узла из односвязного списка. + Сортировка
Уважаемые, форумчане! Помогите разобраться с работой функции void DeleteNodeByIndex(NODE *head,int...

Не работает сортировка односвязного списка с считыванием из файла и выводом в файл
Написать программу, которая считывает из файла разделенные пробелом числа, игнорируя другие...

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

Реализация односвязного списка
Здравствуйте! Программа падает, судя по тестам, после команды list_clear, которая очищает все...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru