更多“以下程序的输出结果是()。main(){int a=-1,b=4,k;k=(++a<0)&amp;&amp;!(b--<=0);printf("%d%d%d\n ”相关问题
  • 第1题:

    以下程序的输出结果是#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。

  • 第2题:

    以下程序的输出结果是______。 main() { int a=-1,b=1,k; if((++a<0)&&!(b--<=0)) printf("%d %d\n",a,b); else printf("%d %d\n",b,a); }

    A.-1 1

    B.0 1

    C.1 0

    D.0 0


    正确答案:C
    解析:C语言中如果逻辑与运算符左边的表达式为假,右边的表达式就不再运算了,(++a0)=(00)=0,所以逻辑与右边的表达式就不参与运算,没有改变b的值。因此输出b=1,a=0。

  • 第3题:

    以下程序的输出结果是()。includeint fan(int);main(){int w=5; fun(w);printf("\n");}

    以下程序的输出结果是( )。 #include <stdio.h> int fan(int); main() { int w=5; fun(w); printf("\n"); } fun(int k) { if(k>0) fun(k-1); printf("%d",k); }

    A.5 4 3 2 1

    B.0 1 2 3 4 5

    C.1 2 3 4 5

    D.5 4 3 2 1 0


    正确答案:B
    解析:本题考查函数的递归调用。fun函数共被调用6次,即fun(5)、fun(4)、fun(3)、fun(2)、fun(1)、fun(0),其中fun(5)是main函数调用的,其余是在fun函数中调用的。

  • 第4题:

    下面程序 main() { int a=-1,b=4,k; k=(a++<=0)&&(!(b--<=0)); printf("%d%d%d%d\n",k,a,B) ; } 的输出是_______。

    A.00 3

    B.0 1 2

    C.1 0 3

    D.1 1 2


    正确答案:C
    解析:a++是先使用a值再将a的值加1,b-是先使用b的值再将b的值减1,所以题中的逻辑运算表达式的值应当为真,即为1,而经过运算后,a和b的值已经分别变成0和3了。

  • 第5题:

    下列程序的输出结果是______。main(){ int a=-1,b=1,k; if((++a<0)&& ! (b--<=0)) printf("%d %d\n",a,b); else printf("%d %d\n",b,a);}

    A.-1 1

    B.0 1

    C.1 0

    D.0


    正确答案:C