Cod sursa(job #1868184)

Utilizator stanciuioanrazvanIonut Stanciu stanciuioanrazvan Data 4 februarie 2017 17:39:39
Problema Sortare prin comparare Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.01 kb
#include <cstdio>

using namespace std;

FILE *g=fopen("algsort.out","w");

struct vector
{
    unsigned n;
    unsigned v[100];
};

vector citire_vector(char nume_fisier[20])
{
    vector a;
    int i;
    FILE *f;
    f=fopen(nume_fisier,"r");
    fscanf(f,"%d",&a.n);
    for(i=0;i<a.n;i++)
        fscanf(f,"%d",&a.v[i]);
    fclose(f);
    return a;
}

void afisare_vector(vector a)
{
    unsigned i;
    for(i=0;i<a.n;i++)
        fprintf(g,"%d ",a.v[i]);
    fprintf(g,"\n");
    fclose(g);
}

vector sort_prin_comp(vector a)
{
    unsigned i,s;
    unsigned aux;
    do
    {
        s=0;
        for(i=0;i<a.n;i++)
            if(a.v[i]>a.v[i+1])
            {
                aux=a.v[i];
                a.v[i]=a.v[i+1];
                a.v[i+1]=aux;
                s++;
            }
    }
    while(s>0);
    return a;
}

int main()
{
      vector a;
      a=citire_vector("algsort.in");
      a=sort_prin_comp(a);
      afisare_vector(a);
      return 0;
}