1;step++){if(n%2==0)/*如果n是偶数,则除以2*/n=n/2;else/*如果n是奇数,则用3n+1除以2*/n=(3*n+1)/2;}/*结束for循环*/pri"">
int main()
{
int n;/输入的正整数n/
int step=0;/计算步数/
scanf("%d", &n);/*输入正整数n*/
for (step = 0; n > 1; step++)
{
if (n % 2 == 0)/*如果n是偶数,则除以2*/
n = n / 2;
else/*如果n是奇数,则用3n+1除以2*/
n = (3 * n + 1) / 2;
}/*结束for循环*/
printf("%d\n", step);
return 0;
}
原文:https://blog.51cto.com/15059498/2566023