写出程序的运行结果。 #include main( ) { int i=0,j=0,k=0,m; for ( m=0;m<4;m++ ) switch ( m ) { case 0:i=m++; case 1:j=m++; case 2:k=m++; case 3:m++; }

题目

写出程序的运行结果。 #include main( ) { int i=0,j=0,k=0,m; for ( m=0;m<4;m++ ) switch ( m ) { case 0:i=m++; case 1:j=m++; case 2:k=m++; case 3:m++; } printf ("/n%d,%d,%d,%d",i,j,k,m); } 该程序的执行结果是()。

  • A、0,1,2,5
  • B、0,1,2,4
  • C、0,1,1,3
  • D、0,1,2,3

相似考题
参考答案和解析
正确答案:A
更多“写出程序的运行结果。 #include main( ) { int i=0,j=0,k=0,m; for ( m=0;m4;m++ ) switch ( m ) { case 0:i=m++; case 1:j=m++; case 2:k=m++; case 3:m++; } ”相关问题
  • 第1题:

    以下程序执行后的输出结果是【】。includemain(){int i, m=0,n=0,k=0;for(i=9;i<= 11 ;

    以下程序执行后的输出结果是【 】。

    include<iostream.h>

    main()

    {

    int i, m=0,n=0,k=0;

    for(i=9;i<= 11 ;i++)

    switch(i/10)

    {

    case 0: m++; n++; break;

    case 10: n++; break;

    default: k++; n++;

    }

    cout<<m<<n<<k;

    }


    正确答案:132
    132

  • 第2题:

    以下程序的输出结果是includemain(){inta=15,b=21,m+0;switch(a%3){case0:m++;bteak;c

    以下程序的输出结果是 #include<stdio.h> main() {int a=15,b=21,m+0; switch(a%3) {case0:m++;bteak; case 1:m++; switch(b%2) {default:m++; case 0:m++;break;}} printf("%d\n",m);}

    A.1

    B.2

    C.3

    D.4


    正确答案:A

  • 第3题:

    有以下程序:includeusing namespace Std;int main(){ int a = 15,b = 21,m = 0; swit

    有以下程序: #include <iostream> using namespace Std; int main( ) { int a = 15,b = 21,m = 0; switch(a%3) { case 0: m++; break; case 1: m++; switch(b%2) {

    A.1

    B.2

    C.3

    D.4


    正确答案:A
    解析:由于a=15,所以a%3的值为0。程序进入第1分支,执行“m++;”,最后输出m的值为1。

  • 第4题:

    有以下程序 main() { int a=15,b=21,m=0; switch(a%3) { casc 0:m++;break; case 1:m++; switch(b%2) { default:m++; case 0:m++;break; } } printf(“%d\n”,m); } 程序运行后的输出结果是

    A.1

    B.2

    C.3

    D.4


    正确答案:A
    解析:在switch语句中break语句的作用是退出分支语句,若没有break语句则一直向下执行。本题中首先计算switch后面括号里的表达式a%3,即15%3为0;执行case0;后面的语句m++;m自加1,即m为1;遇到break语句;然后跳出switch语句,所以最后输出的m的值为1。

  • 第5题:

    以下程序的输出结果是

    #include<stdio.h>

    main()

    {int a=15,b=21,m=0;

    switch(a%3)

    {case 0:m++;break;

    case 1:m++;

    switch(b%2)

    { default:m++;

    case 0:m++;break; } }

    printf("%d\n",m);}

    A.1

    B.2

    C.3

    D.4


    正确答案:A
    解析:考查switch语句的使用。switch语句的条件是"a%3=15%3=0",所以执行case 0后面的语句,m++;m=1,然后就执行break,跳出switch语句,所以最后输出m的值为1。

  • 第6题:

    有下列程序:includemain(){int a=6,b=7,m=1; switch(a%2) {case0:m++;break;case 1=m+

    有下列程序: #include<stdio.h> main() { int a=6,b=7,m=1; switch(a%2) { case0:m++;break; case 1=m++; switch(b%2) { defaut:m++; case0:m++;break; } } printf("%d\n",m); } 程序运行后的输

    A.1

    B.2

    C.3

    D.4


    正确答案:B
    解析: 本题考查switch语句。第一个switch语句,因为a=6,a%2=0,所以执行case0,将m加1,遇到break语句跳出switch语句,结束循环。

  • 第7题:

    以下程序运行后的输出结果是main{ int i,m=0,n=0,k=0; for(i=9;i<=11;i++) switch(i/10) { case 0: m++;n++;break;  case 1: n++;break;  default:k++;n++; } printf("%d %d %d\n",m,n,k);}


    正确答案:1 3 0
    在本题中,程序首先定义了四个整型变量,其中变量i为循环变量,其他三个变量都被初始化为0。然后执行循环,从循环变量i的初值和结束条件我们可以看出,循环运行了三次。
    第一次循环,当i=9时,执行switch(i/10),由于变量i和10都是整型数值,按照C语言的规定,计算结果也应为整型,因此,i/10的结果为0,执行case 0结构,即变量m和n的值分别加1,然后执行break语句结束switch结构。
    第二次循环时,i=10,此时i/10=1,执行case 1结构,变量n的值再增加1,然后执行break语句结束switch结构。
    第三次循环时,i=11,此时i/10的结果仍然为1,执行case 1结构,变量n的值再增加1,然后执行break语句结束switch结构。
    循环结束,此时,变量m、n和k的值分别为1、3、0,然后执行输出语句,分别输出这几个变量的值,因此,程序最后的输出结果是1 3 0。

  • 第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 i,j,m=0; for (i=1;i<=15;i+=4) for(j=3; j<=19; j+=4) m++; printf("%d\n",m); }

    A.12

    B.15

    C.20

    D.25


    正确答案:C

  • 第10题:

    有以下程序: main( ) { int a=15,b=21,m=0; switch(a%3) { case 0:m++;break; case l:m++; switch(b%2) { default:m++; case 0:m++;break; } } printf("%d\n",m); } 程序运行后的输出结果是

    A.1

    B.2

    C.3

    D.4


    正确答案:A

  • 第11题:

    有下列程序: include main() {int a=6,b=7,m=1; switch(a%2) {case 0:m++;break; cas

    有下列程序:

    #include<stdio.h>

    main()

    { int a=6,b=7,m=1;

    switch(a%2)

    { case 0:m++;break;

    case 1:m++;

    switch(b%2)

    { defaut:m++;

    case0:m++;break;

    }

    }

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

    }

    程序运行后的输出结果是( )。

    A.1

    B.2

    C.3

    D.4


    正确答案:B
    解析:本题考查switch语句。第一个switch语句,因为a=6,a%2=0,所以执行case0,将m加1,遇到break语句跳出switch语句,结束循环。

  • 第12题:

    单选题
    写出程序的运行结果。 #include main( ) { int i=0,j=0,k=0,m; for ( m=0;m<4;m++ ) switch ( m ) { case 0:i=m++; case 1:j=m++; case 2:k=m++; case 3:m++; } printf ("/n%d,%d,%d,%d",i,j,k,m); } 该程序的执行结果是()。
    A

    0,1,2,5

    B

    0,1,2,4

    C

    0,1,1,3

    D

    0,1,2,3


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

  • 第13题:

    阅读以下说明和C++程序,将应填(n)处的字句写在对应栏内。

    [说明]

    设计一程序,输入10个整数到一个数组中,调整这10个数在数组中的位置,使得其中最小的一个数成为数组的首元素,最大的一个数成为数组的末元素。

    [C++程序]

    include <iostream.h>

    define SIZE 10

    void main ( )

    {

    int data [SIZE];

    int m;

    cout<<"请输入"<<SIZE<<"个整数:";

    for ( m=0;m<SIZE; m++ ) (1);

    int j=0,k=0;

    for ( int i=1;i<SIZE; i++ )

    if ((2)) j=i;

    else if ( data[i]<data[k] ) (3);

    if (j>0 ) {

    int d=data[0];

    (4);

    data[k]=d;

    }

    if ( k<SIZE-1 )

    {

    int d=data [SIZE- 1 ];

    data[SIZE- 1 ]=data[j];

    (5);

    }

    cout<<end1<<" 排序后: ";

    for ( m=0;m<SIZE; m++ ) cout<<data[m]<<" " ;

    }


    正确答案:(1)n>>data [m] (2) data[i]>data[j] (3) k=i (4) data[0]=data[k] (5) data[j]=d
    (1)n>>data [m] (2) data[i]>data[j] (3) k=i (4) data[0]=data[k] (5) data[j]=d

  • 第14题:

    有下列程序:includemain(){ int a=6,b=7,m=1;switch(a%2){ case 0:m++;break;case 1:m

    有下列程序:#include<stdio.h>main(){ int a=6,b=7,m=1; switch(a%2) { case 0:m++;break; case 1:m++; switch(b%2) { defaut:m++; case0:m++;break; } } printf("%d\n",m);}程序运行后的输出结果是( )。

    A.1

    B.2

    C.3

    D.4


    正确答案:B
    解析:本题考查switch语句。第一个switch语句,因为a=6,a%2=0,所以执行case0.将m加1,遇到break语句跳出switch语句,结束循环。

  • 第15题:

    下面程序的输出结果是main(){int a=15, b=21,m=0;switch(a%3){ case 0, m++; break;case 1 :m++; switch(b%2) { default: m++; case 0:m++ ;break; }}cout<<m<<end1}

    A.1

    B.2

    C.3

    D.4


    正确答案:A
    解析:本题考查switch语句的嵌套。实际上,只要考生按照顺序进行分析可以发现里层嵌套的switch语句根本不用分析,因为执行流程根本不能到达那里。

  • 第16题:

    下列程序的运行结果是()。includevoid sub(int*s,int*y){static int m=4;*y=s[0];m++;}

    下列程序的运行结果是( )。 #include<stdio.h> void sub(int*s,int*y) {static int m=4; *y=s[0]; m++; } void main() {int a[]={1,2,3,4,5},k; int x; printf("\n"); for(k=0;k<=4;k++) {sub(a,&x); printf("%d,",x); } }

    A.1,1,1,1,1,

    B.1,2,3,4,5,

    C.0,0,0,0,0,

    D.4,4,4,4,4,


    正确答案:A
    解析:本题中sub(int*s,int*y)函数的参数是两个指针型变量,在函数体内将数组s的第一个元素赋给y。主程序内,首先定义了一维数组并赋初值,然后通过for循环,5次调用sub(a,&x)函数,每一次调用都是将数组a的第一个元素1赋给x,并输出。

  • 第17题:

    下列程序运行后的输出结果是 ______。 include void main(){ int s=0,k for(k=7;k>=0

    下列程序运行后的输出结果是 ______。

    include<iostream.h>

    void main()

    {

    int s=0,k

    for(k=7;k>=0;k--)

    {

    switch(k)

    {

    case 1:

    case 4:

    case 7:s+ +;break:

    case 2:

    case 3:

    case 6:break;

    case 0:

    case 5:s+=2;break;

    }


    正确答案:s=7
    s=7

  • 第18题:

    以下程序的输出结果是()。includemain(){int a=8,b=6,m=1;switch(a%4){case 0:m++;brea

    以下程序的输出结果是( )。 #include<stdio.h> main() {int a=8,b=6,m=1; switch(a%4) {case 0:m++; break; case 1:m++; switch(b%3) {default:m++; case 0:m++;break; } } printf("%d\n",m);}

    A.1

    B.2

    C.3

    D.4


    正确答案:B
    解析:本题考查switch语句。因为a=8,a%4=0,所以执行case 0后面的语句,将m加1,遇到break语句跳出switch。

  • 第19题:

    有以下程序:includemain(){int a=6,b=7,m=I;switch(a%2){case 0:m++;break;case 1:m++

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

    A.1

    B.2

    C.3

    D.4


    正确答案:B
    解析:本题考查switch语句。因为a=6,所以a%2=0,因此第一个switch语句,执行case 0,将m加1,遇到break语句跳出switch语句,输出m值为2。

  • 第20题:

    有下列程序: #include<stdio.h> main { int a=6,b=7,m=1; switch(a%2) { case 0:m++;break; case 1:m++; switch(b%2) { default:m++; case 0:m++;break; } } printf("%d\n",m); } 程序的运行结果是( )。

    A.3

    B.2

    C.4

    D.1


    正确答案:B
    本题考查switch语句及break的用法。第一个switch语句,因为a=6.a%2=0,所以执行“case0,m++;”,将m加1,遇到break语句跳出switch语句,结束循环。不执行下面的switch。

  • 第21题:

    执行下列程序语句后,输出结果为()。ineludeusing namespace std;int m=5;int main(){i

    执行下列程序语句后,输出结果为( )。 #inelude<iostream> using namespace std; int m=5; int main() { int m=3; m++; ::m++; cout<<m<<end1; return 0; }

    A.3

    B.4

    C.5

    D.6


    正确答案:B

  • 第22题:

    以下程序的输出结果是includemain(){ inta=15/b=21,m=0;switch(a%3){ case0:m++;break

    以下程序的输出结果是 #include<stdio.h> main() { int a=15/b=21,m=0; switch(a%3) { case0:m++;break; case 1:m ++; switch(b%2) { default:m++; case 0:m ++;break;}} printf("%d\n",m);}

    A.1

    B.2

    C.3

    D.4


    正确答案:A
    解析:switch语句的条件是“a%3=15%3=0”,所以执行case0后面的语句,m++;m=1,然后就执行break,跳出switch语句,所以最后输出的m的值为1。注意:switch嵌套语句的使用。

  • 第23题:

    有以下程序: include main() {int a=6,b=7,m=1;switch(a%2){ case 0:m++;break;case 1

    有以下程序: #include<stdio.h> main() { int a=6,b=7,m=1; switch(a%2) { case 0:m++;break; case 1 :m++; switch(b%2) { defaut:m++; case0:m++;break; } } printf("%d\n",m); }

    A.1

    B.2

    C.3

    D.4


    正确答案:B
    解析:本题考查swish语句。第一个switch语句,因为a=6,a%2=0,所以执行case 0,将m加1,遇到break语句跳出switch语句,结束循环。