Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 42 odgovora
  • 10.312 pregleda

Najnovija ↓

Ispravka kodova u C? 06.12.2011. u 11:13 · pre 181 mesec #1
U VC++ 2010 iskucam kod,promenim extenziju u .c,kad se otvori konzola unesem tekst,pritisnem enter i ne vrati mi nikakvo resenje,vec se kursor jednostavno prebaci u novi red??
Jel moze neko da mi kaze o cemu se radi?

#include<stdio.h>
#define IN 1
#define OUT 0
main(){
int c,nl,nw,nc,state;

nl=nw=nc=0;
state = OUT;
while((c=getchar())!=EOF){
++nc;
if(c=='\n') ++nl;
if(c==' ' || c=='\n' || c=='\t')
state=OUT;
else if(state==OUT){
state = IN;
++nw;
}
}
printf("%d %d %d",nl,nw,nc);

}
Re: Ispravka kodova u C? 06.12.2011. u 11:16 · pre 181 mesec #2
Unos teksta završi sa CTRL D, jer to predstavlja EOF.
Re: Ispravka kodova u C? 06.12.2011. u 11:36 · pre 181 mesec #3
Nece ni tad,isto se sve desava...
Inace na dnu ekrana,u delu 'Output':
'BrojanjeReci.exe': Loaded 'C:\Users\boka\Documents\Visual Studio 2010\Projects\BrojanjeReci\Debug\BrojanjeReci.exe', Symbols loaded.
'BrojanjeReci.exe': Loaded 'C:\Windows\System32\ntdll.dll', Cannot find or open the PDB file
'BrojanjeReci.exe': Loaded 'C:\Windows\System32\kernel32.dll', Cannot find or open the PDB file
'BrojanjeReci.exe': Loaded 'C:\Windows\System32\KernelBase.dll', Cannot find or open the PDB file
'BrojanjeReci.exe': Loaded 'C:\Program Files\AVAST Software\Avast\snxhk.dll', Cannot find or open the PDB file
'BrojanjeReci.exe': Loaded 'C:\Windows\System32\msvcr100d.dll', Symbols loaded.
The thread 'Win32 Thread' (0x140c) has exited with code -1073741749 (0xc000004b).
The program '[5700] BrojanjeReci.exe: Native' has exited with code -1073741510 (0xc000013a).

E sad ja ne znam sta sve to znaci???????
Inace i raniji programi koje sam radio sa while petljom nisu funkcionisali,dok for petlja radi!
Re: Ispravka kodova u C? 06.12.2011. u 11:50 · pre 181 mesec #6
Extra,takko bi i meni trebalo da pise.....
Ali ne pise!!!!

