as12350992 发表于 2020-11-18 01:56:52

C++问题

a)        What is the exact output of the code below if we execute the function call q2(20)?如果执行函数调用q2(20),下面代码的确切输出是什么?

void q2(int n)
{
    for (int i = 1; i < n; i *= 2)
      cout << i;
}

b)        The function in part (a) uses a for loop. Rewrite the function using a while loopwithout changing how the code works。(a)部分中的函数使用for循环。 使用while循环重写函数,而无需更改代码的工作方式。

c)        Rewrite the function from part (a) using a do-while loop. (Hint: make sure the code produces the same output for all cases). 使用do-while循环重写部分(a)中的函数。 (提示:请确保代码在所有情况下都产生相同的输出)。



xieglt 发表于 2020-11-18 08:47:40

本帖最后由 xieglt 于 2020-11-18 09:11 编辑

a)q2(20)输出:124816

b)

void q2(int n)
{
   int i = 1;
   while(i<n)
   {
         cout << i;
         i*=2;
   }
}

   
c)

voidq2(int n)
{
      int i = 1;
      do
      {
             cout << i;
             i*=2;
      }while(i<n);
}
页: [1]
查看完整版本: C++问题