更多“下面程序的输出是( )。 main() {int arr[8],i,k=0;for(i=0;i<8;i++) arr[i]=i;for(i=1;i<5;i++) k ”相关问题
  • 第1题:

    下面程序的输出是【 】。

    main()

    {int arr[10],i,k=0;

    for(i=0;i<10;i++)

    arr[i]=i;

    for(i=1;i<4;i++)

    k+=arr[i]+i;

    printf("%d\n",k);}


    正确答案:12
    12 解析:本题通过第一个for循环将数组arr[0]-arr[9]分别赋值为0-9,通过第二个for循环的三次循环累加,求出结果为12,具体分析如下:
    i=1:K=0+arr[1]+1即k=2;
    i=2:k=2+arr[2]+2即k=6;
    i=3:k=6+arr[3]+3即k=12;

  • 第2题:

    以下程序的输出结果是 ______ 。main() { int i,k,a[10],p[3]; k=5; for(i=0;i<10;i++)a[i]=i; for(i=0;i<3;i++)p[i]=a[i*(1+1)]; for(i=0;i<3;i++)k+=p[i]*2; printf("%d\n",k); }

    A.20

    B.21

    C.22

    D.23


    正确答案:B
    解析:按程序的流程走一遍,可以得到p[0]=0,p[1]=2,p[3]=6;执行三次k+=p[i]*2,相当于k=5+0*2+2*2+6*2=21。

  • 第3题:

    以下程序运行后,输出结果是()。 main() { int i,k,a[10],p[3]; k=5; for (i=0;i<10;i++) a[i]=i; for (i=0;i<3;i++) p[i]=a[i*(i+1)]; for (i=0;i<3;i++) k+=p[i]*2; printf("%dn",k); }

    A.20

    B.21

    C.22

    D.23


    C 解析:本题考查的是对位与运算符&的理解。位与运算是将两个运算分量看作两个二进制数,然后对两个二进制数的相应位进行与运算,若同时为1则结果相应位为1,否则结果相应位为0。因此,当两个运算分量相同时,它们的相应位肯定也相同,即不同为1就同为0。所以得到的结果和运算分量也相同。所以,4个选项中选项C)符合题意。

  • 第4题:

    以下程序的输出结果是______。 main() { int i,k,a[10],p[3]; k=5; for(i=0;i<10;i++) a[i]=i; for(i=0;i<3;i++) p[i]=a[i*(i+1)]; for(i=0;i<3;i++) k+=p[i]*2; printf("%d\n",k); }

    A.20

    B.21

    C.22

    D.23


    正确答案:B
    解析:第1个循环对数组a进行赋值:第2个循环对数组p进行赋值;第3个循环对k进行累加,k的初值等于5,第1次循环,k=k+p[0]*2=5+0*2=5,第2次循环,k=k+p[1]*2=5+2*2=9,第3次循环,k=k+p[2]*2=9+6*2=21并输出。

  • 第5题:

    5、下列程序的运行结果是 。 #include<iostream> using namespace std; void main() { int arr[10], i, k=0; for(i=0; i<10; i++) arr[i]=i; for(i=1; i<4; i++) k+=arr[i]+i; cout<<k<<endl; }


    5,9