Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > Не разберусь с сортировкой(метод пузырька)


Автор: N1ko 23.7.2008, 12:17
Вот собствено обычный метод сортировки целых чисел методом пузырька. Не могу понять, почему f[0] не присваивается никакого значения, а всё начинает присваеваться с f[1]. 

Вот код.
Код

#include "stdafx.h"
#include <iostream>

int main()
{
char f[10];
std::cin>>f;

int d,i,j,n;
n=strlen(f);

    
    for(i=0;i<=n-1;i++)
    {
        for(j=i+1;j<=n;j++)
        {
          if(f[i]>f[j])
          {
          d=f[i];
          f[i]=f[j];
          f[j]=d;
          }
        }
    
}
    std::cout<<f[0]; //Вот тут программа говорит что в f[0] ничего не было записано 
    std::cin.get();
    std::cin.get();
return 0;

Помогите плиз.
}

Автор: Демидрол 23.7.2008, 12:45
хм.а char - это целые числа??? smile
а прога показывает f[10] ? Или последнее число только в f[9]?
Если показывает,то можно сделать вывод о том,что заполнение массива начинается не с f[0], а с f[1]. нелогично ни разу,но...

Автор: Annihilator 23.7.2008, 12:55
Давай как-нибудь вот так
Код

int main(int argc, char* argv[])
{
    int p[] = {11,3,6,5,9,2,4,0,1,3};
    int temp;
    for (int i=0;i<10;i++)
    {
        for (int j=0;j<9;j++)
            if (p[j]>p[j+1])
            {
                temp=p[j];
                p[j]=p[j+1];
                p[j+1]=temp;
            }
    }
    return 0;
}

Автор: DRUID3 23.7.2008, 13:00
 Тема названа неверно. smile  Причем тут сортировка? Что-то криво заполняете/читаете массив.

Автор: Mayk 23.7.2008, 13:06
Цитата(N1ko @  23.7.2008,  16:17 Найти цитируемый пост)
Вот код.

f[n] = 0 ибо это си-строки.

Добавлено через 1 минуту и 14 секунд
Цитата(N1ko @  23.7.2008,  16:17 Найти цитируемый пост)
    for(i=0;i<=n-1;i++)
    {
        for(j=i+1;j<=n;j++)
        {

соответственно надо заменить на
Цитата(N1ko @  23.7.2008,  16:17 Найти цитируемый пост)
    for(i=0;i<=n-2;i++)
    {
        for(j=i+1;j<=n-1;j++)
        {


Автор: N1ko 23.7.2008, 13:58
Mayk,спасибо. Теперь разобрался.Тему клоуз.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)