プログラミング+α学習ブログ

勉強したことの備忘録です。

二乗を求める関数形式マクロと、三乗を求める関数形式マクロ

#include <stdio.h>

#define sqr(x)  ((x) * (x)) // xの二乗値を求める
#define cub(x)  ((x) * (x) * (x)) // xの三乗値を求める

int main(void)
{
    int nx;
    double dx;
    
    printf("整数を入力してください:");
    scanf("%d", &nx);
    printf("その数の二乗は%dで三乗は%dです。\n", sqr(nx), cub(nx));
    
    printf("実数を入力してください:");
    scanf("%lf", &dx);
    printf("その数の二乗は%f\n三乗は%fです。\n", sqr(dx), cub(dx));
    
    return (0);
}

実行結果

整数を入力してください:4
その数の二乗は16で三乗は64です。
実数を入力してください:2.5
その数の二乗は6.250000で
三乗は15.625000です。