这个程序为啥输出不了m呀😭

#include
int n,j;
float x, m, k;
int main() {
scanf_s("%f %d", &x,&n);
switch (n) {
case(0):m = 1; printf("%f", m); break;
case(1):m = x; printf("%f", m); break;
}
if (n > 1) {
while (j <= n) {
if (j == 1) {
m = float((2 * n - 1) / n) * x * x - float((n - 1) / n);//第一个m
}
if (j < n) {
j++;
k = float((2 * n - 1) / n) * x * m - float((n - 1) / n) * x;//第二个
}
if (j < n) {
j++;
m = float((2 * n - 1) / n) * x * k - float((n - 1) / n) * m;//第三个
}
}
if (j % 2 == 0) {
printf("%f", k);
}
else {
printf("%f", m);
}
}
return 0;
}

img

img