Sta si menjao u kodu?
U cemu je problem????????
Re: Ispravka kodova u C? 06.12.2011. u 12:06 · pre 181 mesec #7
Pokreni program u konzoli, a ne kroz VS. Ovo što vidiš na slici je ekran CygWin-a. Kroz glupavu VS konzolu ne možeš da uneseš znak EOF.
Re: Ispravka kodova u C? 06.12.2011. u 12:14 · pre 181 mesec #8
Pa kako to da uradim?????
:((
Mislim,iskucao sam ga isto i u DevC++(ConsoleApplication) i opet je isti problem.....
Koji kompajler je uopste najbolji da naucim C???????
Re: Ispravka kodova u C? 06.12.2011. u 12:16 · pre 181 mesec #9
Nađi gde se nalazi EXE fajl i dva puta klikni na njega. Bolja opcija je da sa taskbara uđeš u run i otkucaš cmd, pa onda pokreni odatle tvoj exe.
Po meni, najbolja varijanta da naučiš C, ako ti je to želja, je da skineš Cygwin. Prilikom instalacije odaberi da se instaliraju i development alati (c kompajler i biblioteke).
Re: Ispravka kodova u C? 06.12.2011. u 12:18 · pre 181 mesec #10
Zbog cega kroz VS konzolu ne moze da se unese EOF?? Ja sam cuo da je VC++ najbolji???
PS. Jel bi mogao da mi kazes jos i cemu sluzi EOF?
Znam da je to End of file,ali kako se izvrsava,malo detaljnije ako mozes????
Ili da otvorim novu temu?
Re: Ispravka kodova u C? 06.12.2011. u 12:34 · pre 181 mesec #12
Eto i to je rešeno.

U praistoriji računara, ASCII znak 0x04 (EOT) koji se dobija sa tastature pritiskom na CTRL D je označavao kraj zapisa fajla na magnetnoj traci. Konzola emulira na neki način kraj fajla tako što uobičajeno koristi kombinaciju tastera CTRL D (ili kao što je Mihajlo izguglao, neku drugu kombinaciju) da bi signalizirao kraj unosa.
Re: Ispravka kodova u C? 06.12.2011. u 16:41 · pre 181 mesec #13
Ok,ali meni i dalje ne funkcionise ovaj kod,tj ne izbacuje mi nikakvo resenje...... Jednostavno mi na taster ENTER prebaci kursor u novi red!! !
A CTRL+Z radi super,hvala puno za to......

Re: Ispravka kodova u C? 06.12.2011. u 16:57 · pre 181 mesec #14
Ma radi ti program. Problem je što se konzola automatski zatvori kada se konzolni program završi pa ne stigneš da vidiš rezultat.

Da bi to izbegao, staviš na kraj programa system("pause"), pa neće odmah da se zatvori. Ako pokreneš program iz DOS prozora, takođe možeš da vidiš rezultat.
Re: Ispravka kodova u C? 06.12.2011. u 17:03 · pre 181 mesec #15
U PRAVU SI!!!RADIIIII!
Momci hvala vam puno,ja tek poceo sa C-om,pa cemo se verovatno sretati jos po forumu....
Nadam se da nisam bio previse naporan
Hvala jos jednom.
Re: Ispravka kodova u C? 10.12.2011. u 10:32 · pre 181 mesec #16
Kad se otvori konzola,pise "Uneti dva broja",ja koji god da unesem,samo izbaci rezultat je 0!
????

Code:
#include<stdio.h>
void main(){
  int a,b,rez;
  printf("Uneti dva broja a i b\n");
  scanf("a=",&a);
  scanf("b=",&b);
  if(a>b){
    rez = a-b;
  }
  else{
    rez = b-a;
  }
  printf("Rezultat je %d\n ",rez);
  system("pause");
}



Re: Ispravka kodova u C? 10.12.2011. u 10:41 · pre 181 mesec #17
Funkcija scanf ne služi za ispisivanje i čitanje nego samo za čitanje. Umesto:
Code:
scanf("a=", &a);

mora da stoji:
Code:
printf("a=");
scanf("%d", &a);
Re: Ispravka kodova u C? 10.12.2011. u 11:49 · pre 181 mesec
izmenjeno 1 put, poslednji put Mihajlo Cvetanović 10.12.2011. u 22:54
  1. Mihajlo Cvetanović10.12.2011. u 22:54zapis iz teksta poruke
#18
Zasto mi prikazuje gresku??
Nece uopste da se pokrene program?

Code:
#include <stdio.h>

void main(){
  int i;
  for( i = 0; i < 200; i++ )  {
    if( (i % 2) != 0) continue;
    printf( "%d\n", i);
  }
}
Re: Ispravka kodova u C? 10.12.2011. u 22:56 · pre 181 mesec #19
Ispravio sam ovaj kod tako što sam dodao jednu zatvorenu vitičastu zagradu. Možda je to i kod tebe bio problem. Ako želiš da ti pomognemo onda sledeći put budi precizniji. Kada kažeš da javlja grešku onda napiši koju grešku. Brže ćeš doći do odgovora.
Re: Ispravka kodova u C? 10.12.2011. u 23:33 · pre 181 mesec #20
Zasto da dodajes zatvorenu viticastu zagradu kad sam otvorio main(){,pa for { i na kraju zatvorio obe???
Inace to mi je i najveci problem,jer kompajler ne prikazuje gde je greska???
Radim u VC++ 2010 i jednostavno mi samo izbaci System cannot find the file unspecified..
Pitao sam i profesora na faxu,proverio je kod i kaze da da za sve razmake umesto koda '0x20' (space)
stoji '0xA0' (non-breaking space). On je probao u MS C++ 2003 i sve je radilo perfektno....
A meni 90% programa ne funkcionise i stalno izbacuje istu gresku.... Iskreno malo mi je bzvze jer su ovo neki pocetni kodovi
a meni ne rade..... A zaista ne znam o cemu se radi?
Da nije problem u instalaciji?
Odgovori
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme