更多“若i为整型变量,且有程序段如下,则输出结果是() i=123; if(i%2==0) printf("####"); else printf("****");”相关问题
  • 第1题:

    有以下程序: include main ( ) int i;for(i =0;i <3 ;i ++ )switch (i)case 0: printf

    有以下程序: #include <stdio.h> main ( ) int i; for(i =0;i <3 ;i ++ ) switch (i) case 0: printf(" % d" ,i); case 2: printf(" % d" , i); default: printf( "% d" , i);程序运行后的输出结果是( )。

    A.22111

    B.21021

    C.122

    D.12


    正确答案:C
    解析:程序中没有使用break终止switch语句的执行。当i:0时,执行第一个case语句,因为它后面没有break,所以一直到执行完default语句结束,输出3个0,再执行下一循环。所以只有选项C)正确。

  • 第2题:

    以下程序的输出结果是()。include main(){int i; for(i=1;i<5;i++) {if(i%2) printf("*

    以下程序的输出结果是( )。 #include <stdio.h> main() { int i; for(i=1;i<5;i++) { if(i%2) printf("*"); else continue; printf("#"); } printf("$\n");

    A.*#*#*#$

    B.#*#*#*$

    C.*#*#$

    D.#*#*$


    正确答案:C
    解析:程序中当i不能整除2时输出*,然后输出#,能够整除2时将结束本次循环,进入到下一次循环。当循环结束后,输出$。

  • 第3题:

    有以下程序 main() {int i; for(i=0;i<3;i++) switch(i) { case0:printf("%d",i); case2:printf("%d",i); default:printf("%d",i); } } 程序运行后的输出结果是

    A.22111

    B.21021

    C.122

    D.12


    正确答案:C
    解析:程序中for循环了三次,第一次i=0,执行switch语句中case0:分支,直到遇到default语句,退出switch,这里共执行了三个输出语句分别输出0,0,0,第二次循环i=1,switch语句中没有匹配的分支,故只执行default语句输出1,退出switch语句;第三次循环i=2,从switch语句中的case2:开始执行,共执行了两个输出语句输出2、2。最后输出的结果为000122。

  • 第4题:

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

    A.**4 ##5

    B.##4 **5

    C.**4 **5

    D.##4 ##5


    正确答案:B
    解析:函数printf中的参数是三目条件表达式,循环控制变量i值为4时, i%2为0,格式控制字符串为"##%d\n",输出为##4;循环控制变量i值为5时,i%2为1,格式控制字符串为"**%d\n",输出为*5,两次输出不在同一行。

  • 第5题:

    有以下程序 main() { int a [3][2]={0},(* ptr [2],i,j; for(i=0;i<2;i++){ptr=a+i;scanf("%d",ptr);pb++;} for(i=0;i<3;i++) { for(j=0;j<2;j++)printf("%2d",a[i][j]); printf("\n"); } } 若运行时输入:123<回车>,则输出结果是 ______。

    A.产生错误信息

    B.10

    C.12

    D.10 20 30 20 00 00 30


    正确答案:B
    解析:二维数组a,通过a[3][2]={0}将数组中的各个元素初始化为0,指针变量ptr,指向包含2个元素的一维数组。a[0][0]=1,a[1][0]=2,故本题的输出选B。

  • 第6题:

    若变量已正确定义,有以下程序段 i—o; do printf("%d,",i);while(i++); printf("%d",i) 其输出结果是( )。

    A.0,0

    B.0,1

    C.1,1

    D.程序进入无限循环


    正确答案:B
    本题中,变量i的初始值等于0,执行循环体中的语句后,输出i的值为0。while后面括号中表达式i++的值为0,循环结束。此时变量i自加1,所以再次“1”。

  • 第7题:

    有以下程序:

    #include

    main

    { int i=0,a=0;

    while(i<20)

    { for(;;)

    { if((i%10)==0) break;

    else i--;}

    i+=11;

    +=i;}

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

    程序的输出结果是( )。

    A.62

    B.63

    C.33

    D.32


    正确答案:D
    本题考查while循环。当i<20时,进入while循环体,循环体内的for循环实现的功能是i%10==0,也就是说当i值为0或者l0的倍数的时候,跳出循环,执行i+=11;a+=i;,若i值不是10的倍数,则一直执行for循环i--。①当i=0时,执行i+=11;a+=i;,i=11,a=11;②判断i=10时,跳出for循环,执行i+=11;a+=i;,i=21,a=32;③判断i=21>20,不符合题意,结束循环。

  • 第8题:

    以下程序的输出结果是( )。includemain()int i=0,a=0;while(i<20)for(;;)if((i%10)==0)brea

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

    #include

    main()

    int i=0,a=0;

    while(i<20)

    for(;;)

    if((i%10)==0)break;

    else i--;

    i+=11;a+=I;

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

    A.21

    B.32

    C.33

    D.11


    正确答案:B

  • 第9题:

    若变量已正确定义,有以下程序段

    i=0;

    do printf(“%d,”,i); while(i++);

    printf(“%d”,i);

    其输出结果为( )。

    A.0,0

    B.0,1

    C.1,1

    D.程序进入无险循环

    x的平方根 x>=0


    正确答案:B

  • 第10题:

    若所用变量均已正确定义,则执行下面程序段后的值是() for(i=0 ; i<2 ; i++ ) printf("YES"); printf("/n");


    正确答案:YESYES

  • 第11题:

    单选题
    有以下程序:#includemain(){ int i; for(i=1;i<=5;i++) {  if(i%2)printf(*);  else continue;  printf(#); } printf($);}程序运行后的输出结果是(  )。
    A

    *#*#*#$

    B

    *#*#*$

    C

    *#*#$

    D

    *#*#*#*$


    正确答案: A
    解析:
    本题执行过程为:i=1,1%2=1,if条件成立,输出*与#;i=2,2%2=0,if条件不成立,执行continue结束本次循环,执行下一次循环;i=3,3%2=1,输出*与#;i=4,4%2=0,执行continue,开始下一次循环;i=5,5%2=1,输出*与#;i=6退出循环。最后输出$。答案选择A选项。

  • 第12题:

    单选题
    若变量已正确定义,有以下程序段 i=0; do printf(%d,,i); while(i++); printf(%d,i); 其输出结果是(  )。
    A

    0,1

    B

    0,0

    C

    1,1

    D

    程序进入无限循环


    正确答案: A
    解析:
    首先进入循环体,输出0;while(i++)是先判定i是否为0,不管判定结果如何,都执行i++。i等于0,判定结果为false,执行i++,跳出do-while循环,然后输出1。答案选择A选项。

  • 第13题:

    若变量已正确定义,有以下程序段: i=0; do printf("%d,",i);while(i++); printf("%d\h",i); 其输出结果是( )。

    A.0,0

    B.0,1

    C.1,1

    D.程序进入无限循环


    正确答案:B
    解析:do…while循环的执行过程如下:①执行do后面的循环体中的语句。②计算while后一对圆括号中表达式的值。当值为非0时,转去执行步骤①;当值为0时,执行步骤③。③退出do…while循环。对于本题变量i的初始值等于“0”,接着执行do后面的循环体中的语句,输出变量i的值0。再判断while后面括号中表达式i++的值,其值为0,所以循环结束。此时变量i的值经过自加已经变为1,所以再次输出i的值“1”。

  • 第14题:

    有以下程序 main() { int i; for(i=0;i<3;i++) switch(i) { case 0: printf("%d",i); case 2: printf("%d",i); default: printf("%d",i); } } 程序运行后的输出结果是______。

    A.22111

    B.21021

    C.122

    D.12


    正确答案:C

  • 第15题:

    若有如下程序: main() {char a[]={"1234"};int i,t=0; for(i=0;a[i]>='0'&&a[i]<='9';i+=2) t=10*t+a[i]一-'0'; printf("%d\n',t);} 则程序运行后的输出结果是( )。

    A.13

    B.1234

    C.24

    D.123


    正确答案:A
    解析:程序中首先以字符串常量定义并初始化了一个字符数组a,此时数组a包含5个元素{'1','2','3','4','\0'},然后定义了一个变量t,并初始化为0。接下来是一个for循环,循环变量i从0开始每次递增2,循环条件a[i]是一个数字字符。因为a[0]、a[2]分别是数字字符'1'、'3'而a[4]不是,所以循环体执行了两次,第一次执行前t为0,执行后t=10*t+a[i]-'0'=10*0+'1'-'0'=1,所以第二次执行结果为t=10*t+a[i]-'0'=10*1+'3'-'0'=13。程序运行后的输出结果是13,本题选A。

  • 第16题:

    运行下列程序时,若输入数据为“321”,则输出结果是( )。 main() {int num,i,j,k,s; scanf("%d",&num); if(num>99) s=3; else if(num>9) s=2; else s=1; i=num/100; j=(num-i*100)/10; k=(num-i*100-j*10); switch(s) {case 3:printf("%d%d%d\n",k,j,i); break; case 2:printf("%d%d\n",k,j); case 1:printf("%d\n",k); } }

    A.123

    B.1,2,3

    C.321

    D.3,2,1


    正确答案:A
    解析:本题考查if-else语句和switch语句。scan函数通过键盘读入nUm的值。因为num=321>99,所以s=3,i=3,i=2k=1。因为s=3,所以执行case 3,输出k,j,i的值,然后通过breed结束程序。

  • 第17题:

    以下程序的输出结果是( )。 main { int i; for(i=0;i<3;i++) switch(i){case 0:printf("%d",i); case 2:printf("%d",i); default:printf("%d",i); } }

    A.000102

    B.000020

    C.000122

    D.000111


    正确答案:C
    当i=0时,执行switch语句,对应的执行case0,输出0,因为没有break,接着执行case2的语句,又输出一个0,接着执行default语句,再输出一个0,返回i++;i=1时,没有case语句,执行default语句,输出一个1,接着又返回i++;当i=2时执行case2和default语句分别输出一个2,此时又返回i++,i变为3,for循环不成立,终止,最后输出000122。

  • 第18题:

    定义变量和数组如下:int i;int x[3][3]=(1,2,3,4,5,6,7,8,9);则语句for(i=0;i<3;i++)printf(”%d”,x[1][2-i]);的输出结果是 ( )


    正确答案:C

  • 第19题:

    若变量已正确定义,有以下程序段i—o;do printf("%d,",i);while(i++);printf("%d&q

    若变量已正确定义,有以下程序段

    i—o;

    do printf("%d,",i);while(i++);

    printf("%d",i)

    其输出结果是( )。

    A.0,0

    B.0,1

    C.1,1

    D.程序进入无限循环


    正确答案:B
    本题中,变量i的初始值等于0,执行循环体中的语句后,输出i的值为0。while后面括号中表达式i++的值为0,循环结束。此时变量i自加1,所以再次“1”。

  • 第20题:

    以下程序的输出结果是( )。main(){ int i; for(i=0;i<3;i++) switch(i) { case 0:printf(&quo

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

    main()

    { int i;

    for(i=0;i<3;i++)

    switch(i)

    { case 0:printf("%d",i);

    case 2:printf("%d",i);

    default:printf("%d",i); }

    }

    A.000102

    B.000020

    C.000122

    D.000111


    正确答案:C
    当i=0时,执行switch语句,对应的执行case0,输出0,因为没有break,接着执行case2的语句,又输出一个0,接着执行default语句,再输出一个0,返回i++;i=1时,没有case语句,执行default语句,输出一个1,接着又返回i++;当i=2时执行case2和default语句分别输出一个2,此时又返回i++,i变为3,for循环不成立,终止,最后输出000122。

  • 第21题:

    以下程序的输出结果是()      #include      main( )       {inti:  for(i=l;i<=5;i++)         {if(i%2)  printf(“*”);         else  continue;         printf(“*”);}         printf(“$/n”);I    

    • A、*#*#*#$
    • B、#*#*#*$
    • C、*#*#$
    • D、#*#*$

    正确答案:A

  • 第22题:

    若i为整型变量,则以下循环执行次数是(). for(i=2;i==0;) printf("%d",i--);

    • A、无限次
    • B、0次
    • C、1次
    • D、2次

    正确答案:B

  • 第23题:

    单选题
    有以下程序段,若变量已正确定义并赋值  if(a>b)printf(x=%d,,x);  else printf(y=%d,,y);  if(a<=b)i++;  else j++; 则与此程序段功能相同的选项是(  )。
    A



    if(a>b)
    {
     printf(x=%d,,x);
     j++
    }
    else
    {
     printf(y=%d,,y);
     i++
    }

    B



    if(a>b)
    {
     printf(x=%d,,x);
     i++
    }
    else
    {
     printf(y=%d,,y);
     j++
    }

    C



    if(a<=b)
    {
     printf(x=%d,,x);
     i++
    }
    else
    {
     printf(y=%d,,y);
     j++
    }

    D



    if(a>=b)
    {
     printf(x=%d,,x);
     i++
    }
    else
    {
     printf(y=%d,,y);
     j++
    }


    正确答案: A
    解析:
    程序段执行过程为:如果a>b,输出x,否则输出y;如果a<=b,i加1,否则j加1。A项如果a>b,输出x且j加1,否则输出y且i加1,与题目中功能相同,A项正确。B项如果a>b,输出x且i加1,否则输出y且j加1,与题目中功能不相同,B项错误。C项如果a<=b,输出x且i加1,否则输出y且j加1,与题目中功能不相同,C项错误。D项判断条件为a>=b,多了a=b,D项错误。答案选择A选项。

  • 第24题:

    单选题
    有如下程序 #include  main()  {  int i = 1;  for (printf(%d,i); i<4; i++)   printf(%d,i);  printf(); } 程序运行后的输出结果是(  )。
    A

    1123

    B

    123

    C

    0123

    D

    001


    正确答案: C
    解析:
    for语句的一般形式为“for(表达式1;表达式2;表达式3){循环体语句}”,其执行流程是先计算表达式1,之后计算表达式2,根据表达式2的值来判定是否进行循环,若为真,则执行循环体,循环体执行完毕之后再计算表达式3的值。整个循环过程中,表达式1只会执行一次,而表达式2、3以及循环体每次循环都会执行,答案选择A选项。