[ 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 | 12
NapísalOffline : 08.05.2009 11:09 | Pomoc v programe C

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 | 3
NapísalOffline : 08.05.2009 11:56 | Pomoc v programe C

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 | 12
Napísal autor témyOffline : 08.05.2009 12:03 | Pomoc v programe C

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 | 6
NapísalOffline : 08.05.2009 15:27 | Pomoc v programe C

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 | 4
NapísalOffline : 09.05.2009 7:51 | Pomoc v programe C

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 | 3
NapísalOffline : 09.05.2009 16:01 | Pomoc v programe C

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…
 [ Príspevkov: 6 ] 


Pomoc v programe C



Podobné témy

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

Založky v programe...

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

1

407

01.10.2012 11:36

Fico

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

V akom programe??

v Webdesign

3

704

11.04.2008 0:08

shaggy

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

Otvoriť v programe...

v Operačné systémy Microsoft

12

1562

24.05.2011 19:48

MARTINKO99

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

ornamenty v kresliacom programe

v Grafické programy

8

10280

23.08.2008 18:57

capricorn7

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

Grafika v C++ programe

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

26

2329

27.08.2010 6:34

reDo

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

v akom programe(?) otvorit?

v Ovládače

2

627

02.11.2011 10:50

BlackDog600

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

429

12.06.2013 21:20

BX

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

Otvaranie suboru priamo v programe

v Delphi, Visual Basic

1

668

01.03.2009 17:06

Fico

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

Chyba v programe Pascal (Lazarus)

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

5

520

12.11.2016 19:15

BX

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

V ktorom programe vytvoriť tablo

v Ostatné programy

2

622

13.02.2016 12:25

Miso122

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

Excellovske tabulky vo vlastnom programe

v Delphi, Visual Basic

1

760

13.09.2009 11:20

mysacek

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

prehravanie zvuku v programe (delphi)

v Delphi, Visual Basic

3

598

09.11.2011 17:00

Fico

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

slovenske znaky v programe c

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

5

403

21.05.2013 19:26

igorLM

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

Hanojske veze v programe C

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

9

1782

25.12.2007 0:06

TrSek

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

Diakritika v programe PAWNO (a iných)

v Ostatné programy

0

606

06.09.2011 14:33

Winvik

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

PC na prácu v programe Catia

v PC zostavy

15

540

28.04.2014 17:19

Phanteom



© 2005 - 2024 PCforum, edited by JanoF