阅读下面语句,则程序的执行结果是______。include"stdio.h"main(){ inta=-1,b=1,k;if((++a阅读下面语句,则程序的执行结果是______。include"stdio.h"main(){ inta=-1,b=1,k;if((++a<0)&&! (b--<=0))printf("%d,%d\n",a,b);else printf("%d,%d\n",b,a);}

题目
阅读下面语句,则程序的执行结果是______。include"stdio.h"main(){ inta=-1,b=1,k;if((++a<0)&

阅读下面语句,则程序的执行结果是______。

include"stdio.h"

main()

{ inta=-1,b=1,k;

if((++a<0)&&! (b--<=0))

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

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


相似考题
更多“阅读下面语句,则程序的执行结果是______。include"stdio.h"main(){ inta=-1,b=1,k;if((++a<0)&amp ”相关问题
  • 第1题:

    阅读下面程序,则程序的执行结果为 【10】 。

    #include "stdio.h"

    main()

    { int a=10;

    fun(a);

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

    fun(int x)

    { x=50;}


    正确答案:
    10

  • 第2题:

    下面程序的运行结果是includemain(){static char a[]="Languagef",b[]="programe";cha

    下面程序的运行结果是 #include<stdio.h> main() { static char a[]="Languagef" ,b[]="programe"; char *p1,*p2; int k; p1=a;p2=b; for(k=0;k<=7;k++) if(*(p1+k)==*(p2+k)) printf("%c",*(p1+k));}

    A.gae

    B.ga

    C.LanSuage

    D.有语法错


    正确答案:A

  • 第3题:

    阅读下面语句,则执行后的输出结果为 【8】

    #include "stdio.h"

    main()

    {char a,b;

    for(a=′0′,b=′9′;a <b;a++,b--)

    printf( "%c%c",a,b);

    printf("\n");}


    正确答案:
    0918273645

  • 第4题:

    阅读下面程序,则程序的执行结果为( )。 include"stdio.h" main() {int a=10; fun(A); printf("%d\n",A);} fun(int x) {x=50;}


    正确答案:10
    10

  • 第5题:

    有以下程序:include main(){ inta=1,b=2,c=3,x; x=(ab)&c; printf("%d\n",x);}程

    有以下程序: #include <stdio.h> main() { int a=1,b=2,c=3,x; x=(ab)&c; printf("%d\n",x); } 程序的运行结果是( )。

    A.0

    B.1

    C.2

    D.3


    正确答案:D
    解析:在C语言中,整型数据在内存中是按二进制形式存放的,位运算就是直接对这些二进制进行操作的一系列运算符。例如题目中a、b、c的值分别为1、2、3,那它们在内存中存放的样子就是;0001、0010、0011(由于数据不大,int类型本来要占4字节也就是32位二进制的,这里就省写为4位了)。“^”运算符的作用是:按位异或。意思是:两个操作数对应的二进制位如果相异,则结果对应的二进制位为1,否则结果对应二进制位为0。所以00010011=0011。“&”运算符的作用是:位与。意思是:如果两个操作数对应的二进制位同时为1,则结果对应的二进制位为1,否则结果对应二进制位为0。所以0011&0011=0011,也就是十进制的3,故本题最终输出结果为3,应该选择D。

  • 第6题:

    下列程序执行的输出结果是()。 include main() {char a[2][4];strcpy(a,"are");strcpy(

    下列程序执行的输出结果是( )。 #include<stdio.h> main() { char a[2][4]; strcpy(a,"are");strcpy(a [1],"you"); a[0][3]='&'; printf("%s\n",a); }

    A.are&you

    B.you

    C.are

    D.&


    正确答案:A
    解析:strcpy(a,"are")中数组名a代表数组首地址的地址常量,该操作把are复制到a中,a[0][3]='&',且strcpy(a[1],"you")把you复制到a[1]中,故输出a为“are&you”。

  • 第7题:

    下面程序的运行结果是( )。 include main() {int a,b,c,n; a=2;b=0;c=1;n=1; while(n<=3

    下面程序的运行结果是( )。 include<stdio.h> main() {int a,b,c,n; a=2;b=0;c=1;n=1; while(n<=3) {c=c*a;b=_b+c;++n;} printf("b=%d",B); }


    正确答案:B
    B 解析:分析程序可知,n的初始值为1,因此。while(n=3)循环3次。第1次:c=c*a=2;b=b+C=2;n=2。第2次:c=c*a=4;b=b+c=6;n=3。第3次:c=c*a=8;b=b+e=14。当n=4时,判断条件不满足,退出循环。

  • 第8题:

    下面程序的运行结果是( )。 include main() {int a,s,n,m; a=2;s=0;n=1;m=1; while(m<=4

    下面程序的运行结果是( )。 include<stdio.h> main() {int a,s,n,m; a=2;s=0;n=1;m=1; while(m<=4){n=n*a;s=s+n;++m;} printf("s=%d",s); }


    正确答案:s=30
    s=30 解析:分析循环条件“m=1,m=4”,所以循环4次。第1次:n=n*a=2,s=s+n=2;m=2。第2次:n=n*a=4,s=s+n=6;m=3。第3次:n=n*a=8,s=s+n=14;m=4。第4次:n=n*a=16,s=s+n=30。

  • 第9题:

    下列程序的运行结果是()。 include main() {static char a[]="Languagef",b[]="program

    下列程序的运行结果是( )。

    #include<stdio.h>

    main()

    { static char a[]="Languagef",b[]="programe";

    Char*p1,*p2;int k;

    p1=a;p2=b;

    for(k=0;k<=8;k++)

    if(*(p1+k)==*(p2+k))printf("%c",*(p1+k));

    }

    A.gae

    B.ang

    C.program

    D.有语法错


    正确答案:A
    解析:本题考查指针的用法,if(*(p1+k)==*(p2+k))语句的功能是判断两个数组中的字符是否相同,如果相同则输出。

  • 第10题:

    执行下列程序后,输出的结果是()。 include define S(X)X*X void main() {iht a=9,k=3,

    执行下列程序后,输出的结果是( )。

    #include<stdio.h>

    #define S(X)X*X

    void main()

    { iht a=9,k=3,m=2;

    a/=S(k+m)/S(k+m);

    printf("%d",A) ;

    }

    A.1

    B.4

    C.9

    D.0


    正确答案:D
    解析:本题主要是考查带参数的宏定义及其相关运算。本题中宏运算过程如下:a=a/(S(k+m)/S(k+m))=a/(k+ m*k+m/k+m*k+m)=9/ (3+2*3+2/3+2*3+2)=0。

  • 第11题:

    阅读下面程序:include int main (){ cout<

    阅读下面程序: #include <iomanip. h> int main () { cout<<setfill( '*' )<<setw( 8 ); cout<<setprecision( 5 )<<3.1415926<<end1; return 0; } 则该程序的输出结果是 ( )。

    A.3.1415**

    B.***3.1416

    C.3.141593

    D.**3.14159


    正确答案:B
    解析:本题主要考察C++中输入输出流的格式控制操作。C++允许使用setprecision操纵符来控制输出对象的输出精度,若程序中没有指定输出精度,则其默认值为6。C++同时允许使用setfill()操纵符设置填充符,默认填充字符为空格符“”。本题程序中,首先通过setfill()操纵符设置填充字符为星号“*”,并设置输出宽度为8位;输出对象前,设置对象的输出精度为5,因此对象3.1415926的实际输出数值为3.1416(自动进行四舍五入);再把宽度设置考虑进去,由于默认对齐方式为右对齐,因此数值左边需要加填充符,即应该填充三个“*”符号以满足输出宽度为8位的要求。故程序的最终输出应该是“***3.1416”。

  • 第12题:

    阅读下面语句,则程序的执行结果是【 】。

    include "stdio.h"

    main()

    { int a=-1,b=1,k;

    if((++a<0)&&!(b--<=0))

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

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


    正确答案:10
    1,0 解析:与运算两边的语句必须同时为真时,结果才为真。当执行完if((++a<0)&&!(b--<=0))时,a,b的值已经发生了变化。

  • 第13题:

    阅读下面程序,则执行后程序的结果为 【9】

    #include "stdio.h"

    main()

    { int a=0,b=0;

    while(a <15)a++;

    while(b++ <15);

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


    正确答案:
    15,16

  • 第14题:

    阅读下面程序,则执行后的结果是

    #include "stdio.h"

    main()

    {char str[]="tomeetme",*p;

    for(p=str;p<str+7;p+=2) putchar(*p);

    printf("\n");}

    A.tomeetme

    B.tmem

    C.oete

    D.tome


    正确答案:B

  • 第15题:

    以下程序的输出结果是()。includemain(){int a=-1,b=1,k; if((++a<0)&&! (b--

    以下程序的输出结果是( )。 #include <stdio.h> 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
    解析:本题考查if语句。++a是先自增后使用,b--是先使用后自减。执行++a后,a值为0,不满足条件,所以a为0,b仍为1,接下去执行else语句,输出10。

  • 第16题:

    以下程序运行后的输出结果是【】。includemain(){int k=1,s=0; do{ if((k%2)!=0)continue;

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

    include<stdio.h>

    main()

    { int k=1,s=0;

    do{

    if((k%2)!=0) continue;

    s+=k; k++;

    }while(k>10);

    printf("s+%d\n",s);

    }


    正确答案:s=0
    s=0 解析:do-while循环结构的形式如下:
    do
    循环体
    while(表达式);
    循环的执行过程如下:
    ①执行do后面循环体中的语句。
    ②计算while后—对圆括号中表达式的值。当值为非0时,转去执行步骤1;当值为0时,执行步骤3。
    ③退出do-while循环。
    在本题中先判断k是否为偶数,如果不是则结束本次循环,进行下—次的循环条件判定,由于没有改变k的值,k>10的不成立,退出do-while循环,执行后面的printf("s=%d\n",s);语句,因为s=0,所以输出结果为s=0。

  • 第17题:

    执行下列程序后,输出的结果是()。 includedefine S(X) X*Xvoid main(){int a=9,k=3,m=

    执行下列程序后,输出的结果是( )。 #include<stdio.h> #define S(X) X*X void main() { int a=9,k=3,m=2; a/=S(k+m)/S(k+m); printf("%d",a); }

    A.1

    B.4

    C.9

    D.0


    正确答案:D
    解析:本题主要是考查带参数的宏定义及其相关运算。本题中宏运算过程如下:a=a/S(k+m)/S(k+m))=a/(k+m*k+m/k+m*k+m=9/(3+2*3+2/3+2*3+2)=0。

  • 第18题:

    下列程序的执行结果是()。 include main() {inta,b,c; a=b=2; c=(a++)-1;printf("%d,%d

    下列程序的执行结果是( )。

    #include<stdio.h>

    main()

    { inta,b,c;

    a=b=2;

    c=(a++)-1;printf("%d,%d",a,c) ;

    c+=-a+++(++b) ;printf("%d,%d",a,c) ;

    }

    A.3,1 4,1

    B.3,1 4,2

    C.2,04,1

    D.2,1 4,1


    正确答案:A
    解析:本题主要考查自加运算符(++、--)的使用。①前缀变量“++i、--i”,在使用i之前,先使i的值加1或者减1,再使用此时的表达式的值参与运算;②后缀变量“i++、i--”,先使用此时的表达式的值参与运算,在使用i之后,再使i的值加1或者减1。本题中计算表达式c=(a++)-1时先使用a的值进行计算,结果为c=2-1=1,然后将a的值加1,即执行完此语句后a的值是3;表达式c+=-a+++ (++b)等价于 c=c+(-a++)+(++b), c=1+(-3)+3=1, 此时a=4,b=3。

  • 第19题:

    下面程序运行后的输出结果是( )。 include main() {int a[]={1,2,3,4,5,6},*k[3],i=1; w

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

    include<stdio.h>

    main()

    {int a[]={1,2,3,4,5,6},*k[3],i=1;

    while(i<4)

    { k[i-1]=&a[2*i-1];

    printf("%d",*k[i-1]);

    i++;

    }

    }


    正确答案:246
    246 解析:在程序中定义了一维数组a和指针数组k,在while循环语句中,当i等于1时,k[0]的等于a[1]的地址,所以输入a[1]的值为2。当i等于1时,k[1]的等于a[3]的地址,所以输入a[3]的值为4。当i等于3时,k[2]的等于a[5]的地址,所以输入a[5]的值为6。所以此空应该填写246。

  • 第20题:

    下面程序的输出结果是( )。 include main(){static chara[]="zhao",b[]="juan"; char*pt

    下面程序的输出结果是( )。 include<stdio.h> main() {static chara[]="zhao",b[]="juan"; char*ptr1=a,*ptr2=b; int k; for(k=0;k<4;k++) if(*(ptr1+k)==*(ptr2+k)) printf("%c",*(ptr1+k));}


    正确答案:a
    a 解析:本程序先将指针ptr1和ptr2分别指向字符数组a和b,然后通过指针的移动比较a和b中是否有相同的字符。若有相同的字符则将其输出。

  • 第21题:

    有以下程序,程序执行后,输出结果是【】include void fun(int*A) {a[0]=a[1];} main() {i

    有以下程序,程序执行后,输出结果是【 】

    include<stdio.h>

    void fun(int*A)

    { a[0]=a[1];}

    main()

    { int a[10]={10,9,8,7,6,5,4,3,2,1,},i;

    for(i=2;i>1=0;i-) fun(&a[i]);

    for(i=0;i<10;i++) printf("%d,a[i]);

    printf("\n");

    }


    正确答案:7777654321
    7777654321 解析:本题主要考查函数的调用,第—次调用把数组元素a[2]的地址赋给a,此时a[1]即是原数组的a[3]等于7,再执行赋值语句a[0]=a[1],则a[0]和a[1]中的值都是7,然后再把这个值返回给a[2]同样地第二次调用的时候函数返回值也是7,第三次调用返回值也是7,因此数组的前4个元素,即对a[0]、a[1]、a[2]和a[3]的值都为7,当执行第二个for循环时输出数组中所有元素的值7777654321。

  • 第22题:

    若执行下面的程序时,从键盘上输入5和2,则输出结果是includevoid main(){inta,b,k;

    若执行下面的程序时,从键盘上输入5和2,则输出结果是 #include<iostream.h> void main() { inta,b,k; cin>>a>>b; k=a; if(a<b) k=a%b; else k=b%a; cout<<k<<endl;}

    A.5

    B.3

    C.2

    D.0


    正确答案:C
    解析:本题考查简单的if…else语句,先执行条件;if(ab)显然不成立,则执行else语句。

  • 第23题:

    下面程序的输出结果是______。include void main() { inta[6]={1,2,3,4,5,6}; for(in

    下面程序的输出结果是______。

    include<iostream.h>

    void main()

    {

    inta[6]={1,2,3,4,5,6};

    for(int i=0;i<5;i++)

    cout<<a[i]<<““;

    cout<<endl;


    正确答案:1 2 3 4 5。
    1 2 3 4 5。 解析: 本题考查的是考生使用简单循环输出数组元素的能力,因为结束条件是i5,而i初始值为0,所以只会输出前5个元素。