Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 6 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Pomoc v programe C

Registrovaný: 14.12.08
Prihlásený: 07.01.21
Príspevky: 34
Témy: 12
Príspevok NapísalOffline : 08.05.2009 11:09

Nazdar!
potreboval by som pomoc v programe
Za ulohu mam vytvorit program, ktory:
- nacita a zapise do suboru 10 struktur v tvare den,mesiac,rok,teplota(podprogram: vstup pocet struktur n a meno suboru)

- zrusi v subore pozadovany riadok

- vypise hodnoty celeho suboru

- udaje precita zo suboru a vypise usporiadane podla teploty

- vypise udaje o najteplejsom a najchladnejsom dni

a take nieco som zrobil viete mi pomoct prosim Vás? :loony:

Dakujem!


Kód:
#include <stdio.h>
#include <string.h>

typedef struct zaznam{
    char den[30];
    int mesiac;
    int rok;
    float teplota;
}ZAZNAM;

ZAZNAM zoznam[50];
void Den(int n);
void Mesiac(int n);
void Rok(int n);
void Teplota(int n);

 main(){
     int i=0;
     char c;
     int n;

    do
    {
       printf("%d, zaznam\n-------------\n",i+1);
       printf("Den: ");
       scanf("%s",zoznam[i].den);
       printf("Mesiac(cislo mesiaca): ");
       scanf("%s",&zoznam[i].mesiac);
       printf("Rok: ");
       scanf("%d",&zoznam[i].rok);
       print("Teplota: ");
       scanf("%f",&zoznam[i].teplota);
       getchar();
       printf("--------------\n");
       i++;
       printf("Chcete pridat dalsie zaznamy? (a/n)\n");
       c=getchar();
       } while (c=='a');
       n=i;
       
    Den(n);
    Mesiac(n);
    Rok(n);
    Teplota(n);
}

