更多“有以下程序main(){ intk=4,n=0; for(;n<k;){ n++;if(n%3!=0)continue;K--;}printf("%d,%d\n",k,n ”相关问题
  • 第1题:

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

    A.6 7 8 9 10

    B.1 3 5 7 9

    C.1 2 3 4 5

    D.6 2 3 4 5


    正确答案:A
    解析:本题主要考查数组元素的地址作为实参,当n=0时,把x[0]的地址传递给被调函数change(),即把形参k和实参x指向同一个存储单元,执行被调函数后k[0]=6,即x[0]=6;当n=1时,执行被调函数后x[1]=7,以此类推,最后得到x数组的值为6,7,8,9,10。

  • 第2题:

    有以下程序:includemain(){int k=4,n=0; for( ;n

    有以下程序: #include <stdio.h> main() { int k=4,n=0; for( ;n<k;) { n++; if(n%3! =0) continue; k--;} printf("%d,%d\n",k,n); } 程序运行后的输出结果是( )。

    A.1,1

    B.2,2

    C.3,3

    D.4,4


    正确答案:C
    解析:本题考查循环和continue语句,continue语句的功能是结束本次循环。n从0开始循环,判断n%3!=0是否成立,如果成立,结束本次循环,继续下一次for循环;否则执行k--,并继续下一次for循环,直至循环结束。在程序中,当n取1,2时,不执行k--,当n取3时,执行k--,k变为3,循环结束,输出k,n的值分别为3,3。

  • 第3题:

    有以下程序: main() { int k=4,n=0; for(;n<k;) { n++; if(n%!=0)continue; k--; } printf("%d\n",k,n); } 程序运行后的输出结果是( )。

    A.1,1

    B.2,2

    C.3,3

    D.4,4


    正确答案:C
    解析:在本程序的for循环中,用到了一个continue语句,continue语句的作用是停止本次循环,即不执行循环体内continue语句后面的其他语句,继续下次循环的条件判断。首先在for循环中n自加1(值变为1),然后执行后面的if语句,由于if语句后面括号的表达式(1%3!=0)的值为真,程序执行continue语句,回到for循环的开始部分,并且判断for循环中的条件表达式(nk)为真,重复执行“n++”;”语句,如此循环直到n=3时,if语句判定条件中表达式(3%3!=0)的值为假,程序执行if语句后面的“k--”语句,此时k的值为3,不满足“nk”,退出for循环。故最后的k和n的值为3和3,选项C符合题意。

  • 第4题:

    有以下程序: main() { int k=4,n=0; for(; n<k;) { n++; if(n%3!=O) continue; k--; } printf("%d,%d\n",k,n); } 程序运行后的输出结果是( )。

    A.1,1

    B.2,2

    C.3,3

    D.4,4


    正确答案:C
    解析:在本程序的for循环中,用到了一个continue语句,continue语句的作用是停止本次循环,不执行循环体内continue语句后面的其他语句,继续下次循环的条件判断。首先在for循环中n自加1(值变为1),然后执行后面的if语句,由于if语句后面括号的表达式1%3!=0的值为真,程序执行continue语句,回到for循环的开始部分,并且判断for循环中的条件表达式(nk)为真,重复执行“n++;”语句,如此循环直到n=3时,if语句判定条件中表达式3%3!=0的值为假,程序执行if语句后面的“k--;”语句,此时k的值为3,不满足nk,退出for循环。故最后的k和n的值为3和3,选项C符合题意。

  • 第5题:

    有以下程序: include main ( ) {int k=5,n =0; while ( k>0){switch (k) {default: b

    有以下程序: #include <stdio, h>main ( ) { int k=5,n =0; while ( k>0) { switch (k) { default: break; case 1 : n+ =k; case 2 : case3 : n+ =k; } k--; printf( "% d \n" ,n);}程序运行后的输出结果是( )。

    A.0

    B.4

    C.6

    D.7


    正确答案:D
    解析:在程序中,当L的值为5和4时,case都没有与其匹配的值,所以执行default语句;当k=3时,执行n+=k;得n=3;当L=2时,执行case2:然后顺序执行case3:n+=k;得n=5;当k=1时,执行case1:n+=k;得n=6,然后顺序执行case2:和case3:n+=k;使得n=7。