若x是int型变量,且有下面的程序段: for(x=3;x<6;x++) printf((x%2)?("**%d"):("##%d\n"),x); 此程序段的输出结果是( )。A.**3 ##4 **5B.##3 **4 ##5C.##3 **4##5D.** 3##4 **5

题目

若x是int型变量,且有下面的程序段: for(x=3;x<6;x++) printf((x%2)?("**%d"):("##%d\n"),x); 此程序段的输出结果是( )。

A.**3 ##4 **5

B.##3 **4 ##5

C.##3 **4##5

D.** 3##4 **5


相似考题
更多“若x是int型变量,且有下面的程序段:for(x=3;x<6;x++)printf((x%2)?("**%d"):("##%d\n"),x);此程序 ”相关问题
  • 第1题:

    若执行下面程序时从键盘上输入5, main(){int x;scanf("%d",&x);if(x++>5)printf("%d\n",x);else printf("%d\n",x-); 则输出是______。

    A.7

    B.6

    C.5

    D.4


    正确答案:B
    根据C语言的语法,X++是在使用x之后,再将x的值加1,在if语句中,x的值为5,条件不成立,执行else后面的语句,因为x的值已经加1,为6,所以打印结果为6。

  • 第2题:

    int x=6, y=7; printf(“%d,”,x++); printf(“%d\n”,++y); 程序的输出结果是__________ 。


    正确答案:
    6,8

  • 第3题:

    若x是int型变量,且有下面的程序片段: for(x=3;x<6;x++)printf(x%2)?("* *%d"):(”# #%d\n”),x); 上面程序片段的输出结果是 ( )

    A.* * 3 # # 4 * * 5

    B.# # 3 * * 4 # # 5

    C.# # 3 * * 4 # # 5

    D.* * 3 # # 4 * * 5


    正确答案:D

  • 第4题:

    以下程序的输出结果是( )。 include void fun(int x) {if(x/2>0)fun(x/2); printf("%d",

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

    include<stdio.h>

    void fun(int x)

    { if(x/2>0)fun(x/2);

    printf("%d",x);

    }

    main()

    {fun(3);printf("\n");

    }


    正确答案:13
    13 解析:函数fun是一个递归函数。执行fun(3);,x=3,x/2=1>0,又调用f(1),此时,x=1,x/2=0,不满足继续递归调用的条件,输出1,返回到fun(3)中,输出3。所以本题的输出结果为13。

  • 第5题:

    以下程序通过函数sunFun求。这里f(x)=x2+1

    main( )

    { printf("The sum=%d\n",SunFun(10)); }

    SunFun(int n)

    { int x,s=0;

    for(x=0;x<=n;x++) s+=F(【 】);

    return s;

    }

    F( int x)

    { return 【 】);}


    正确答案:x*x+1
    x*x+1 解析:本题中F(  )函数实现表达示f(x) =x2+1,SunFun(  )函数实现循环累加F(0)...F(10)的值因此[14]填x,[15]填x*x+1。

  • 第6题:

    下列程序的输出结果是______。main() { int x,y; for(x=1,y=1;x<=10;x++) {if(y>=5)break;if(y%3=

    下列程序的输出结果是______。 main() { int x,y; for(x=1,y=1;x<=10;x++) {if(y>=5)break; if(y%3==1) }y+=3; continue; } y-=5; } printf("%d\n",x); }

    A.2

    B.3

    C.4

    D.5


    正确答案:B
    解析:本题考查循环辅助控制语句break和continue,前者退出整个for循环,后者跳过本次循环没有执行完的若干条语句,开始下一次循环操作,建议读者采用本书推荐的列表法分析。

  • 第7题:

    以下程序运行后的输出结果是main(){ int x=15; while(x>10&&x<50) { x++; if(x/3) { x++; break; } else continue; } printf("%d\n",x);}


    正确答案:17
    当x=15时,while条件为真,执行x++;,这时x的值为16,if条件为真,执行x++;后跳出循环体,此时x的值为17。

  • 第8题:

    下述程序段的执行结果是()。includeVoid main(){int x; for(x=1;x<=100;x++)if(++x%3==

    下述程序段的执行结果是( )。 #include <stdio.h> Void main() { int x; for(x=1;x<=100;x++) if(++x%3==0) if(++x%4==0) if(++x%7==0) printf("%d",x); }

    A.75

    B.76

    C.77

    D.84


    正确答案:D
    解析:程序段的功能是找出100以内能同时被3、4、7整除的数,只有选项D符合题意。

  • 第9题:

    有以下程序: main { int i,j,x=0; for(i=0;i<2;i++) { x++; for(j=0;j<=3;j++) {if(j=0;j<=3;j++) x++; } x++; } printf("x=%d\n",x); } 程序执行后的输出结果是( )。

    A. x=4

    B.x=8

    C.x=6

    D.x=12


    正确答案:B
    当i=0时,i<2成立,执行第一个for循环x自加为1,接着执行第二个for循环;j=0时j<=3成立,此时if不成立,执行x++后,x为2;接着j=1时,i<=3成立,继续循环,此时if成立,continue是跳出本次循环,继续下一次循环,不再执行x++了;接着j=2时,j<=3成立,此时if不成立,执行其后的语句;当j=4时,退出第二个循环,接着执行循环外部的x++,x为4;当i=1时,i<2成立,执行第一个循环,x=5,此时接着执行循环外部的语句,即第二个循环;j=0时j<3成立,此时if不成立,x++后,x为6,接着j为1时,j<=3成立,继续循环,此时if成立,不再执行x++了;接着J=2时,j<=3成立,此时if不成立,执行其后的x++,x为7;i=3时,j<=3成立,此时if成立,不再执行其后的语句了;当j=4时,退出第二个循环,执行循环外部的语句,最终x为8,故选B选项。

  • 第10题:

    若执行下面的程序时从键盘上输入5,则输出是() main( ) { int x; scanf(""%d"",&x); if(x++>5) printf(""%d/n"",x); else printf(""%d/n"",x--);}

    • A、7
    • B、6
    • C、5
    • D、4

    正确答案:B

  • 第11题:

    单选题
    有以下程序      main( )  {int i,j,x=O;  for(i=0;i<2;i++)      {x++;   for(j=0;j<=3;j++)      {if(j%2)continue;      x++;      }      x++;      }  printf(”x=%d/n”,x);          }  程序执行后的输出结果是()
    A

    x=4

    B

    x=6

    C

    x=8

    D

    x=12


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

  • 第12题:

    单选题
    有以下程序:#include #include main(){ int i,j,x = 0; for(i = 0;i < 2;i++) {  x++;  for(j = 0;j <= 3;j++)  {   if(j%2==0)continue;   x++;  }  x++; } printf(x = %d,x);}程序的运行结果是(  )。
    A

    x=4

    B

    x=6

    C

    x=8

    D

    x=12


    正确答案: B
    解析:
    第一次循环:i=0,执行x++后x=1,执行内层循环j=0,由于j%2!=0时才执行x++,即只有j取1和3时,执行x++,此时x=1+1+1=3,跳出内层循环,执行下一条x++,x=4,第二次循环:x=1时,重复上述循环,共执行两次循环,故x最终结果是4*2=8。答案选择C选项。注意,在循环体中遇到continue,则跳过continue后的语句直接进入下一次循环的判断。

  • 第13题:

    有以下程序: main() {int a[]={2,4,6,8,10),y=0,x,*P; P=&a[1]; for(x=1;x<3;x++)y+=p[x]; printf("%d\n",y); } 程序运行后的输出结果是( )。

    A.10

    B.11

    C.14

    D.15


    正确答案:C
    解析:指针变量p指向数组元素a[1],则p[1]即为a[2],p[2]即为a[3],执行第一次for循环时,y=y+p[1]=0+a[2]=6,第二次执行for循环,y=y+p[2]=6+a[3]=14,此时x为3,for循环条件不满足,退出循环,输出y的值为14。

  • 第14题:

    以下程序的输出结果是

    main()

    { int x=1,y=3;

    printf("%d,",x++);

    { int x=0;x+=y*2;

    printf("%d,%d, ",x,y);

    }

    printf("%d,%d\n",x,y);

    }

    A.1,6,3,1,3

    B.1,6,3,6,3

    C.1,6,3,2,3

    D.1,7,3,2,3


    正确答案:C

  • 第15题:

    以下程序的输出结果是______。main(){ int i,j,x=0; for (i=0;i<2;i++) { x++; for(j=0;j<3;j++) { if(j%2) continue; x++; } x++; } printf("x=%d\n",x);}

    A.x=4

    B.x=8

    C.x=6

    D.x=12


    正确答案:B

  • 第16题:

    有以下程序:include main() {int a[] = {2,4,6,8,10} ,y =0,x, * p;p =&a[1];for(

    有以下程序: #include <stdio.h> main() { int a[] = {2,4,6,8,10} ,y =0,x, * p; p =&a[1]; for(x=1;x<3;x++)y+ =p[x]; printf( "% d \n" , y); }程序运行后的输出结果是( )。

    A.10

    B.11

    C.14

    D.15


    正确答案:C
    解析:本程序通过语句p=&a[1];将指针变量p指向存储单元a[1],使得p[0]的值为4,通过for循环,使y的值丸P[1]与p[2]之和,即y=6+8,所以输出的y值为14。

  • 第17题:

    若执行下面程序时从键盘上输入5, main() { int x; scanf("%d",&x); if(x++>5)printf("%d\n",x); else printf("%d\n",x-); } 则输出是_______。

    A.7

    B.6

    C.5

    D.4


    正确答案:B
    解析:根据C语言的语法,x++是使用x之后,再将x的值加1,在if语句中,x的值为5,条件不成立,执行else后面的语句,因为x的值已经加1,为6,所以打印结果为6。

  • 第18题:

    有以下程序 include mare() { int x=1,y=2,z=3; if(x>y) if

    有以下程序 #include <stdio.h> mare() { int x=1,y=2,z=3; if(x>y) if(y<z) printf("%d",++z); else printf("%d",++y); printf("%d\n",x++); } 程序的运行结果是______。

    A.331

    B.41

    C.2

    D.1


    正确答案:D
    解析:本题考查的是if语句的嵌套。C语言规定else总是与它上面的最近的且不带else的if配对,所以本题else与if(yz)配对,即为内嵌if。在程序执行时,先判断if(x>y)的条件表达式x>y,即1>2,不成立,所以不执行内嵌if,直接执行“printf("%d",x++);”语句。由于x++表示在使用后再将x加1,所以输出1。

  • 第19题:

    有以下程序:inelude main( ){int i,j,x=0;for(i=0;i<2;i++ ) {x++; for(j=0;j<=3;j ++

    有以下程序:#inelude <stdio.h>main( ){ int i,j,x=0; for(i=0;i<2;i++ ) { x++; for(j=0;j<=3;j ++) { fi(j%2) continue; x++; x++; } pfinff( "x = % d\n",x);} 程序执行后的输出结果是( )。

    A.x=4

    B.x=8

    C.x=6

    D.x=12


    正确答案:B
    解析:本问题要求给出程序执行后输出的x的值。x的初值为0,程序中出现了3次x++,其中外层循环中出现了两次,共自增了4次;在内层循环中,当循环变量为。和2时,x自增,因此共自增了4次,这样x共自增了8次,所以结果为8。

  • 第20题:

    有以下程序:

    main

    { int a[]=(2,4,6,8,10},y=0,x,*P;

    p=&a[1];

    for(x=1;x<3;x++) y+=p[x];

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

    }

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

    A.A.10

    B.11

    C.14

    D.15


    正确答案:C
    由题目的语句P=&a[1]可知,P指向a数组中下标为1的元素“4”,又因为P为指针变量,所以P[x]与*(p+x)等价,因而在for循环语句中,第一次循环P[1]指向a数组中下标为2的元素“6”,第二次循环p[2]指向a数组中下标为3的元素“8”,所以y=6+8=14,因而选项C为正确答案。

  • 第21题:

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

    main( )

    { int x=15;

    while(x>10 &&x<50)

    { x++;

    if(x/3){ x++;break;}

    else continue;

    }

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

    }


    正确答案:17
    17

  • 第22题:

    执行以下程序后,y的值是() main( ) { int a[]={2,4,6,8,10}; int y=1,x,*p; p=&a[1]; for(x=0;x<3;x++) y + = * (p + x); printf(""%d/n"",y); }

    • A、17
    • B、18
    • C、19
    • D、20

    正确答案:C

  • 第23题:

    单选题
    执行以下程序后,y的值是() main( ) { int a[]={2,4,6,8,10}; int y=1,x,*p; p=&a[1]; for(x=0;x<3;x++) y + = * (p + x); printf(""%d/n"",y); }
    A

    17

    B

    18

    C

    19

    D

    20


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