|
|
|
|
|
e-learning
Probajte demo
DL podrška
studentski servis
Login
Gost nalog
prijava za upis
Online prijava
Dokumentacija za upis
 

Početna »
  


  PRETRAGA
  PRIJAVA
Prijavite se za newsletter i slaćemo vam najnovije vesti i aktuelnosti sa ITS-a
  PROGRAMSKI JEZIK C - PRIMER 064

///////////////////////////////////////////////////////////////////////
// ITS - Visoka Škola Strukovnih Studija Za Informacione Tehnologije
//
http://www.its.edu.rs/
// Predmet: Osnovi Programiranja - Programski jezik C
//
// Primer: Program za sortiranje u alfabetskom redosledu ucitanog
//            niza stringova i odredjivanje duzine sortiranih stringova.
///////////////////////////////////////////////////////////////////////

#include <stdio.h>
#include <string.h>

#define DUZINA 80
#define MAX 50
#define STOP ""

void sortiraj( char *st[], int d[],int n);

main()
{
  char str[MAX][DUZINA];
  char *pokstr[MAX]; // niz pokazivaca
  int duz[MAX];
  int i=0,j;
  printf("Unesite do %d stringova za sortiranje, zatim praznu liniju pa <ENTER> za kraj: \n", MAX);
  while(gets(str[i])!= NULL && strcmp(str[i],STOP)!=0 && i<MAX)
  {
    pokstr[i] = str[i];
    duz[i] = strlen(str[i]);
    i++;
  }
  sortiraj(pokstr,duz,i);
  // stampanje sortiranog niza
  printf("Sortirani stringovi izgledaju:\n");
  for(j=0;j<i; j++)
  {
    printf("String[%d]:",j);
    puts(pokstr[j]);
  }
  // stampanje duzina sortiranog niza
  printf("Duzine sortiranih stringova su:\n");
  for(j=0;j<i; j++)
  {
    printf("String[%d]:",j);
    printf("%d\n
", duz[j]);
  }
}
//funkcija za sortiranje
void sortiraj(char *st[],int d[], int n)
{
  char *pom;
  int i,j,m;
  for(i=0;i<n-1;i++)
  {
    for(j=i+1;j<n;j++)
    {
      if(strcmp(st[i],st[j])>0)
      {
        // zamena mesta
        pom = st[i];
        st[i] = st[j];
        st[j] = pom;
       
// zamena duzine
        m = d[i];
        d[i] = d[j];
        d[j] = m;
      }
    }
  }
}

 



Broj mesta je ograničen! Prijavite se na vreme.