void Den(int n)
{
    ZAZNAM ciel[n],pom;
    int i,j;
    for (i=0; i<n; i++)
    {
   
         strcpy(ciel[i].den,zoznam[i].den);
         ciel[i].mesiac=zoznam[i].mesiac;
         ciel[i].rok=zoznam[i].rok;
         ciel[i].teplota=zoznam[i].teplota;
    }
   
    for (i=0; i<(n-1); i++)
        for (j=0; j<(n-1); j++)
            if (strcmp(ciel[j].den,ciel[j+1].den)>0)
            {
               strcpy(pom.den,ciel[j].den);
               pom.mesiac=ciel[j].mesiac;
               pom.rok=ciel[j].rok;
               pom.teplota=ciel[i].teplota;
               strcpy(ciel[j].den,ciel[j+1].den);
               ciel[j].mesiac=ciel[j+1].mesiac;
               ciel[j].rok=ciel[j+1].rok;
               ciel[j].teplota=ciel[j+1].teplota;
               strcpy(ciel[j+1].den,pom.den);
               ciel[j+1].mesiac=pom.mesiac;
               ciel[j+1].rok=pom.rok;
               ciel[j+1].teplota=pom.teplota;
            }
           
  printf( "\nZaznamy zotriedenie pola Den\-----------------\n");
 
  for (i=0;i<n;i++)
  {   
   printf("Den: %s\n",ciel[i].den);
   printf("Mesiac: %d\n",ciel[i].mesiac);
   printf("Rok: %5.2f\n",ciel[i].rok);
   printf("Teplota: %5.2\n",ciel[i].rok);
   printf("----------------------------\n");
   }
   getchar();
 }
 
 void Mesiac(int n)
 {
        ZAZNAM ciel[n],pom;
        int i,j;
        for (i=0; i<n; i++)
        {
              strcpy(ciel[i].den,zoznam[i].den);
              ciel[i].mesiac=zoznam[i].mesiac;
              ciel[i].rok=zoznam[i].rok;
              ciel[i].rok=zoznam[i].teplota;
        }
       
        for (i=0; i<(n-1); i++)
            for (j=0; j<(n-1); j++)
                if (ciel[j].mesiac>ciel[j+1].mesiac)
                 {
                       strcpy(pom.den,ciel[j].den);
                       pom.mesiac=ciel[j].mesiac;
                       pom.rok=ciel[j].rok;
                       pom.teplota=ciel[j].teplota;   
                       strcpy(ciel[j].den,ciel[j+1].den);
                       ciel[j].mesiac=ciel[j+1].mesiac;
                       ciel[j].rok=ciel[j+1].rok;
                       ciel[j].teplota=ciel[j+1].teplota;
                       strcpy(ciel[j+1].den,pom.den);
                       ciel[j+1].mesiac=pom.mesiac;
                       ciel[j+1].rok=pom.rok;
                       ciel[j+1].teplota=pom.teplota;
                 }   
   
           
  printf("\nZaznamy zotriedene pola Mesiac\n-----------------------------\n");
 
  for (i=0;i<n;i++)
  {
    printf("Den: %s\n",ciel[i].den);
    printf("Mesiac: %d\n",ciel[i].mesiac);
    printf("Rok: %5.2f\n", ciel[i].rok);
    printf("Teplota: %5.2f\n",ciel[i].teplota);
    printf("------------------------------\n");
  }
  getchar();
 
void Teplota(int n)
{
      ZAZNAM ciel[n],pom;
      int i,j;
      for(i=0; i<n; i++)
      {
              strcpy(ciel[i].den,zoznam[i].den);
              ciel[i].mesiac=zoznam[i].mesiac;
              ciel[i].rok=zoznam[i].rok;
              ciel[i].teplota=zoznam[i].teplota;
      }
     
      for (i=0; i<(n-1); i++)
         for (j=0; j<(n-1); j++)
            if (ciel[j].teplota>ciel[j+1].teplota)
            {
           
                strcpy(pom.den,ciel[j].den);
                pom.mesiac=ciel[j].mesiac;
                pom.rok=ciel[j].rok;
                pom.teplota=ciel[j].teplota;
                strcpy(ciel[j].den,ciel[j+1].den);
                ciel[j].mesiac=ciel[j+1].mesiac;
                ciel[j].rok=ciel[j+1].rok;
                ciel[j].teplota=ciel[j+1].teplota;
                strcpy(ciel[j+1].den,pom.den);
                ciel[j+1].mesiac=pom.mesiac;
                ciel[j+1].rok=pom.rok;
                ciel[j+1].teplota=pom.teplota;
              }
             
  printf("\nZaznamy zotriedene pola Teplota\n-----------------------------\n");
 
  for (i=0;i<n;i++)
  {
    printf("Den: %s\n",ciel[i].den);
    printf("Mesiac: %s\n",ciel[i].mesiac);
    printf("Rok: %5.2f\n", ciel[i].rok);
    printf("Teplota: %5.2\n",ciel[i].teplota);
    printf("------------------------------\n");
  }
  getchar();

}

     
       


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.08
Prihlásený: 15.05.15
Príspevky: 884
Témy: 3
Príspevok NapísalOffline : 08.05.2009 11:56

noff píše:
...viete mi pomoct prosim Vás? :loony:

a s cim konkretne? :rolleyes:







_________________
Empty your memory, with a free()… like a pointer!
If you cast a pointer to an integer,
it becomes the integer, if you cast a pointer to a struct, it becomes the struct…
The pointer can crash…, and can overflow…
Be a pointer my friend…
Offline

Užívateľ
Užívateľ
Pomoc v programe C

Registrovaný: 14.12.08
Prihlásený: 07.01.21
Príspevky: 34
Témy: 12
Príspevok Napísal autor témyOffline : 08.05.2009 12:03

tak to cele nechce fungovat :( a este stym zrusenim v subore pozadovany riadok...a vypisanie najteplejsie a najchladnesieho dna..skusal som to cez pomocne premenne ....


Offline

Užívateľ
Užívateľ
Pomoc v programe C

Registrovaný: 16.05.07
Prihlásený: 01.08.17
Príspevky: 837
Témy: 6
Príspevok NapísalOffline : 08.05.2009 15:27

Kód:
---------- Capture Output ----------
31: Call to function 'print' with no prototype in function main
Warning 45: Function should return a value in function main
Error E2313 49: Constant expression required in function Den
Error E2313 93: Constant expression required in function Mesiac
Error E2140 134: Declaration is not allowed here in function Mesiac
Error E2141 135: Declaration syntax error in function Mesiac
Error E2139 177: Declaration missing ; in function Mesiac
Error E2134 177: Compound statement missing } in function Mesiac
*** 6 errors in Compile ***

> Terminated with exit code 1.
tie ciselka pred : su cisla riadkov


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 21.06.07
Prihlásený: 06.05.13
Príspevky: 421
Témy: 4
Príspevok NapísalOffline : 09.05.2009 7:51

namiesto: main (){...

napis: void main (void){...

a na riadok 133 si daj zlozenu zatvaraciu zatvorku (nemas ukoncenu fciu Mesiac)

no a na riadkoch 49 a 93, kde mas:

ZAZNAM ciel[n] musis mat miesto n cislo !!!


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.08
Prihlásený: 15.05.15
Príspevky: 884
Témy: 3
Príspevok NapísalOffline : 09.05.2009 16:01

sento: lepsie bolo imho skor main(), kedze sa ako navratova hodnota implicitne doplni int, pricom main by aj int mala vracat, nie void. Podla standardov by sa to vsak malo pisat explicitne, taktiez aj void, ak nie su pouzite ziadne parametre
int main(void)







_________________
Empty your memory, with a free()… like a pointer!
If you cast a pointer to an integer,
it becomes the integer, if you cast a pointer to a struct, it becomes the struct…
The pointer can crash…, and can overflow…
Be a pointer my friend…
Odpovedať na tému [ Príspevkov: 6 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. V akom programe??

v Webdesign

3

637

11.04.2008 0:08

shaggy Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Založky v programe...

v Assembler, C, C++, Pascal, Java

1

367

01.10.2012 11:36

Fico Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Otvoriť v programe...

v Operačné systémy Microsoft

12

1523

24.05.2011 19:48

MARTINKO99 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Grafika v C++ programe

v Assembler, C, C++, Pascal, Java

26

2242

27.08.2010 6:34

reDo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. v akom programe(?) otvorit?

v Ovládače

2

568

02.11.2011 10:50

BlackDog600 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ornamenty v kresliacom programe

v Grafické programy

8

10236

23.08.2008 18:57

capricorn7 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Excellovske tabulky vo vlastnom programe

v Delphi, Visual Basic

1

726

13.09.2009 11:20

mysacek Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. prehravanie zvuku v programe (delphi)

v Delphi, Visual Basic

3

568

09.11.2011 17:00

Fico Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Hanojske veze v programe C

v Assembler, C, C++, Pascal, Java

9

1745

25.12.2007 0:06

TrSek Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. slovenske znaky v programe c

v Assembler, C, C++, Pascal, Java

5

365

21.05.2013 19:26

igorLM Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. V ktorom programe vytvoriť tablo

v Ostatné programy

2

546

13.02.2016 12:25

Miso122 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Problém s triedením v programe

v Assembler, C, C++, Pascal, Java

13

392

12.06.2013 21:20

BX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Otvaranie suboru priamo v programe

v Delphi, Visual Basic

1

636

01.03.2009 17:06

Fico Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Chyba v programe Pascal (Lazarus)

v Assembler, C, C++, Pascal, Java

5

485

12.11.2016 19:15

BX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Diakritika v programe PAWNO (a iných)

v Ostatné programy

0

548

06.09.2011 14:33

Winvik Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. PC na prácu v programe Catia

v PC zostavy

15

479

28.04.2014 17:19

Phanteom Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra