关于函数的一个C语言的题

已知符号函数sgn(x)是一个分段函数:
y = sgn(x) =1. x>0
=0 x=0
=-1 x< 0
请使用程序实现该函数
输入:提示用户输入变量×的值
输出:打印输出 y值

2.已知球的体积公式为3分之4兀r的3次方
设计并编写一个程序,根据用户输入的球的半径r ,
输出球的体积大小。(结果保留 4 位小数,园周率使用 5 位小数)

int sgn(int x)
{
  if(x>0)
    return 1;
  else if(x<0)
    return -1;
  else
    return 0;
}

int main()
{
  int x;
  printf("输入x的值:");
  scanf("%d",&x);
  printf("%d",sgn(x));
}



int main()
{
  double r;
  double pi=3.14159;
  scanf("%lf",&r);
  printf("%.4lf",r*r*r*4/3);
}

这问题都看不全,连猜带蒙是这个意思不

#include <stdio.h>
int sgn(double x) {
    if (x > 0) {
        return 1;
    } else if (x == 0) {
        return 0;
    } else {
        return -1;
    }
}
int main() {
    double x;
    printf("请输入变量x的值:");
    scanf("%lf", &x);
    printf("sgn(%.2f) = %d\n", x, sgn(x));
    return 0;
}

#include <stdio.h>
#include <math.h>
int main() {
    double r, volume;
    const double PI = 3.14159;
    printf("请输入球的半径:");
    scanf("%lf", &r);
    volume = 4.0 / 3.0 * PI * pow(r, 3);
    printf("球的体积为:%.4f\n", volume);
    return 0;
}