Я попытался написать простую программу, которая сравнивает 3 номера и печатает самую большую из них, но она печатает все 3 из них, и я не понимаю почему. Это мой код:C простая программа не работает - «if»
#include <stdio.h>
int main()
{
int x = 10;
int y = 8;
int z = 3;
if((x > y) && (x > z));
{
printf("%d",x);
}
if((y > x) && (y > z));
{
printf("%d",y);
}
if((z > x) && (z > y));
{
printf("%d",z);
}
return 0;
}
Спасибо за помощь!
Не помещайте точки с запятой в конце операторов 'if'. – user3386109
У вас есть полуколонны в конце ваших 'if' -задавлений. Таким образом, вы говорите «если (что-то) empty_statement», а затем ваши блоки 'printf' не квалифицируются никаким тестом' if'. IOW, они будут выполняться каждый раз, потому что нет связанных с ними условных тестов. – frasnian