Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.08.2009, 21:59   #1
whyer
 
Регистрация: 08.08.2009
Сообщений: 4
По умолчанию Проблемы с программированием на C

Здравствуйте, недавно я начал изучать C и столкнулся с такой проблемой. Я программирую в C:B. Значит, попробовал написать программу для пузырьковой сортировки массива. Получилось вот что:

Цитата:
#include <stdio.h>
main()
{
int a[5]={0,4,3,2,6};
int i, k, l, n;

for (i=0; i<=3; i++)
{
k=i+1;
for (k; k<=4; i++)
if (a[i]<a[k])
{
l=a[i];
a[i]=a[k];
a[k]=l;

}
}
for (i=0; i<=4; i++)
printf("%d ", a[i]);
}
Проблема в том, что программа компилируется, но при её запуске я получаю:
1) В Linux - Segmentation fault.
2) В Windows - зависание.
Возможно в алгоритме сортировки есть ошибки, но меня прежде всего интересует каой фрагмент программы вызывает данную ошибку, как исправить и как не повторять вновь. Заранее спасибо.
whyer вне форума Ответить с цитированием
Старый 08.08.2009, 22:01   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Код:
for (k; k<=4; i++)
Счетчик k, а увеличиваете i.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 08.08.2009, 22:06   #3
whyer
 
Регистрация: 08.08.2009
Сообщений: 4
По умолчанию

Sazary, спасибо. Пора лечиться мне. Я так понял Segmentation fault возникает при обращении в некуда, верно,
whyer вне форума Ответить с цитированием
Старый 08.08.2009, 22:12   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от whyer
Я так понял Segmentation fault возникает при обращении в некуда, верно,
К сожалению, линукс не стоит, а в винде при таких ошибках сталкивался только с зависанием. Вроде, программа тут к "никуда" нигде не обращается )
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 08.08.2009, 22:17   #5
whyer
 
Регистрация: 08.08.2009
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Sazary Посмотреть сообщение
К сожалению, линукс не стоит, а в винде при таких ошибках сталкивался только с зависанием. Вроде, программа тут к "никуда" нигде не обращается )
Ну да, вы правы. Я вроде понял почему зависание происходит. Спасибо за помощь.
whyer вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
нужна помощь с программированием микроконтроллера в Ассемблере quart Фриланс 9 10.02.2011 14:49
Ребята, помогите с программированием цикла((( krale4ka Microsoft Office Excel 4 06.06.2009 17:06
Помогу с программированием Lokuson Фриланс 1 25.01.2009 11:34
Твердо решил занятся программированием vitis Помощь студентам 2 28.10.2008 21:51