3n+1算法C代码出现段错误,请求定位指针问题
3n+1算法的最大循环长度计算问题
算法说明
我实现了一个遵循以下逻辑的算法:
input n print n if n = 1 then STOP if n is odd then n ←− 3n + 1 else n ←− n/2 GOTO 2
当输入n = 22时,输出为:
22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1
这里定义循环长度为:从初始n到1(包含1)的打印数字总个数。例如22的循环长度为16。
问题与状态更新
我需要编写C语言代码,计算两个整数i,j(包含两端)之间的最大循环长度,但运行时出现段错误,怀疑是指针问题却无法定位。
更新:根据评论修改代码后,程序已能正常运行。
内容的提问来源于stack exchange,提问作者Emil11
相关产品推荐
相关产品推荐

