参考答案和解析
B
更多“下述语句执行后,变量k的值是()。 int k=1; while (k++<10) ;”相关问题
  • 第1题:

    设有程序段int k=10;while(k=0)k=k-1;则语句k=k-1执行10次。()

    此题为判断题(对,错)。


    参考答案:错误

  • 第2题:

    请阅读以下程序:includevoid fun(int s[]){static int j=0; dos[j]+=s[j+1]; while(++

    请阅读以下程序: #include<stdio.h> void fun(int s[]) { static int j=0; do s[j]+=s[j+1]; while(++j<2);} main() { int k,a[10]={1,2,3,4,5}; for(k=1;k<3;k++)fun(a); for(k=0;k<5;k++)printf("%d",a[k]);} 上面程序的输出是

    A.34756

    B.23445

    C.35745

    D.12345


    正确答案:C
    解析:本题考查了通过数组首地址引用数组元素的方法。第一次执行fun(a)后,a[0]=3,a[1]=5。第二次执行fun(a)时,因为static变量j保存着上次执行时的值为2,所以a[2]=7,最后数组a={3,5,7,4,5},所以正确答案为C)。

  • 第3题:

    有以下程序

    #include<stdio.h>

    void fun(int *s)

    { static int j=0;

    do { s[j]=s[j]+s[j+1]; )while(++j<2);

    }

    main( )

    { int k,a[10]={1,2,3,4,5);

    for(k=1;k<3;k++)fun(a);

    for(k=0;k<5;k++)printf(”%d”,a[k]);

    printf("\n");

    }

    程序运行后的输出结果是

    A) 12345

    B)23445

    C)34756

    D) 35745


    正确答案:D
    【答案】D
    【知识点】static变量的使用
    【解析】静态局部变量在函数内定义,它的生存期为整个源程序。第一次k=1调用结束后,s[0]的值为3,s[1]的值为5,j的值为2。当k=2时,继续调用函数fun,此时j的值为2,但是因为do while语句先执行后判断,所以执行了s[2]=s[2]+s[3],所以s[2]的值变成了7。循环结束回到主函数,k的值为3,不满足条件结束循环。最后打印输出a数组元素的值。

  • 第4题:

    执行语句序列“int k=0; do k++; while(k*k<20);”后,k的值为______。


    正确答案:5
    5

  • 第5题:

    现有定义int k=1;则执行语句while(++k<4);后,k的值为( )


    正确答案:A
    while循环是先判断循环条件之后再进入循环体。这个题目的循环体是空语句,每次做的仅仅是判断循环的条件,由于++运算优先于,所以每次都先++,后比较。

  • 第6题:

    下列程序段执行后,k的值是 ( ) int i=6,j=8,k=10,m=7; if(i>||m<k--) k++; else k--;

    A.12

    B.11

    C.10

    D.9


    正确答案:C

  • 第7题:

    下列语句序列执行后,k的值是 ( ) int j=8,k=15; for(int i=2;i!=j;i++) {j-=2;k++;}

    A.18

    B.15

    C.16

    D.17


    正确答案:D

  • 第8题:

    以下程序段的while循环执行的次数是______。int k=0;while(k=1)k++;

    A.无限次

    B.有语法错,不能执行

    C.一次也不执行

    D.执行1次


    正确答案:A

  • 第9题:

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


    正确答案:10
    10 解析:该for语句以i为0、j为10初始化,循环条件是i=j,每次循环后i增1、j减1,循环体是将i与j的和赋给k。这样变量k将保存的是最后一次赋给它的值。一次循环后i为1、j为9,二次循环后i为2、j为 8,……,五次循环后i为5、j为5,继续第六次循环,将i与j的和10存于k后,i为6、j为4,结束循环。所以循环执行后k为10。

  • 第10题:

    设有程序段:int k=10;while(k=0)k=k-1;,则下面描述正确的是()。

    • A、while循环执行10次
    • B、循环是无限循环
    • C、循环体语句一次也不执行
    • D、循环体语句执行一次

    正确答案:C

  • 第11题:

    程序段int k=10; while(k=0) k=k-1循环体语句执行()次.


    正确答案:0

  • 第12题:

    单选题
    下面程序段在执行完成后,a的值为() int j=0,k=0,a=0; while(j<3) {j++;a=a+1;k=0;while(k<=2) {k++;if(k%2!=0)continue;a=a+1;} a=a+1;}
    A

    6

    B

    8

    C

    9

    D

    10


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

  • 第13题:

    将下面的语句段(A) 补充完整,使其和语句段(B) 在功能上完全等价。

    (a) double s=0.0;

    【 】;

    int k=0;

    do{

    s+=d;

    k++;

    d=1.0/(k*k+1);

    }while(【 】);

    (b) double s=1.0;

    for(int k=1;k<=10;k++) s+=1.0/(k*(k+1));


    正确答案:d=1.0 k=10
    d=1.0 k=10 解析:本题考核while循环与for循环之间的转换。只要把握住循环的起始条件、结束条件和变量控制,就易解这种类型的题目。

  • 第14题:

    若k是int类型变量,且有以下for语句

    for(k=-1;k<0;k++) printf(”****\n”);

    下面关于语句执行情况的叙述中正确的是

    A)循环体执行一次

    B)循环体执行两次

    C)循环体一次也不执行

    D)构成无限循环


    正确答案:A
    【答案】A
    【知识点】for语句
    【解析】开始进入循环时,k的值是-1, 小于0所以条件满足,执行一次循环体。k++后值为0,所以条件不满足,结束循环。

  • 第15题:

    有以下程序段int k=0;while(k=1)k++;while 如循环执行的次数是

    A.无限次

    B.有语法错,不能执行

    C.一次也不执行

    D.执行1次


    正确答案:A
    解析:注意本题有个陷阱,马虎的考生将纷纷落马。本来while中的表达式应为k==1,而本题却为k=1,是赋值表达式而不是逻辑表达式。因此,编译器将其值一直认为是1,因此表达式一直为真,陷入无限次的循环。

  • 第16题:

    当执行以下程序后,i的值是5,j的值是4,k的值是【 】。

    int a, b, c, d, i, j, k;

    a=10; b=c=d=5; i=j=k=0;

    for(;a>b; ++b) i++;

    while(a>++c) j++;

    do {

    k++;

    }while(a>d++);


    正确答案:6
    6

  • 第17题:

    设有程序段: int k=12: while(k=1)k=k一1; 则下列描述中正确的是( )。A.while循环执行10次SXB

    设有程序段: int k=12: while(k=1)k=k一1; 则下列描述中正确的是( )。

    A.while循环执行10次

    B.循环是无限循环

    C.循环体语句一次也不执行

    D.循环体语句执行一次


    正确答案:C
    本题考查while,while循环表达式k=1是个赋值表达式而不是逻辑表达式,k的初值为12不符合循环条件,所以循环体一次也不执行。

  • 第18题:

    设有程序段:

    int k=12;

    while(k=1) k=k-1;

    则下列描述中正确的是( )。

    A.while循环执行10次

    B.循环是无限循环

    C.循环体语句一次也不执行

    D.循环体语句执行一次


    正确答案:C
    解析:本题考查while循环。while循环的控制表达式k=1是个赋值表达式而不是逻辑表达式,所以循环体一次也不执行。

  • 第19题:

    执行下面的程序段后,变量k中的值为 include void main( ) { int k=3,s[2]; s[

    执行下面的程序段后,变量k中的值为 #include<iostream.h> void main( ) { int k=3, s[2]; s[0]=k; k=s[1] *10; cout < < k;}

    A.不定值

    B.33

    C.30

    D.10


    正确答案:A
    解析:如果定义数组时没有进行初始化,则其各个成员的值不确定。注意:使用数组时应先赋初值。

  • 第20题:

    以下程序的输出结果是 void fun(int*s) { static int j=0; do s[j]+=s[j+1]; while(++j<2);} main() { int k,a[10]={1,2,3,4,5}; for(k=1;k<3;k++)fun(a); for(k=0;k<5;k++)printf("%d",a[k]);}

    A.34756

    B.23345

    C.35745

    D.12345


    正确答案:C
    解析:本题考查了通过数组首地址引用数组元素的方法。第一次执行fun(a)后,a[0]=3,a[1]=5。第二次执行fun(a)时,因为static变量j保存着上次执行时的值为2,所以a[2]=7,最后数组a={3,5,7,4,5}。故正确答案为选项C)。

  • 第21题:

    下面语句序列执行后,K的值是() int i=6,j=8,k=10,m=7; if(!(i>j|m>k++)) k++;

    • A、9
    • B、10
    • C、11
    • D、12

    正确答案:D

  • 第22题:

    下面程序段在执行完成后,a的值为() int j=0,k=0,a=0; while(j<3) {j++;a=a+1;k=0;while(k<=2) {k++;if(k%2!=0)continue;a=a+1;} a=a+1;}

    • A、6
    • B、8
    • C、9
    • D、10

    正确答案:C

  • 第23题:

    有以下程序段 int k=0 while(k=1)k++; while 循环执行的次数是()

    • A、无限次
    • B、有语法错,不能执行
    • C、一次也不执行
    • D、执行1次

    正确答案:A

  • 第24题:

    单选题
    下面语句序列执行后,K的值是() int i=6,j=8,k=10,m=7; if(!(i>j|m>k++)) k++;
    A

    9

    B

    10

    C

    11

    D

    12


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