更多“凯歌kǎi ɡē ”相关问题
  • 第1题:

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

    A.6,2,1,1,

    B.6,4,3,2,

    C.1,1,2,6,

    D.2,3,4,6,


    正确答案:B
    解析:该程序实现对二维数据反对角线上的元素从大到小的排序,并输出排序后的数组的第一行。外层循环变量i表示第i行第i列的数字,内层循环变量k表示第i+1行第i+1列的数字,if语句对相关数值进行比较和交换,最后数组变为a[4][4]={{6,4,3,2,},{8,2,5,7,},{3,7,1,5,},{4,8,6,1,}},并将第一行输出。

  • 第2题:

    以下程序的运行结果是( )。

    A.m=4 k=5 i=5 k=5

    B.m=4 k=4 i=5 k=5

    C.m=4 k=4 i=4 k=5

    D.m=4 k=5 i=4 k=5


    正确答案:B
    由于在main函数中,变量i=4,所以

  • 第3题:

    下面程序段的执行结果为( )。 int i=3,j=0,k=0; for(;i>0;--i) { ++k; do { ++j; if (i!=j) break; ++k; }while(j<5); } printf("i=%d j=%d k=%d\n",i,j,k);

    A.i=0 j=4 k=12

    B.i=0 j=5 k=5

    C.i=0 j=4 k=4

    D.i=0 j=3 k=3


    正确答案:C
    解析:程序开始时(i,j,k)三个值分别为(3,0,0),然后进入for循环,由于for的第一条语句空缺,所以不做初始化,此时i为3满足循环条件,进入循环体。然后执行“++k;”使k变成1,再无条件进入do-while循环体执行“++j;”使j变成1,此时i和j不相等所以执行break;语句跳出do-while循环。准备开始第二遍for循环,i的值被减1,此时3个值分别为(2,1,1),i为2满足循环条件,进入循环体。然后依次执行++k;和++j;使它们增1,此时i和j同为2相等,所以跳过break;语句再执行一次++k;使k为3,由于此时j满足do-while的循环条件,所以下一步回到前面执行do后面的++j;语句,使j为3,此时i和j不相等,所以执行break;跳出do-while循环。准备开始第三遍for循环,i的值被减1,此时3个值分别为(1,3,3),i为1满足循环条件,进入循环体。然后依次执行++k;和++j;使它们增1,此时i和j不相等,所以执行break;跳出do-while循环。准备开始第四遍for循环,i的值被减1,此时3个值分别为(0,4,4),i为0不满足for语句的循环条件,所以执行循环体后面的printf()函数输出3个值,故正确答案为C。

  • 第4题:

    定义数组char a[]=}'0','1','2','3');,则将该数组中元素按反序转换成整数,正确的程序段是______。

    A.int k=0,i; for(i=0;i<4;i++) k=k*10+a[i]-48;

    B.int k=0,i; for(i=3;i>=0;i--) k=k*10+a[i]-'0';

    C.int k=0,i; for(i=3;i>=0;i--) k=k+a[i]-'0';

    D.int k,i; for(i=3;i>=0;i--) k=k*10+a[i]-'0';


    正确答案:B
    解析:将字符数组中的元素按反序转换成整数,数组第一个元素应当是四位整数的个位,依次类推,字符数字转换为数字的基本方法是将该字符的ASCII码值减去字符0的ASCII码值,程序的输出结果是3210。

  • 第5题:

    下面程序的输出是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
    本题的考查点是for循环。
    第一个循环
    for(i=0;i<10;i++)
          arr[i]=i;
    是将数组元素0~9分别赋值为0~9。
    第二个循环
    for(i=1;i<4;i++)
          k+=arr[i]+i;
    可以变化成以下形式:
    for(i=1;i<4;i++)
          k=arr[i]+i+k;
    计算数组arr[1]、arr[2]、arr[3]的各个值,可以得到k的最终值为12。

  • 第6题:

    以下程序的输出结果是( )。 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
    第一个循环的作用是把从0~9的数赋给a数组;第二个循环的作用是把a数组中的部分元素放到数组P中,即p[0]=a[0]=0,p[1]=a[2]=2,p[2]=a[6]=6;第三个循环的作用是把P中的各个元素的两倍之和放到k中,即k=5+0+4+12=21。

  • 第7题:

    下面程序的输出为【】。include void main(){int a[10],i, k=0;for(i=0,i<10;i++)a[i]=

    下面程序的输出为【 】。

    include <iostream.h>

    void main()

    {

    int a[10],i, k=0;

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

    a[i]=i;

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

    k+=a[i]+i;

    cout<<k<<end1;

    }


    正确答案:12
    12

  • 第8题:

    以下程序的输出结果是 ______ 。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。

  • 第9题:

    以下与k=i++完全等价的表达式是()

    • A、i=i+1,k=i
    • B、k=i,i=i+1
    • C、k=++i
    • D、k+=i+1

    正确答案:B

  • 第10题:

    韦伯定理的标准方程式为()。

    • A、ΔI/K=I
    • B、K/I=ΔI
    • C、ΔI/I=K
    • D、I/ΔI=K

    正确答案:C

  • 第11题:

    请读程序: main() {inti,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*(i1)]; for(i=0;i<3;i)k=p[i]*2; printf(“%d、n”,k); } 则上面程序的输出结果是()

    • A、20
    • B、21
    • C、22
    • D、23

    正确答案:B

  • 第12题:

    名词解释题
    凯歌kǎi ɡē

    正确答案: 战争胜利后为了庆祝胜利所唱的歌。
    解析: 暂无解析

  • 第13题:

    以下程序段是函数返回a所指数组中最大的值所在的下标值,横线处的语句为( )。 fun(int*a, int n) { int i,j=0,k; k=j; for(i=j;i<n;i++) if[a[i]>a[k])______; return(k); }

    A.k=i

    B.k=j

    C.i=j

    D.i=n


    正确答案:A
    解析:函数fun中首先定义整型变量k用来存放返回最大值的下标,并将其首先指向第一个元素,即k=j。然后在for循环中依次将当前元素a[i]与标识为最大值的元素进行比较,如果当前元素大于这个标识元素,那么将最大值标识为当前元素,即k=i。

  • 第14题:

    以下程序的输出结果是______。 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
    解析:按照程序的流程走一遍,可以得到p[0]=0,p[1]=2,p[3]=6:执行三次k+=p[i]*2,相当于k=5+0*2+2*2+6*2=21。

  • 第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 arr[8],i,k=0;

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

    arr[i]=i;

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

    k+=arr[i]+i;

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

    }


    正确答案:20
    20

  • 第17题:

    下列程序的输出结果是______。includemain(){int i,j,k,a=3,b=2;i=(--a==b++)?--a;++b;

    下列程序的输出结果是______。#include<stdio.h>main(){ int i,j,k,a=3,b=2; i=(--a==b++)?--a;++b; j=a++;k=b; printf("i=%d,j=%d,k=%d\n",i,j,k);}

    A.i=2,j=1,k=3

    B.i=1,j=1,k=2

    C.i=4,j=2,k=4

    D.i=1,j=1,k=3


    正确答案:D

  • 第18题:

    请读程序: include main( ) { int n[2],i,j,k; { for(i=0,i<2;i + + )n[i]=0;

    请读程序: # include<srdio.h> main( ) { int n[2],i,j,k; { for(i=0,i<2;i + + )n[i]=0; k=2; for(i=0;i<k;i+ +) {for(j=0;j<k;j+ +)n[j]=n[i]+l; print{("%d\n",n[k]); } 上面程序片段输出结果是 ( )

    A.不确定的值

    B.3

    C.23

    D.1


    正确答案:A

  • 第19题:

    堆是一个键值序列{k1,k2,……kn),对i=1,2…,|n/2|,满足(48)。

    A.ki<k2i+1<k2i

    B.ki≤k2i≤k2i+1

    C.ki≤k2i 且ki≤k2i+1(2i+1≤n)

    D.ki≤k2i或ki≤k2i+1(2i+1≤n)


    正确答案:C
    解析:本题考查堆的定义。在数据结构中,堆的定义如下:n个元素的序列{k1,k2,…,kn)当且仅当满足关系ki≤k2i且ki≤k2i+1或者kik2i且ki≤k2i+1(2i+1≤n)时,才称为堆。满足关系ki≤k2i且ki≤k2i+1的是小顶堆,满足关系kik2i且kik2i+1的是大顶堆。

  • 第20题:


    A.I<J<K
    B.I<K<J
    C.J<I<K
    D.K<J<I

    答案:B
    解析:

  • 第21题:

    给出一个由n个数组成的序列A[1…n],要求找出它的最长单调上升子序列,设m[i](1≤i≤n),表示以A[i]结尾的最长单调上升子序列的长度,则m[1]=1,m[i](1

    • A、m[i]=1+max{0,m[k](A[k]<A[i],1≤k<i)}
    • B、m[i]=1+m[k](k=i-1&&i>1)
    • C、m[i]=1+max{0,m[k](A[k]≤A[i],1≤k<i)}
    • D、m[i]=max{0,m[k](A[k]<A[i],1≤k<i)}

    正确答案:A

  • 第22题:

    差别感觉阈限与原刺激量的比值是一个常数,公式为()。(I为原刺激,△I为差别感觉阈限,K为常数)

    • A、K=△I/I
    • B、I/△I=K
    • C、K=I/I·△I
    • D、K/△I=I

    正确答案:A

  • 第23题:

    以下程序的输出结果是(). main()  {int  i,j,k,a=3,b=2;  i=(--a==b++)?--a:++b;  j=a++;k=b;  printf("i=%d,j=%d,k=%d/n",i,j,k);  }

    • A、i=2,j=1,k=3
    • B、i=1,j=1,k=2
    • C、i=4,j=2,k=4
    • D、i=1,j=1,k=3

    正确答案:D