注册 登录
编程论坛 C++教室

谁能看出,这3行代码的函数功能是什么??

fjwddzzc123 发布于 2009-07-21 10:16, 1002 次点击
void b(int n)
{
  while(n>0)
  {
   cout<<n<<",";
   n/2;
  }
}
15 回复
#2
fjwddzzc1232009-07-21 11:00
怎么都这么低调啊  知道的说啊    还等着的解答呀
#3
wang67332842009-07-21 13:49
n/(2)n
#4
明次2009-07-21 14:08
n/2 ,而且n>0的话还是个死循环
#5
fjwddzzc1232009-07-21 18:36
回复 4楼 明次
晕死 很不好意思 代码中漏了个=号 难怪没人回答呀  再发一次代码  希望大家帮忙看下是什么功能
void b(int n)
{
    while(n>0)
    {
    cout<<n<<",";
    n/=2;
    }
}
#6
shaozihaozi2009-07-21 21:00
应该是把n不断用2除,然后将相除的结果赋给n且输出,直到n被2除的结果除小于0;
#7
fjwddzzc1232009-07-21 22:09
回复 6楼 shaozihaozi
过程是这样 我也知道啊  只是他的功能是什么
#8
明次2009-07-21 22:21
以下是引用fjwddzzc123在2009-7-21 18:36的发言:

晕死 很不好意思 代码中漏了个=号 难怪没人回答呀  再发一次代码  希望大家帮忙看下是什么功能
void b(int n)
{
    while(n>0)
    {
    cout<<n<<",";
    n/=2;
    }
}


很简单,n/=2意思就是左边的n除于2,然后把结果在赋值给n  这就是他的功能!

[[it] 本帖最后由 明次 于 2009-7-21 22:23 编辑 [/it]]
#9
shaozihaozi2009-07-22 08:11
这么一小段代码,本人也是初学者实在看不出还有什么别的功能。
#10
sydyh432009-07-22 14:13
把n/2附一下值
#11
ET_bug2009-07-22 14:25
6楼说的就是功能呀,LZ还想有什么功能
#12
fjwddzzc1232009-07-22 14:54
分析过程我知道    例如 n=11  那么输入  11  5 2 1    如果 n=10  那么输入 10 5 2 1   这一排数字  到底是有什么规律   又或者是什么数列  所以函数功能是什么 。。
#13
wendellzone2009-07-22 17:13
把1赋给n,应该是有个数数一下被除的次数
#14
black4232009-08-11 15:43
没有什么规律,就是将一个数不停的除2,直到为1.
#15
ly8610142009-08-11 16:58
回复 楼主 fjwddzzc123

可能是在递归的时候,求一个数组的中间位置吧,这个中间位置的定义应该是,如果有奇数个当然就是中间那个,如果是偶数个,则是中间那两个中的后者,举个例子,如整型数组 int a[11];第一次求中间位置就是a[5],再求就是a[2], 然后a[1].如果是int a[10];则是a[5],a[2], a[1].
#16
debroa7232009-08-11 19:33
光看这三行代码,没有什么具体功能,如果放到某些环境下,比如拆半查找,它可以给出一个查找序列。
1