解题思路:
#define s S=(a+b+c)/2; 计算大S的值,#define w area=sqrt(S*(S-a)*(S-b)*(S-c)); 应用大S的值计算面积,
小s小w分别表示对应各自功能的密码,
注意事项:
注意宏定义函数的分号使用,如果直接定义不用S与area,宏定义时不用加分号。
个人理解仅供参考。
参考代码:
#include<stdio.h>
#define s S=(a+b+c)/2;
#define w area=sqrt(S*(S-a)*(S-b)*(S-c)); //大S
/* 不用等号的中间变量
#define s (a+b+c)/2 printf("%.3lf",area);
#define area sqrt(s*(s-a)*(s-b)*(s-c)) printf("%.3lf",area); 小s
*/
int main(){
double a,b,c,t,S,area;
scanf("%lf%lf%lf",&a,&b,&c);
s
w
printf("%.3lf",area);
return 0;
}
0.0分
2 人评分
这样可以吗,有什么不好的 #include<stdio.h> #include<math.h> #define s (a+b+c)/2 #define area sqrt(s*(s-a)*(s-b)*(s-c)) int main() { double a,b,c; scanf("%lf%lf%lf",&a,&b,&c); printf("%.3lf\n",area); return 0; }
#include <stdio.h> #include <math.h> #define S S=(a+b+c)/2 #define SS s=sqrt(S*(S-a)*(S-c)*(S-b)) int main(int argc, char const *argv[]) { double a,b,c,S,s; scanf("%lf %lf %lf", &a, &b, &c); printf("%.3lf\n", SS); return 0; }
Spperman 2019-05-05 13:17:58 |
比赛时候经常会写几个宏定义函数的
嗯的,加上更为严谨,不加的话,只要知道函数原型也可以使用,系统会自动为你搜选函数库的。
寡人有疾 2018-06-22 17:50:41 |
怪不得我在网页上编译老是不通过
少了 #include<math.h>头函数
Spperman 2018-04-21 10:29:51 |
嗯的,加上更为严谨,不加的话,只要知道函数原型也可以使用,系统会自动为你搜选函数库的。
2^k进制数 (C语言描述,蓝桥杯)浏览:1420 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1000 |
小O的乘积 (C语言代码)浏览:1016 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:713 |
1415题求解浏览:609 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:533 |
C语言程序设计教程(第三版)课后习题5.5 (Java代码)浏览:541 |
C语言程序设计教程(第三版)课后习题6.9 (C++代码)浏览:508 |
简单的a+b (C语言代码)浏览:559 |
简单的a+b (C语言代码)浏览:468 |