更多“语句 k=(m=5,n=++m); 运行之后,变量k、m、n的值依次为()。”相关问题
  • 第1题:

    以下程序的运行结果是 int k=0; void fun(int m) {m+=k;k+=m;printf("m=%d k=%d",m,k++);} main() {int i=4; fun(i++); printf("i=%d k=%d\n",i,k); }

    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,所以就调用fun(4),则输出“m=4k=4”。然后变量k增1等于5,变量i增1等于5,所以main()函数的“pdntf("i=%d k=%d\ n",i,k);”语句输出“i=5 k=5”。

  • 第2题:

    该程序运行的结果是( )。

    #include

    #include

    #define M 100

    void fun(int m, int *a, int *n)

    { int i,j=0;

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

    if(i%7==0||i==0)

    a[j++]=i;

    *n=j;}

    main()

    { int aa[M],n,k;

    clrscr();

    fun(10,aa,&n);

    for(k=0;k

    if((k+1) ==0)printf("\n");

    else printf("M",aa[k]);

    printf("\n");}


    正确答案:
    7

  • 第3题:

    有如下程序,该程序的执行结果为______。 Dim k As Integer n=5 m=1 k=1 Do While k <= n m=m*2 k=k+1 Loop Print m

    A.1

    B.5

    C.32

    D.40


    正确答案:C

  • 第4题:

    已知int k=10,m=3,n;则下列语句输出结果是printf("%d\n",n=(k%m,k/m));

    A.2

    B.3

    C.4

    D.5


    正确答案:B
    解析:表达式n=(k%m,k/m)实际上是将k/m的结果赋值给了n。逗号表达式中最后一个表达式的值是该逗号表达式的值,所以输出结果为k/m。

  • 第5题:

    以下程序运行后,a的值是 ( ) main( ) { inta,k=4,m=6,*pl=&k,*p2=&m; a=p1=&m; printf("%d\n",a); }

    A.4

    B.1

    C.0

    D.运行时出错,a无定值


    正确答案:C

  • 第6题:

    有以下程序:includemain(){int a=1,b=2,m=0,n=0,k; k=(n=b>a)||(m=a

    有以下程序: #include <stdio.h> main() { int a=1,b=2,m=0,n=0,k; k=(n=b>a)||(m=a<b); printf("%d,%d\n",k,m); } 程序运行后的输出结果是( )。

    A.0,0

    B.0,1

    C.1,0

    D.1,1


    正确答案:C
    解析:本题考查逻辑或运算。因为b>a为真,即n=1,则m不需再计算,保持原值,因此k值为1,m值仍为0。

  • 第7题:

    假定w、x、y、z、m均为int型变量,有如下程序段:

    N=1;x=2;y=3;z=4;

    m=(W<X)?W:K;

    m=(m<y)?m:y;

    m=(m<z)?m:z;

    则该程序运行后,m的值是【 】


    正确答案:√
    1 解析:此题考查条件表达式的运用。第1条语句执行后,变量m的值为1。第2条语句执行后,变量m的值为1。第3条语句执行后,变量m的值为1。

  • 第8题:

    下列语句序列执行后,K的值是______。 public class Test11 { public static void main(String[] args) { int m=3, n=6, k=0; while ((m++)<(n--)) ++k; System.out.println (k); } }

    A.0

    B.1

    C.2

    D.3


    正确答案:C
    解析:变量m和n在条件中都是采用了先使用后改变的方式,第一遍循环执行时,m=3,n=6满足条件,执行循环体k=1,然后m=4,n=5;第二遍循环,满足条件,执行循环体,得到k=2,然后m=5,n=4;第三遍循环,判断条件时发现不满足,结束循环,因此k=2。

  • 第9题:

    下列语句序列执行后,k的值是( )。 public class Test{ public static void main(String[] args) { int m=3, n=6, k=0; while((m++)<(n--)) ++k; System.out.println(k); } }

    A.0

    B.1

    C.2

    D.3


    正确答案:C
    解析:变量m和n在条件中都采用了先使用后改变的方式,第一遍循环执行时,m=3,n= 6满足条件,执行循环体k=1,然后m=4,n=5;第二遍循环,满足条件,执行循环体,得到k=2,然后m=5,n=4;第三遍循环,不满足条件,结束循环,输出结果,k=2。因此答案为C。

  • 第10题:

    阅读以下FORTRAN程序
    READ(*,*)M,N
    K=MOD(M,N)
    10 IF(K.GT.0)THEN
    M=N
    N=K
    K=MOD(M,N)
    GOTO 10
    END IF
    WRITE(*,*)N
    END
    若运行以上程序时,由键盘输入25,11,则程序输出为( )。

    A.3
    B.2
    C.1
    D.0

    答案:C
    解析:
    K=MOD(M,N)=MOD(25,11)=3>0
    则M=11,N=3,K=MOD(11,3)=2>0
    则M=3,N=2,K=MOD(3,2)=1>0
    则M=2,N=1,K=MOD(2,1)=0,可得最后N=1

  • 第11题:

    设N=886,M=345,K=″M+N″,表达式1+&K的值是().

    • A、数据类型不匹配
    • B、1232
    • C、346
    • D、1+M+N

    正确答案:B

  • 第12题:

    当主量子数n=1,2,3,4,5,6时,用字母表示壳层依次为()

    • A、K、L、M、O、N、P
    • B、K、L、M、N、O、P
    • C、K、L、M、O、P、N
    • D、K、M、L、N、O、P

    正确答案:B

  • 第13题:

    下列程序的运行结果是( )。 PriVate Sub Form_CUCk() Dimk As Integ<er n=5 m=1 k=1 Do m=m+2 k=k+1 Loop Until k>n Printm End Sub

    A.1

    B.12

    C.11

    D.32


    正确答案:C

  • 第14题:

    已知有一维数组A[0...m*n-1],若要对应为m行、n列的矩阵,则下面的对应关系______可将元素A[k](0≤k<m*n)表示成矩阵的第i行、第j列的元素(0≤i<m,0≤j<n)。

    A.i=k/n,j=k%m

    B.i=k/m,j=k%m

    C.i=k/n,j=k%n

    D.i=k/m,j=k%n


    正确答案:C
    解析:本题其实是求一个一维数组A[m*n)向二维数组B[m][n]的转化问题。最原始的方法就是把A数组的前n个元素放到B数组的第一行中,A数组的第n个元素放到B数组的第二行中,依次类推,A数组的最后n个元素放到B数组的最后一行中。
      要求A[k]在B数组中的位置,首先确定A[k]处在哪一行,根据上面的存放方法,显然,应该是k/n行。然后再确定处在k/n行的哪一列,显然是k%n。

  • 第15题:

    执行以下程序的输出结果是( )。 includedefine M 5define N M+M main(){int k; k=N*N*5;

    执行以下程序的输出结果是( )。

    include<stdio.h>

    define M 5

    define N M+M

    main()

    { int k;

    k=N*N*5;printf(”%d\n" ,k);

    }


    正确答案:55
    55 解析:本题考查的重点是对宏定义的理解。#define指令定义一个标识符和一个串,编译程序在对C源程序处理时.发现该标识符都用该串替换,因此,在语句k=N*N*5将替换成k=M+M*M+M*5后,M被替换成5,从而k=5+5*5+5*5=55。

  • 第16题:

    下列正确的变量声明是( )

    A.int m;n;k;

    B.unsigned int m,n,k;

    C.double int m,n,k;

    D.int m,n,k


    正确答案:B

  • 第17题:

    下列程序的运行结果是 Private Sub Form_Click() Dim k As Integer n=5 m=1 k=1 Do m=m+2 k=k+1 Loop Until k>n Print m End Sub

    A.1

    B.12

    C.11

    D.32


    正确答案:C
    解析:本题主要是对Do...Loop Until循环语句的考查。当Loop Until后的条件不成立时,即退出循环。该题在k为1、2、3、 4、5时,都执行了循环语句,故一共执行了五次,同时m=m+2也执行了五次,最后m的值增加了10,故运行结果为11。

  • 第18题:

    有以下程序: include using namespace std; int main() {intm[5],n[5],*px,*py,k;px=m

    有以下程序:

    include <iostream>

    using namespace std;

    int main()

    {

    int m[5],n[5],*px,*py,k;

    px=m;

    py=n;

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

    {

    *px=k;

    *py=2*k;

    cout<<m[k-1]<<n[k-1];

    px++;py++;

    }

    cout<<end1;

    return 0;

    }

    运行后的输出结果为【 】。


    正确答案:122436
    122436 解析:本题考核数组与指针之间的相互关系。题中定义了两个指针 px.py并分别指向数组m和n,然后通过指针px.和py分别给数组m和n赋值,并输出其赋值结果。

  • 第19题:

    下列语句执行之后,m、n、k的值分别为______。 public class ex44 { public static void main(String[] args) { byte m=5; int n=3; boolean k; k=--m!=++n; } }

    A.4, 4, true

    B.5, 3, true

    C.5, 3, false

    D.4, 4, false


    正确答案:D

  • 第20题:

    运行下列语句后,输出的结果是( )。 Option Base 1 Dim a i=1 a=Array(l, -2, 9, 0, -1, 9) Do k=a(i) For m = 10 To k Step -2 n=k+m Next m Print n+m i=i+1 Loop While Abs(m+n) <> 27

    A.3 27-8

    B.3-8 27

    C.-8 27 3

    D.-8 3 27


    正确答案:B
    解析:本程序中,外层循环是Do…Loop While循环,内层循环是for循环。程序执行如下:①当i=1,k=a(i)=1,for循环执行5次,n=3,m=0;Print n+m→输出3;i=i+1-2。②当i=2,k=a(i)=2,for循环执行7次,n=-4, m=-4;Print n+m→输出-8;i=i+1=3。③当i=3,k=a(i)=9,for循环执行1次,n=19,m=8;print n+m→输出27;i=i+1=4;此时条件成立,退出Do循环。

  • 第21题:

    已知有一维数组A(0..m*n-1],若要对应为m行、n列的矩阵,则下面的对应关系(4)可将元素A[k](0≤k<m*n)表示成矩阵的第i行、第j列的元素(0≤i<m,0≤j<n)。

    A.i=k/n,j=k%m

    B.i=k/m,j=K%m

    C.i=k/n,j=k%n

    D.i=k/m,j=k%n


    正确答案:C
    解析:此题是求一维数组向二维数组转化的问题。最原始的方法就是把数组A的前n个元素放到数组B的第一行,数组A的第n个元素放到数组B的第二行中,依次类推,数组A的最后n个元素放到数组B的最后一行中。求且[幻在数组B中的位置,应先确定A[k]处在哪一行,显然应该是k/n行,然后再确定处在k/n行的哪一列,显然是k%n列。

  • 第22题:


    A.AM>N>K
    B.M>K>N
    C.K>M>N
    D.K>N>M

    答案:C
    解析:

  • 第23题:

    已知两种亲型配子为M N K,m n k,两种双交换配子为M N k,m n K.则三个基因的排列顺序是()。


    正确答案:M、K、N

  • 第24题:

    单选题
    有以下程序:#include int a=2; int f(){ static int n;  int m;  m=n=0;  n++; a++; m++; return m+n+a; }main(){ int k;  for(k=0;k<3;k++)  printf(%d, ,f()); printf(); }程序的运行结果是(  )。
    A

    5,6,7,

    B

    5,7,9,

    C

    5,8,11,

    D

    5,5,5,


    正确答案: B
    解析:
    static变量编译时,将其分配在内存的静态存储区中,在整个程序运行期间都不释放这些存储单元,即使退出函数,下次再进入该函数时,静态局部变量仍使用原来的存储单元,值是上一次函数调用结束时的值。程序执行过程为:k=0,a=2,n=0,m=0;n=1,a=3,m=1,返回5;k=1,a=3,n=0,m=0;n=1,a=4,m=1,返回6;k=2,a=4,n=0,m=0;n=1,a=5,m=1,返回7;k=3退出循环。答案选择A选项。