代码比较简单,各语句意义见注释。。。
#include <stdio.h>
int main(int argc, char *argv[])
{
int i /*定义要处理的变量*/
scanf("%d", &i) /*输入变量值*/
while(i != 1)
{
if(i%2)/*奇数*/
{
printf("%d*3+1=%d\n", 神帆i, i*3+1) /*按题目要求的格式打印出来*/
i = i*3+1 /*更新颤瞎肆变量值*/
}
else /*偶数*/
{
printf("%d/2=%d\n", i, i/2) /*按题目要求的格式打印出来*/
i = i/2 /*更新变量茄轿值*/
}
}
printf("END\n") /*最后打印END*/
return 0
}
另外几个测试结果图片:
Private Sub Command1_Click()Dim Num As Long
Dim I As Integer
Randomize
Num = Int(Rnd * 10000)
Picture1.Cls
Picture1.Print "余如原始数据兄乱为:" &Num
Picture1.Print "以下是计算结果竖尘启:"
I = 0
Do While Num <>1
If Num Mod 2 = 0 Then
Num = Num / 2
Else
Num = Num * 3 + 1
End If
Picture1.Print Num
I = I + 1
If I Mod 10 = 0 Then Picture1.Print
Loop
End Sub
#include<stdio.h>main()
{
int n,c=0
printf("输入一个小于等灶派于一万败宽的整数:")
scanf("%d",&n)
if(n>10000&&n<0) printf("输入错误请重新输入!")
while(n!=1)
{
if(n%2==0)
n=n/察辩亮2
else
n=n*3+1
c++
}
printf("%d\n",c)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)