1)输入一个正整数n;2)如果n=1则结束;3)如果n是奇数,则n变为3n+1,否则n变为n/2;4)转入第(2)步。 输入样式:3 1 2 3 输出样式:
#include<stdio.h>void main()
{
int n,m=0,i,a[100];
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n;i++)
{
while(a[i]!=1)
{ if(a[i]%2==0)
a[i]=a[i]/2;
else
a[i]=3*a[i]+1;
m++;
}
printf("%d\n",m);
}
}
我输入1 2 3,他会输出0 1 8;我输入1 2 3 4,他会输出0 1 8 10
本来输入3 会是7,4 会是2
他会和前面的累加是咋搞得 求各位指教