为了账号安全,请及时绑定邮箱和手机立即绑定

萌新求大佬帮助,这个代码我感觉没有问题,但运行不出结果,是为什么啊

给定的任一不超过 1000 的正整数 n,如果它是奇数,那么把 (3n+1) 砍掉一半,如果它是偶数,那么把它砍掉一半,需要多少步(砍几下)才能得到 n=1。


#include <stdio.h>

#include <stdlib.h>

int main()

{

    int a,b,c;

    scanf("%d",&a);

    b=0;c=0;


if (a%2==1)

{a=3*a+1;

while(a>1)

{a=a/2;

 b=b+1;

if(a%2==1)

{a=3*a+1;

}}

printf("%d",b);}




if(a%2==0)

{while(a>1)

{a=a/2;

 c=c+1;

 if(a%2==1)

{a=a*3+1;    

}}

printf("%d",c);} 

 return 0;   }   



    

 

 

正在回答

举报

0/150
提交
取消

萌新求大佬帮助,这个代码我感觉没有问题,但运行不出结果,是为什么啊

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信