|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
03.11.2011, 11:43 | #1 |
Пользователь
Регистрация: 03.11.2011
Сообщений: 13
|
строки
помогите решить на языке Си:
Задана строка, содержащая целые числа(максимум 15 чисел). Упорядочить целые числа в строке по возрастанию. |
03.11.2011, 11:49 | #2 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Какие алгоритмы сортировки Вы знаете?
|
03.11.2011, 12:00 | #3 |
Пользователь
Регистрация: 03.11.2011
Сообщений: 13
|
вот программа, написанная мною! Но она почему-то не идёт на языке Си! Помогите найти ошибку!
#pragma argsused #include <stdio.h> void sort1(unsigned int m, unsigned int *b, unsigned int *e){ unsigned int *b1, *e1, m1; b1=b; e1=e; while(b1<e1){ if (*b1&m) if (*e1&m) e1--; |
03.11.2011, 12:03 | #4 |
Пользователь
Регистрация: 03.11.2011
Сообщений: 13
|
вот программа, написанная мною! Но она почему-то не идет на языке Си:
#pragma argsused #include <stdio.h> int main(int argc, char* argv[]) { int i,j,str[15]; for (i=0;i<sizeof str/sizeof(int);i++) scanf("%d",str+i); for (i=0;i<sizeof str/sizeof(int)-1;i++) for (j=i;i<sizeof str/sizeof(int);i++) if (str[j]<str[i]){ int w; w=str[i]; str[i]=str[j]; str[j]=w; } for(i=0;i<sizeof str/sizeof(int);i++) printf("%d",str[i]); getch(); } |
03.11.2011, 12:07 | #5 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
"Не идёт" - это не компилируется? Редкий компилятор говорит "пошёл нафиг" без объяснения причин. Обычно есть сообщение об ошибке, и даже с указанием строки, на которой ошибка произошла.
Кроме того, лично я затрудняюсь понять приведённый (в третьем сообщении) код - нельзя ли его привести теперь уже заключённым в тег CODE и с комментариями? Upd: Э-э-э, а что было в предыдущем сообщении? Последний раз редактировалось Abstraction; 03.11.2011 в 12:09. Причина: появилось ещё одно сообщение от автора |
03.11.2011, 12:14 | #6 |
Пользователь
Регистрация: 03.11.2011
Сообщений: 13
|
не смотрите сообщение 3!
Программа в сообщении 4 верная, но выводит не такой результат! Вот программа: #pragma argsused #include <stdio.h> int main(int argc, char* argv[]) { int i,j,str[15]; for (i=0;i<sizeof str/sizeof(int);i++) scanf("%d",str+i); for (i=0;i<sizeof str/sizeof(int)-1;i++) for (j=i;i<sizeof str/sizeof(int);i++) if (str[j]<str[i]){ int w; w=str[i]; str[i]=str[j]; str[j]=w; } for(i=0;i<sizeof str/sizeof(int);i++) printf("%d",str[i]); getch(); } |
03.11.2011, 13:00 | #7 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
0) Тег CODE.
1) Комментарии. 2) Если лень делать первое и второе, то просто проследите внимательно, где у Вас в коде меняется j. |
03.11.2011, 13:01 | #8 |
C++,DirectX/OpenGL
Форумчанин
Регистрация: 09.01.2011
Сообщений: 422
|
Код:
Код:
Последний раз редактировалось An1ka; 03.11.2011 в 13:04. |
03.11.2011, 16:53 | #9 |
Пользователь
Регистрация: 03.11.2011
Сообщений: 13
|
программа так тоже не работает!
|
03.11.2011, 17:06 | #10 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Сделайте функцию "вывод массива" и дёргайте её на каждой итерации внешнего цикла сортировки, например. Ну, или отладчик в зубы.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сделать в гриде строки выше, чтобы не растягивать строки до бесконечности | kris__tina | БД в Delphi | 1 | 09.06.2011 15:31 |
Даны строки S и S0. Удалить из строки S все подстроки, совпадающие с S0 . Если совпадающих подстрок нет, | Шпунюся | Помощь студентам | 1 | 16.12.2010 21:02 |
Создание пустой строки и копирование в неё содержимое предыдущей строки | Gvaridos | Microsoft Office Excel | 2 | 29.10.2010 13:33 |
Определять максимальную длину той части строки s, которая не содержит символы из строки s1. | Александе еть я | Общие вопросы C/C++ | 5 | 13.04.2010 20:54 |
Перенести символа с начала строки в место перед запятой этой же строки. | Zhiltsov | Microsoft Office Excel | 4 | 05.06.2009 13:10 |