A kang 2021-12-08 22:36 采纳率: 100%
浏览 1977
已结题

求绝对值函数(宏)*

C 函数库中提供整数绝对值 abs 函数和实数绝对值 fabs 函数,函数声明如下:

函数原型

int abs(int x);
double fabs(double x);

说明:函数值为参数 x 的绝对值 ∣x∣。

请在空白处填写适当内容,用带参数的宏替换命令来实现相同的功能,将上面两个函数合并为一个,并命名为 Abs。

裁判程序1

#include <stdio.h>

__________

int main()
{
    int a, b;
    double x, y;
    scanf("%d %lg", &a, &x);
    b = Abs(a);
    y = Abs(x);
    printf("%d %g\n", b, y);
    return 0;
}

输入样例1

-5 -2.5

输出样例1

5 2.5

输入样例2

7 3.8

输出样例2

7 3.8

输入样例3

0 0

输出样例3

0 0

输入样例4

-0 -0

输出样例4

0 0
  • 写回答

1条回答 默认 最新

  • bekote 2021-12-08 23:23
    关注
    
    #define Abs(x) ((x) > 0 ? (x) : (x) < 0 ? -(x) : 0)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 12月17日
  • 已采纳回答 12月9日
  • 创建了问题 12月8日

悬赏问题

  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥15 树莓派5怎么用camera module 3啊
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题