2016-09-22 19 views
-2
#include<stdio.h> 
#include<conio.h> 
#define FIRST_PART 7 
#define LAST_PART 5 
#define ALL_PARTS FIRST_PART+LAST_PART 
int main() 
{ 
    printf ("The Square root of all parts is %d", ALL_PARTS * ALL_PARTS) ; 
    getch(); 
    return(0); 
} 

В приведенном выше коде FIRST_PART определяется как 7Как вывести 47?

LAST_PART определен как 5

и ALL_PARTS инициализируется как FIRST_PART + LAST_PART (который в идеале 12)

но когда я печать ALL_PARTS * ALL_PARTS дает мне 47 в качестве выхода! (Но я думал, что ответ будет 144)

Пожалуйста, кто-нибудь может объяснить мне, как?

+0

7 + 5 * 7 + 5 является 47, так почему вы не ожидали бы, что ответить? (СОВЕТ: если вы выполняете вычисления как часть макроса, оберните в круглые скобки) –

+0

это должно быть 47 – iamsankalp89

ответ

1

Ответ должен быть 47

FIRST_PART + LAST_PART * FIRST_PART + LAST_PART 

MULTIPLICATION HAS MORE PRECEDENCE 

SO 7 + 5 * 7 + 5 

7 + 35 + 5 

47 
+1

надеюсь, что это вам поможет –

+0

Но значение 5 + 7 = 12, правильно? –

+0

Значение ALL_PARTS должно быть 12 * 12? –

 Смежные вопросы

  • Нет связанных вопросов^_^