PAT初级1001 害死人不偿命的(3n+1)猜想
(主要是怕自己学过就忘记了嘻嘻)
PAT初级1001 害死人不偿命的(3n+1)猜想
直接甩代码粗来~
#include "stdio.h"
int main(void)
{
unsigned int n;
short int count = 0;
if (scanf("%u", &n) == 1)
{
if (n <= 1000)
{
for (; n != 1;)
{
count++;
if (n % 2 == 0)
{
n = n / 2;
}
else
n = (3 * n + 1) / 2;
}
}
else
main();
printf("%d", count);
}
return 0;
}
注意:直接写成scanf("%u", &n);会出现warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_r的警告
- 关于PAT的练习,无关的提示信息不要加
- 按照其给定的输入案例输出案例严格操作
- 最后:我的水平我知道,请多多指教,互相学习!如果你骂我我就喷你嘻嘻