Kezdőoldal » Számítástechnika » Programozás » Az alábbi C kóddal mi a hiba?...

Az alábbi C kóddal mi a hiba? A codeblocks nem futtatja le, pedig csak a-t és b-t szeretném összeadni.

Figyelt kérdés

#include <stdio.h>

#include <stdlib.h>


int main()


{

int a, b;

a==5;

b==4;

printf('=a+b');

return 0;

}


2016. máj. 24. 20:09
1 2
 1/17 anonim ***** válasza:
100%
csak egy darab = jel kell
2016. máj. 24. 20:12
Hasznos számodra ez a válasz?
 2/17 anonim ***** válasza:
100%

#include <stdio.h>

#include <stdlib.h>


int main(){


int a, b;

a=5; //az == logikai vizsgálatot jelent, nem jó

b=4;

printf("%d", a+b); //amit adtál printf-nek, az hibás, az életben nem fog működni. Javaslom, nézz utána a printf működésének

return 0;

}

2016. máj. 24. 20:32
Hasznos számodra ez a válasz?
 3/17 anonim ***** válasza:
100%
#2 vagyok, még lefelejtettem, hogy az stdlib fölösleges neked, nem használod ugyanis egyik függvényét sem a programban
2016. máj. 24. 20:33
Hasznos számodra ez a válasz?
 4/17 uno20001 ***** válasza:
100%

A „sztringekhez” pedig ", azaz dupla idézőjelet használj. És a printf dokumentációját[1] is érdemes átnézni, ha valamilyen váltózó értéket szeretnél kiírni.


+: Jelen esetben nincs értelme az stdlib.h-t includeolni.


[1]: [link]

2016. máj. 24. 20:33
Hasznos számodra ez a válasz?
 5/17 anonim ***** válasza:
100%
Van azért még pár hiba, pl az aposztróf biztos nem jó, az összeget valahol ki kéne számolni (a printf-fel gondolom valami olyasmit akartál volna kiíratni, hogy a+b=9)
2016. máj. 24. 20:35
Hasznos számodra ez a válasz?
 6/17 anonim ***** válasza:
Upsz, közben megelőztek mások:)
2016. máj. 24. 20:36
Hasznos számodra ez a válasz?
 7/17 anonim ***** válasza:
Elég kevés olyan sor van benne, ami nem hibás.
2016. máj. 24. 20:48
Hasznos számodra ez a válasz?
 8/17 anonim ***** válasza:

1.Az értékadásnál csak egy egyenlőségjel kell. A dupla egyenlőségjel az egyenlőség vizsgálatánál kell.


Az

a == 5;

b == 4;

kifejezések eredménye 0 (logikailag hamis, false) lesz, mivel a 0 (a változók deklarálásánál az alapértelmezett érték) nem egyenlő sem 5-tel, sem 4-gyel.


Szóval helyesen:

a = 5;

b = 4;


2. Ha printf-el az a és a b változó összegét szeretnéd kiíratni, akkor a helyes megoldás:

printf ("%d", (a+b));

lesz (fontos az idézőjel használata az aposztróf helyett, illetve az a+b kifejezés zárójelek közé tétele).


Bővebben: [link]

2016. máj. 24. 20:49
Hasznos számodra ez a válasz?
 9/17 A kérdező kommentje:

int main()

{

int a, b;

a=5;

b=6;

printf("%d", '(a+b)');

return 0;

}


esetén, tehát ha az (a+b)-t ' ' jelek közé teszem, egy hosszú számot ír ki. a '(a+b)' miben más, mint a (a+b)?

2016. máj. 24. 21:28
 10/17 anonim ***** válasza:
100%

És mi a búbánatnak teszed aposztrófok közé?

Aposztrófokkal char-okat jelölünk, szóval gondolom valamiféle char-rá fordul és azt írja ki.

2016. máj. 24. 21:46
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!