下列程序段的输出结果是___。 for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j); cout<<k

题目

下列程序段的输出结果是___。 for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j); cout<<k


相似考题
更多“下列程序段的输出结果是___。 for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j); cout<<k”相关问题
  • 第1题:

    有以下程序 main() { int a[4][4]={{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}},i,j,k,t; for(i=0;<4:i++) for(j=0;j<3;j++) for(k=j+1;k<4;k++) if(a[j][i]>a[k][i]{t=a[j][i];a[j][i]=a[k][i]=a[k][i]=t;}/*按列排序*/ for(i=0;i<4;i++)printf("%d,",a[i][i]); } 程序运行后的输出结果是

    A.1,6,5,7,

    B.8,7,3,1,

    C.4,7,5,2,

    D.1,6,2,1,


    正确答案:A
    解析:本题利用多重for循环的嵌套来实现对二维数组元素的按列排序。利用最外层循环来实现对列的控制。内部循环利用选择法对数组元素按照从小到大的顺序进行排列。最后输出对角线上的元素值。故本题答案为A)。

  • 第2题:

    有以下程序:include using namespace std;int main ( ){ int n[3],i,j,k = 2; for(i

    有以下程序: #include <iostream> using namespace std; int main ( ) { int n[3],i,j,k = 2; for(i = 0;i<k;i++) n[i] = O; for(i = O;i<k;i++) { for(j = O;j<k;j++) n[j] = n[i] + 1; } cout<<n [0 ] <<end1; return 0; } 上述程序运行后,输出结果是( )。

    A.0

    B.1

    C.2

    D.3


    正确答案:D
    解析:本题考核数组的定义、初始化及其使用。根据程序逐步分析:程序首先给数组n的所有元素赋初值0,然后执行一个嵌套的循环结构。嵌套循环的执行过程如下:①i=0时,j分别取值0、1,使得n[0]、n[1]的值分别变1、2,内层循环结束。②i=1时,对外层循环进行判断,符合循环条件,执行内层循环,j分别取值0、1,使得n[0]、n[1]的值变为3、3,退出内层循环。③i=2时,判断外层循环,不再符合循环条件,退出外层循环,执行cout语句,输出n[0]的值为3。

  • 第3题:

    下列程序的输出结果是 include void main( ) {int a[3],i,j,k=2; for(i=

    下列程序的输出结果是 #include<iostream.h> void main( ) { int a[3],i,j,k=2; for(i=0;i<3;i++)a[i]=i; for(i=0;i<k;i++) for(j=0;j<k;j++) a[j]=a[i]; cout<<a[2];}

    A.2

    B.3

    C.1

    D.0


    正确答案:A
    解析:本题里有三个for循环,但要分清楚,第一个是单独的给三个元素赋值,赋完值后三个a[0]=0,a[1]=1,a[2]=2;后面的两个for是嵌套循环,对数组元素的赋值,但由于k=2,初值已定for里的条件是小于k,所以不管怎么处理都影响不到a[2],故答案为2。

  • 第4题:

    以下程序运行后的输出结果是()。includevoid main(){ char aft="abbcabbcabbc"; int

    以下程序运行后的输出结果是( )。 #include<iostream.h> void main() { char aft="abbcabbcabbc"; int i=0,j=0,k=0; while(a[i]) { if(a[i]=='a') j++; if(a[i]=='b') k++; i++; } cout<<j<<""<<k<<end1; }

    A. 2,6

    B.3,5

    C.4,7

    D.3,6


    正确答案:D
    解析:程序中首先定义字符数组a,然后在while循环中统计字符a和b的个数。其中j记录a的个数,k记录b的个数。第一个if语句是当第i个字符为a时,i加1;第二个if语句是当第i个字符为b时,k加1。

  • 第5题:

    分析下列程序,其最终执行结果是______。 main() { int n[3],i,j,k; for(i=0;i<3;i++)n[i]=O; k=2; for(i=0;i<k;i++) for(j=0;j<k;j++) n[j]=n[i]-1; printf("%d\n",n[0]); }

    A.-2

    B.-1

    C.0

    D.-3


    正确答案:D
    解析:当i为0,内循环在j为0时,执行n[j]=n[i]-1;,即n[0]=n[0]-1, n[0]值变为-1:在j为1时,执行n[j]=n[i]-1;,即n[1]=n[0]-1,将-2赋给n[1]。当i为1时,内循环在j为0时,执行n[j]=n[i]-1;,即n[0]=n[1]-1,n[0]值变为-3;在j为1时,执行n[j]=n[i]-1;,即n[1]=n[1]-1,将-3赋给n[1];最后n[0]和n[1]的值均为-3。

  • 第6题:

    在执行完下面的程序后,变量k的值为【 】。

    int i, j, k;

    for(i=0, j=10; i<:j; i++,j--) k=i+j;


    正确答案:10
    10

  • 第7题:

    下列程序的输出结果是【】。 include void main() { int i(1),j(2),k(3),a(10); if(!i

    下列程序的输出结果是【 】。

    include<iostream.h>

    void main()

    {

    int i(1),j(2),k(3),a(10);

    if(!i)

    a--;

    else if(j)

    if(k)a=5;

    else

    a=6;

    a++;

    cout<<a<<endl;

    if(i<j)

    if(i!=3)

    if(!k)

    a=1;

    else if(k)

    a=5;

    6+=2;

    cout<<a<<endl;


    正确答案:6 7
    6 7

  • 第8题:

    有如下程序段#include "stdio.h"void fun(int *a,int *b,int *c,int *d,int *e){ int i,j,k,m; for(i=0;i< *a;i++) for(j=0;j< *b;j++)  for(k=0;k<*c;k++)  for(m=0;m< *d;m++)  ++*e;}main(){ int a=10,b=10,c=10,d=10,e=0; fun(&a,&b,&c,&d,&e); printf("%d\n",e);} 则程序段的输出结果是A.10000 B.1000 C.100 D.0


    正确答案:A
    在本题中,程序首先定义了一个无返回值的函数fun,该函数带有五个整型的指针形参变量,然后通过一个四层循环来操作++*e;语句,由于*与++运算符的优先级一样,它们都是自右至左结合的操作,因此,++*e等价于++(*e),这个操作可描述为:先用地址取值,然后对其进行自加,由于是通过传址传值法的,因此,还需要将相加后的结果传递到实参中。
    在主函数中,定义五个整型变量并分别赋初值,然后调用fun函数,传递的参数是刚定义的五个整型变量的地址,采用的是传址传值法,能为实参带回一个结果值。从fun函数中我们不难看出,当变量a,b,c,d分别为10时,循环总共执行10000次,即自加进行了10000次,而且每次自加后都改变了实参的结果。因此,循环结束后,变量e的值为10000。本题的正确答案是A。

  • 第9题:

    有以下程序: main() {int a[4][4]={{1,4,3,2,},{8,6,5,7,},{3,7,2,5,},{4,8,6,1,)},i,j,k,t; for(i=0;i<4;i++) for(j=0;j<3;j++) for(k=j+1;k<4;k++) if(a[j][i]>a[k][i]){t=a[j][i];a[j][i]=a[k][i];a[k][i]=t;}/*按列排序*/ for(i=0;i<4;i++)printf("%d,",a[i][i]); } 程序运行后的输出结果是( )。

    A.1,6,5,7,

    B.8,7,3,1,

    C.4,7,5,2,

    D.1,6,2,1,


    正确答案:A
    解析:本题首先定义了一个4行4列的二维数组,并用了三层for循环来进行由小到大的排序。外层循环变量i表示数组的列.第二层循环变量j表示数组的行,第三层循环用于求第i列第j行的最小值,其中通过if语句对相关数值进行比较和交换。最后通过for循环对排序后数组对角线上的元素输出。

  • 第10题:

    下面程序运行结束后,k的值为________。

    include <iostream.h>

    void main( )

    {int i,j,k;

    for(i=0;j=10;i<=j;i++,j--)

    k=i+j;

    cout<<k;

    }


    正确答案:
    10

  • 第11题:

    下列程序段的时间复杂度为()。for(i=0;i<m;i++)for(j=0;j<t;j++)e[i][j]=0;for(i=0;i<m;i++)for(j=0;j<t;j++)for(k=0;k<n;k++)c[i][j]_c[i][j]+a[i][k]×b[k][j];

    A.O(m×n×t)
    B.O(m+n+t)
    C.O(m×t+n)
    D.O(m+n×t)

    答案:A
    解析:
    在程序段中,有两段循环程序,第一段是一个双层嵌套循环,另一个是三层嵌套循环,所以基本操作是c[i][j]=c[i][j]+a[i][k]×b[k][j],此基本操作共执行m×t×n次。

  • 第12题:

    设i,j,k均为int型变量,则执行完for循环 for(i=0,j=10;i<=j;i++,j--) k=i+j;     后,k的值为()


    正确答案:10

  • 第13题:

    设i,j,k均为int型变量,则执行完for(i=0,j=10;i<=j;i++,j-- k=i+j;语句后,k的值为【8】 。


    正确答案:
    10

  • 第14题:

    有以下程序: include usingnamespacestd; intmain() { intnum[2][3],*p; intt,i,j,k=

    有以下程序: #include <iostream> using namespace std; int main() { int num[2][3],*p; int t,i,j,k=10; p=num[0]; for(i=0;i<2;i++) { for(j=0;j<3;j++) { k++; *p=k; for(t=2;t<*p;t++) { if(!(*p%t)) { j--; *p--; break; } *p++; } } cout<<*(p-1)<<end1; return 0; } 程序运行后的输出结果是( )。

    A.19

    B.11

    C.29

    D.23


    正确答案:C
    解析:本题考核数组与指针的关系。程序首先初始化指针p,让其指向二维数组num的首元素,即num[0][0]。程序中,第1个for循环是为二维数组的每行元素赋值而设置的循环,第2个for循环是为二维数组的每列元素赋值而设定的,第3个for循环是为判断数组元素是否是素数而设置的。在第3个for循环中,如果*p的值能被小于它的数整除(即不是素数),则执行“j--;*p--;”,然后跳出第3个for循环。j--的含义是让其前面的赋值语句重新赋值,而*p--的含义是使指针指向前一个单元。语句“*p++;”将指针移到下一个单元,在下一次循环时,k加1,并k赋给*p,看*p是否为素数,这样一直到满足条件为止,即数组num[2][3]中的数都为素数。最后数组num中各元素的值分别为大于10的素数,即分别为:11,13;17,19,23,29。程序最后要求输出*p的值,由于此时指针已指向数组num的最后一个元素,即num[1][2]。所以输出的值是29。

  • 第15题:

    下列程序的输出的结果是()。includevoid main(){int i,k,a[10],p[3];k=5;for (i=0;i

    下列程序的输出的结果是( )。 #include<iostream.h> void main() { int i,k,a[10],p[3]; k=5; for (i=0;i<9;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; cout<<k; }

    A.20

    B.21

    C.22

    D.23


    正确答案:B
    解析:程序中首先在第一个for循环中将a每一个元素赋值为0,1,2……。然后在第二个循环中p的第i元素为a中的第i*(i+1),即0,2,6,第三个循环中每个p中的元素值乘以2,然后加上5,累加。答案为21。

  • 第16题:

    有以下程序 main() { int x[]={1,3,5,7,2,4,6,0},i,j,k; for(i=0;i<3;i++) for (j=2;j>=i;

    有以下程序

    main( )

    { int x[ ]={1,3,5,7,2,4,6,0},i,j,k;

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

    for (j=2;j>=i;j--)

    if(x[j+1]>x[j]){ k=x[j];x[j]=x[j+1];x[j+1]=k;}

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

    for(j=4;j<7-i;j++)

    if(x[j+1]>x[j]){ k=x[j];x[j]=x[j+1];x[j+1]=k;}

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

    if(x[j]>x[j+1]){ k=x[j];x[j]=x[j+1];x[j+1]=k;}

    for (i=0;i<8;i++) printf("%d",x[i]);

    printf("\n");

    }

    程序运行后的输出结果是:

    A.75310246

    B.1234567

    C.76310462

    D.13570246


    正确答案:A
    解析:程序运行的输出结果是75310246。

  • 第17题:

    下面程序的输出结果是______。 main() { int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int(*p)[4]=a,i,j,k=0; for(i=0;i<3;i++) for(j=0;j<2;j++) k=p[i][j]; printf("%d\n",k); }

    A.17

    B.18

    C.19

    D.23


    正确答案:C
    解析:p是指向长度为4的一维数组的指针变量,可看作是二维数组a的行指针,可以像使用数组名一样通过p带数组下标的形式来引用数组中元素,变量k最后是元素a[2][1]的值。

  • 第18题:

    有以下程序main(){ int x[]={1,3,5,7,2,4,6,0},i,j,k; for(i=0;i<3;i++) for(j=2;j>=i;j--) if(x[j+1]>x[j]) { k=x[j]; x[j]=x[j+1]; x[j+1]=k; } for (i=0;i<3;i++) for(j=4;j<7-i;j++) if(x[j]>x[j+1]) { k=x[j]; x[j]=x[j+1]; x[j+1]=k; } for (i=0;i<8;i++) printf("%d",x[i]); printf("\n");}程序运行后的输出结果是A.75310246 B.01234567 C.76310462 D.13570246


    正确答案:A
    for(i=0;i<3;i++)
         for(j=2;j>=i;j--)
            if(x[j+1]>x[j]){  k=x[j];x[j]=x[j+1];x[j+1]=k;}
    此段程序的作用是将数组x[0]~x[3]中的数由大到小进行排列,运行此段程序后,x[]中的值变为x[]={7,5,3,1,2,4,6,0}
    for(i=0;i<3;i++)
        for(j=4;j<7-i;j++)
            if(x[j]>x[j+1]){ k=x[j];x[j]=x[j+1];x[j+1]=k;}
    此段程序的作用是将数组x[4]~x[7]中的数由小到大进行排列,运行此段程序后,x[]中的值变为x[]={7,5,3,1,0,2,4,6},最后通过一个循环将X[]中的数依次输出。

  • 第19题:

    有以下程序:main(){int x[]={1,3,5,7,2,4,6,0),i,j,k;for(i=0;i<3;i++)for(j=2;i>=i;j--)if( x[j

    有以下程序: main() { int x[]={1,3,5,7,2,4,6,0),i,j,k; for(i=0;i<3;i++) for(j=2;i>=i;j--) if( x[j+1]>x[j]){ k=x[j];x[j]=x[j+1];x[j+1]=k; } for(i=0;i<3;i++) for(j=4;j<7-i;j++) if(x[j]>x[j+1]){ k=x[j];x[j]=x[j+1];x[j+1]=k; } for(i=0;i<8;i++) printf("%d",x[i]); printf("\n"); } 程序运行后的输出结果是( )。

    A.7.53102e+007

    B.01234567

    C.7.63105e+007

    D.1.35702e+007


    正确答案:A
    解析:主函数中定义了一个整型数组x,并初始化。接着执行了一个二重for循环,该二重循环的作用是将数组的前4个元素按从大到小排序,接着用了一个二重循环(也是冒泡算法)将数组的后4个元素按从小到大的顺序排序,故最后依次输出数组的元素值为75310246,所以,4个选项中选项A符合题意。

  • 第20题:

    以下程序的输出的结果是()。includevoid main( ){int i,k,a[10],p[3];k=5;for(i=0;i

    以下程序的输出的结果是( )。 #include<iostream.h> void 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; cout<<k; }

    A.20

    B.21

    C.22

    D.23


    正确答案:B

  • 第21题:

    以下程序的输出的结果是()。includevoid main(){int i,k,a[10],p[3];k=5;for(i=0;i<

    以下程序的输出的结果是( )。 #include<iostream.h> void main() { int i,k,a[10],p[3]; k=5; for(i=0;i<9;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; cout<<k; }

    A.20

    B.21

    C.22

    D.23


    正确答案:B
    解析:程序中首先在第一个for循环中将数组a每一个元素赋值为0,1,2,……。然后在第二个循环中数组p的第i元素为a中的第i*(i+1),即0,2,6,第三个循环中数组p中的每个元素值乘以2,然后加上5,累加。

  • 第22题:

    有以下程序:main(){int x[]={1,3,5,7,2,4,6,0},i,j,k;for(i=0;i<3;i++)for(j=2;j>=i;j--)if(x[j+

    有以下程序: main() { int x[]={1,3,5,7,2,4,6,0},i,j,k; for(i=0;i<3;i++) for(j=2;j>=i;j--) if(x[j+1]>x[j]) { k=x[j]; x[j]=x[j+1]; x[j+1]=k; } for(i=0;i<3;i++) for(j=4;j<7-i;j++) if(x[j]>x[j+1]) { k=x[j]; x[j]=x[j+1]; x[j+1]=k; } for(i=0;i<8;i++) printf("%d",x[i]); printf("\n"); } 程序运行后的输出结果是( )。

    A.75310246

    B.1234567

    C.76310462

    D.13570246


    正确答案:A
    解析:主函数中定义了一个整型数组x,并初始化。接着执行了一个二重for循环,在该二重循环的作用是将数组的前4个元素按从大到小排序,接着用了一个二重循环(也是冒泡算法)将数组的后4个元素按从小到大的顺序排序,故最后依次输出数组的个元素的值为75310246,所以,4个选项中选项A符合题意。

  • 第23题:

    i,j,k均为int型变量,则执行完for循环 for(i=0,j=10;i<=j;i++,j--) k=i+j; 后,k的值为()


    正确答案:10

  • 第24题:

    填空题
    i,j,k均为int型变量,则执行完for循环 for(i=0,j=10;i<=j;i++,j--) k=i+j; 后,k的值为()

    正确答案: 10
    解析: 暂无解析