宏定义问题
这样定义有什么错误?? #include<math.h> #define P (-b/2a) #define disc b*b-4*a*c #define Q (sqrt(disc)/2a)
main() { float a,b,c,x1,x2;
printf("Please input three number :"); scanf("%f,%f,%f",&a,&b,&c); x1=P+Q; x2=P-Q; printf("\n x1==%5.3f x2==%5.3f \n",x1,x2); }
搜索更多相关的解决方案:
定义
----------------解决方案--------------------------------------------------------
#include<math.h> #define P (-b/2*a) #define disc b*b-4*a*c #define Q (sqrt(disc)/2*a)
main() { float a,b,c,x1,x2;
printf("Please input three number :"); scanf("%f,%f,%f",&a,&b,&c); x1=P+Q; x2=P-Q; printf("\n x1==%5.3f x2==%5.3f \n",x1,x2); }
----------------解决方案--------------------------------------------------------
没有 STDIO.H
----------------解决方案--------------------------------------------------------
最好加个括弧!
还有宏定义要尽量的能让人看懂意思!
----------------解决方案--------------------------------------------------------
你的宏定义里面有参数就应该使用带参宏的定义方式:#define 宏名(形参表) 一串符号
如:#define P(a,b) (-b/2*a)
----------------解决方案--------------------------------------------------------
(-b/(2*a))吧
----------------解决方案--------------------------------------------------------