floor-sqrt, with .c

File: sqrt.c

How to make a floor-sqrt with the .c programming-language:

#include <stdio.h>

unsigned int sq_table[80];

#define MUM_SQUARE 80

int
floor_square_root(int x)
{
  int r;
  for (r = (MUM_SQUARE - 1); r >= 0; r--) {
    if (sq_table[r] > x) continue;
    return r;
  }
}

void
init_square_table()
{
  for (int s = 0; s < MUM_SQUARE; s++) {
    sq_table[s] = (s * s);
  }
}

int main(void)
{
  int x;
  int r;
  init_square_table();
  x = 15;
  printf("x:%d\n", x);
  r = floor_square_root(x);
  printf("r:%d\n", r);
  for (int s = 0; s < 13; s++) {
    printf("[%d]: %d, (%d)\n", s, sq_table[s], (s * s));
  }
  return 0;
}

Testing:
$ gcc -o sqrt.exe sqrt.c
$ ./sqrt.exe
x:15
r:3
[0]: 0, (0)
[1]: 1, (1)
[2]: 4, (4)
[3]: 9, (9)
[4]: 16, (16)
[5]: 25, (25)
[6]: 36, (36)
[7]: 49, (49)
[8]: 64, (64)
[9]: 81, (81)
[10]: 100, (100)
[11]: 121, (121)
[12]: 144, (144)

<..