#T2002. 计算机网络

计算机网络

  1. 若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值,c>0。
    s=a;
    for(b=1;b<=c;b++)
        s+=1;
    

{{ select(1) }}

  • s = a + b
  • s = a + c
  • s = s + c
  • s = b + c
  1. 要求以下程序的功能是计算:s = 1 + 1/2 + 1/3 + ... + 1/10。
    #include <iostream>
    using namespace std;
    int main(){
        int n;
        float s;
        s = 1.0;
        for(n=10;n>1;n--)
            s=s+1/n;
        cout<<s<< endl;
    return 0;
    

程序运行后输出结果错误,导致错误结果的程序行是( )。

{{ select(2) }}

  • s = 1.0;
  • for (n = 10; n > 1; n--)
  • s = s + 1 / n;
  • cout << s << endl;
  1. 有以下程序:
    #include <iostream>
    using namespace std;
    int main(){
        int s, a, n;
        s = 0;
        a = 1;
        cin >> n;
        do {
            s += 1;
            a -= 2;
        } while(a != n);
        cout<<s<< endl;
        return 0;
    }
    

{{ select(3) }}

  • -1
  • -3
  • -5
  • 0
  1. 有以下程序:
    #incLude
    using namespace std;
    int main(){
        int k=4,n=0;
        while(n<k){
        n++;
        if(n %3 != 0)
           continue;
        k--;
        }
        cout<<k<<","<<n<<endl;
        return 0;
    }
    

程序运行后的输出结果是()。

{{ select(4) }}

  • 2,2
  • 2,3
  • 3,2
  • 3,3
  1. 为了统计一个非负整数的二进制形式中1 的个数,代码如下:
    int CountBit(int x)
    {
        int ret=0;
        while(x)
        {
            ret++;
            ___;
        }
        return ret;
    }
    

则空格内要填入的语句是()。 {{ select(5) }}

  • x >>= 1
  • x &= x - 1
  • x |= x >> 1
  • x <<= 1
  1. 下列程序中,正确计算1, 2, …, 100这100个自然数之和sum(初始值为0)的是() {{ select(6) }}
  • i=1;
    do{
        sum+=i;
        i++;
    }while(i<=100);
    
  • i=1;
    do{
        sum+=i;
        i++;
    }while(i>100);
    
  • i=1;
    while(i<100){
        sum+=i;
        i++;
    }
    
  • i=1;
    while(i>=100){
        sum+=i;
        i++;
    }
    
  1. 若有变量int a,float x,y,且a=7,x=2.5,y=4.7,则表达式x+a%3*(int)(x+y)%2/4的值大约是()。 {{ select(7) }}
  • 2.500000
  • 2.750000
  • 3.500000
  • 0.000000
  1. 设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是()。 {{ select(8) }}
  • x = (x * 100) + 0.5 / 100.0;
  • x = (x * 100 + 0.5) / 100.0;
  • x = (int) (x * 100 + 0.5) / 100.0;
  • x = (x / 100 + 0.5) * 100.0;
  1. 以下程序段实现了找第二小元素的算法。输入是n个不等的数构成的数组S,输出S中第二小的数SecondMin。在最坏情况下,该算法需要做()次比较。
    if(S[1]<S[2]){
        FirstMin=S[1];
        Secondmin=S[2];
    }else{
        FirstMin=S[2];
        SecondMin=S[1];
    }
    for(int i=3;i<=n;i++)
        if(S[i]<SecondMin){
            SecondMin=FirstMin;
            FirstMin=S[i];
        }else{
            SecondMin=S[i];
       }
    

{{ select(9) }}

  • 2n
  • n-1
  • 2n-3
  • 2n-2
  1. 递归过程或函数调用时,处理参数和返回地址,通常使用一种称为()的数据结构。 {{ select(10) }}
  • 队列
  • 多维数组
  • 线性表
  1. 在程序运行过程中,如果递归调用的层数过多,会因为()引发错误。 {{ select(11) }}
  • 系统分配的 栈 空间溢出
  • 系统分配的 堆 空间溢出
  • 系统分配的 队列 空间溢出
  • 系统分配的 链表 空间溢出