/* Include lib */
#include <stdio.h>
#include <assert.h>

/* Define */

/* API power of number */
/* Positive power of number: n > 0 */
double positive_power_of_num(double x, int n)
{
  int i;
  double ret = 1;

  for (i = 0; i < n; i++)
      ret *= x;

  /* FIXME: Check overflow */
  return ret;
}

double power_of_num(double x, int n)
{
  /* negative power of number = 1 / positive power of number */
  if (n > 0)
    return positive_power_of_num(x, n);
  else
    return (double)1 / positive_power_of_num(x, -n);
}

/* Main func interact with user */
int main(void)
{
  int sel, power;
  double num;

  while (1) {
    printf("\n\nSelection:\n");
    printf("0: Input number & power of that number\n");
    printf("1: Exit\n");
    printf("Select: ");
    scanf("%d", &sel);

    switch (sel) {
    case 0:
      printf("Input number: ");
      scanf("%lf", &num);
      printf("Input power: ");
      scanf("%d", &power);
      printf("=> %f\n", power_of_num(num, power));
      break;
    case 1:
      return 0;
    default:
      printf("WARN: Option not available\n");
      break;
    }
  }

  return -1;
}

/*
double power(double x, int n) {
   //TODO: Write - Your - Code
  return x;
}
*/

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: