Dziwny wynik kompilacji w Devie

0

Witam. Mam zrobić program który ustawia liczby od najmniejszej do najwiekszej. Nie wiem czy dobrze porozpisywałem warunki lecz jest kłopot z wynikiem kompilacji. Za każdym razem po wprowadzeniu trzech liczb wyrzuca dziwny wynik np: 262641641656
Podobnie dziwne wyniki, tylko krótsze miałem podczas obliczania miejsc zerowych funkcji kwadratowej. Używam Deva na Windows 8 64 bit.
Pomocy !

include <stdio.h>
#include <stdlib.h>

int main() {
int a;
int b;
int c;
printf("Podaj a\n");
scanf("%d",&a);
printf("Podaj b\n");
scanf("%d",&b);
printf("Podaj c\n");
scanf("%d",&c);

if (a<b && b<c) {

	printf ("%d",&a);
	printf ("%d",&b);
	printf ("%d",&c);

}
if (a>b && b>c) {

	printf ("%d",&c);
	printf ("%d",&b);
	printf ("%d",&a);

}

if (a<b && b>c && a>c) {
	printf ("%d",&c);
	printf ("%d",&a);
	printf ("%d",&b);

}

if (a<b && b>c && a<c) {
	printf ("%d",&a);
	printf ("%d",&c);
	printf ("%d",&b);

}

system("PAUSE");
return 0;

}

1

a, b, c to nie wskaźniki. Do printfa podajesz ich adresy zamiast wartości (wywal &).

Weź jakieś lepsze IDE od deva, on jest tragiczny i tragicznie przestarzały.

3
int a,b,c,max;
scanf("%d %d %d", &a, &b, &c);
max = a;
if(b > max) max = b;
if(c > max) max = c;
printf("%d\n", max);
0

O faktycznie wywalenie (&) pomogło i program działa jak należy. Tylko nie rozumiem dlaczego tak się stało.

0
rufusek94 napisał(a):

O faktycznie wywalenie (&) pomogło i program działa jak należy.

Jakim cudem? Pominąłeś jeszcze 68 wariantów.

1 użytkowników online, w tym zalogowanych: 0, gości: 1