niusouti.com
更多“有以下程序:main(){ int a=1,b=2, m=0,n=0,k;k=(n=b>A) ||(m=a<B) ;printf ("%d, %d\n", k, m);} ”相关问题
  • 第1题:

    有以下程序: main() { int a=1,b=2,m=0,n=0,k; k=(n=b>a)||(m=a<b); printf("%d,%d\n",k,m); } 程序运行后的输出结果是 ______。

    A.0,0

    B.0,1

    C.1,0

    D.1,1


    正确答案:C
    解析:本题考查“逻辑或”运算的特例。本题中执行语句k=(n=b>a)||(m=ab)时,首先计算表达式(n=b>a)|| (m=ab)的值,因b=2,a=1,所以b>a成立,即得n=1,故表达式(n=b>a)||(m=ab)的值为真,不再执行表达式 m=ab,故执行完表达式k=(n=b2>a)||(m=ab)后,n=1、m=0、k=1。

  • 第2题:

    有以下程序:includemain(){int a=1,b=2,m=0,n=0,k; k=(n=b>a)||(m=a

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

    A.0,0

    B.0,1

    C.1,0

    D.1,1


    正确答案:C
    解析:本题考查逻辑或运算。因为b>a为真,即n=1,则m不需再计算,保持原值,因此k值为1,m值仍为0。

  • 第3题:

    有以下程序: main() { int a=1,b=2,m=0,n=0,k; k=(n=b>a)||(m=a>b); printf("%d,%d\n"m,k,m); } 程序运行后的输出结果是( )。

    A.0,0

    B.O,1

    C.1,0

    D.1,1


    正确答案:C
    解析:在||运算中当其左边的表达式为真,右边的表达式将不再执行。主函数中,||左边的表达式k=(n=b>a),2>1为真,所以n被赋值为1,接着k被赋值1,即||运算符左边表达式为真,此时不再计算||右边的表达式,因此m的值没有被改变仍为0,最后的输出结果1,0。所以,4个选项中选项C符合题意。

  • 第4题:

    有以下程序 main() {int a=1,b=2,m=0,n=0,k; k=(n=b>a)‖(m=a<b) ; printf("%d,%d\n",k,m); } 程序运行后的输出结果是

    A.0,0

    B.0,1

    C.1,0

    D.1,1


    正确答案:C
    解析:在“||”运算中当其左边的表达式为真,右边的表达式将不再执行。主函数中,“||”左边的表达式k=(n=b>A) ,“2>1”为真,所以n被赋值为1,接着k被赋值1,即“||”运算符左边表达式为真,此时不再计算“||”右边的表达式,因此m的值没有被改变仍为0,最后的输出结果1,0。

  • 第5题:

    以下程序的输出结果是#include <conio.h>#include <stdio.h>#define M 100void fun(int m, int *a, int *n){ int i,j=0; for(i=1;i<=m;i++) if(i%7==0||i%11==0) a[j++]=i; *n=j;}main(){ int aa[M],n,k; clrscr(); fun(100,aa,&n); for(k=0;k<n;k++) if((k+1)%20==0)printf("\n"); else printf("%d",aa[k]); printf("\n"); }


    正确答案:77
    在本题中,程序首先定义一个宏M,然后定义一个fun函数,函数带有三个形参,分别是一个整型形参m和两个整型指针形参a、n。在函数体中,首先定义两整型变量i和j,并给j赋初值为0,然后执行循环,循环体中首先是一个条件判断语句,如果结果为真,则说明变量i能同时被7和11整除,并将变量i保存到数组中,循环结束后,将数组中元素的个数通过指针变量n进行返回。通过分析可以知道,fun函数的作用是求取1到m中能同时被7和11整除的整数,并将结果保存到数组a中。
    在主函数中,首先定义了两个整型变量和一个整型数组aa,然后调用clrscr()函数对文本模式窗口进行清除操作。接着调用fun函数,根据上面我们对fun函数的分析,要计算1~100之间能同时被7和11整除的整数,很显然,这样的数只有77一个,那么此时数组aa中只有一个元素为77,而n的值是1。
    接着执行for循环,从程序中不难看出循环的作用是将数组aa中的元素按一定的规则输出,其规则为每行最多只能输出20个值。结合上面的分析,数组aa中只有一个元素为77,因此,本题程序的最终输出结果为77。