C语言问题,数字问题,请帮我编写1下,急

请问这个应该怎么做?第一张是原题,第二张是机翻。是数字计算题目。请帮我编写1下,蟹蟹。

img

img

你好,同学,这是一个递归调用的题目

#include <stdio.h>
int collatz(int n){
    int k;
    if(n==1) {printf("%d\n",n); return n;}
    printf("%d\n",n);
    if(n%2==1)k = 3*n+1;
    else k = n/2;
    return collatz(k);
}
int main()
{
  int n;
  scanf ("%d", &n);
  collatz (n);
  return 0;
}