简单,直接上代码,附带注释-_-。
#include<stdio.h>
int estimate(int number); /*判断n奇偶性*/
int main()
{
int n, time=0;
scanf("%d", &n);
while (n != 1) /*n不等于1则执行循环*/
{
if (estimate(n) == 1)
n = n / 2;
else
n = (3 * n + 1) / 2;
time++;
}
printf("%d\n", time);
return 0;
}
int estimate(int number)
{
if (number % 2 == 0)
return 1; /*偶数就返回1,奇数就返回0*/
else
return 0;
}