解题思路:
很简单的一道题,跟着题目描述的思路写就可以了。
注意事项:
需要注意的是,输入的i不一定小于j!
参考代码:
#include <stdio.h> int getCycle(long long int n); int main() { int i, j, max; while(scanf("%d%d", &i, &j) != EOF) { max = 0; if(i < j) { for(int i2 = i; i2<=j; i2++) if(getCycle(i2) > max) max = getCycle(i2); } else { for(int i2 = j; i2<=i; i2++) if(getCycle(i2) > max) max = getCycle(i2); } printf("%d %d %d\n", i, j, max); } return 0; } int getCycle(long long int n) { int i=1; while( n != 1) { if(n % 2 == 1)//奇数 n = n * 3 + 1; else n /= 2; i++; } return i; }
0.0分
0 人评分
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:729 |
C语言程序设计教程(第三版)课后习题11.8 (C语言代码)浏览:640 |
printf基础练习2 (C语言代码)浏览:321 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:583 |
C语言训练-数字母 (C语言代码)浏览:670 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)浏览:1292 |
C语言考试练习题_保留字母 (C语言代码)浏览:743 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:590 |
1012题解浏览:938 |
简单的a+b (C语言代码)浏览:618 |