参考答案和解析
D
更多“以下程序的输出结果是:() ls = ["浣熊","豪猪","艾草松鸡","棉尾兔","叉角羚"] x = "豪猪" print(ls.index(x,0))”相关问题
  • 第1题:

    以下程序的输出结果是( )。 main {int x=0.5;char z=a; printf("%d\n",(x&1)&&(z<2));}A.0S

    以下程序的输出结果是( )。 main {int x=0.5;char z=a; printf("%d\n",(x&1)&&(z<2));}

    A.0

    B.1

    C.2

    D.3


    正确答案:B
    (x&1)&&(z<2)=(0.5&1)&&(a<z)=1&&1=1,故选择B选项。

  • 第2题:

    下列程序的输出结果是【】。 include using namespace std; class A {int a; public:A()

    下列程序的输出结果是【 】。

    include <iostream>

    using namespace std;

    class A {

    int a;

    public:

    A():a(9){}

    virtual void print() const { cout<<a;};

    };

    class B: public A {

    char b;

    public:

    B( ){b='S';}

    void print() const {cout<<b;}

    };

    void show(A &x){ x.print0;}

    int main()

    { Ad1,*p;

    B d2;

    p=&d2;

    d1.print();

    d2.print0;

    p->print();

    show(d1);

    show(d2);

    return 0;}


    正确答案:9SS9S
    9SS9S 解析:本题主要考查虚函数的运用。在主函数中,首先通过基类对象d1调用print()函数,即调用基类的print()函数,输出一个9。然后通过派生类对象d2调用print()函数,即调用派生类的print()函数,输出一个'S'。接下来通过基类指针p调用print()函数,p此时指向的是派生类对象,而print()函数是虚函数,根据选择题(35)的解析,此时调用的是派生类的print()函数,输出一个'S'。然后,将基类对象d1传递给 show()函数,show()函数通过基类类型引用形参x调用print()函数,此时调用基类的 print()函数,输出一个'9'。最后,将派生类对象d2传递给show()函数,此时show()函数中通过基类类型引用x调用派生类对象d2的print()函数,根据虚函数的性质,应该调用的是派生类的print()函数,输出一个'S'。故最终输出的结果是:9SS9S。

  • 第3题:

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

    include<stdio.h>

    main( )

    { int x=20;

    prinff(“%d”,0<x<20);

    prinff(“%d\n”,0<x&&x<20);}


    正确答案:10
    10 解析:第一个prinff语句输出的结果是逻辑表达式(x>0I Ix<20)的值,显然为真,即为1;第二个pfinff语句输出的是逻辑表达式(x>0&&x<20)的值,该值为假,即为0。

  • 第4题:

    有以下程序:includeusing namespace std;classA{private: int x;public: A(int a) {x

    有以下程序: #include<iostream> using namespace std; class A { private: int x; public: A(int a) { x=a; } friend class B; }; class B { public: void print(A a) { a.x--; cout<<a, x<<end1; } }; int main () { A a(10); B b; b.print (a) ; return 0; } 程序执行后的输出结果是( )。

    A.9

    B.10

    C.11

    D.12


    正确答案:A
    解析:本题考核友元类的应用。在程序中,类B是类A的友元类,因此,在类B的所有成员函数中均可访问类A的任何成员。在main()中,先定义类A的一个对象a(10)和类B的一个对象b。然后通过对象b调用其成员函数print(),输出对象a的私有成员x的值减1即9。

  • 第5题:

    以下程序的输出结果是______。includedefine FUDGE(y)2.84+ydefine PR(A)printf("%d"

    以下程序的输出结果是______。 #include<stdio.h> #define FUDGE(y) 2.84+y #define PR(A) printf("%d",(int)(a) ) #define PRINT1(A) PR(a) ;putchar('\n') main() { int x=2; PRINT1(FUDGE(5)*X); }

    A.11

    B.12

    C.13

    D.15


    正确答案:B
    解析:在程序中如果有带实参的宏,则按#define命令行中指定的字符串从左到右进行置换,如果串中包含宏中的形参,则将程序语句中相应的实参代替形参。将实参带入已经定义的宏中,可以得出答案为“12”。

  • 第6题:

    有以下程序: include class A { intx; public: A(int a) { x=a;} friend class B;

    有以下程序:

    include<iostream.h>

    class A

    {

    int x;

    public:

    A(int a)

    {

    x=a;

    }

    friend class B;

    }

    class B{

    public:

    void print(A a){

    a. x--;

    cout<<a.x<<end1;

    }

    };

    void main()

    {

    A a(10);

    B b;

    b.print(a) ;

    }

    程序执行后的输出结果是【 】。


    正确答案:9
    9 解析:本题考核友元类的应用。在程序中,类B是类A的友元类,因此,在类B的所有成员函数中均可访问类A的任何成员。在main()中,先定义类A的一个对象a(10)和类B的一个对象b。然后通过对象b调用其成员函数print输出对象a的私有成员x的值减1即9。

  • 第7题:

    以下程序的输出结果是 ______。 x=2^-2 Print x End

    A.4

    B.0.25

    C.4

    D.程序错误


    正确答案:B
    解析:在一般情况下,不允许两个运算符相连,应当用括号隔开,以免出错。乘幂号与符号相邻时为例外。

  • 第8题:

    以下程序段的输出结果是( )。 x=1 y=4 Do Until y>4 x= x * y y=y+1 Loop Print XA.1SX

    以下程序段的输出结果是( )。 x=1 y=4 Do Until y>4 x= x * y y=y+1 Loop Print X

    A.1

    B.4

    C.8

    D.20


    正确答案:B
    B。【解析】本题考查的是dountil循环语句。dountil是直到型循环,当条件为假时执行循环体,直到为真结束。本题中首先y=4,循环条件y>4,所以关系表达式的结果为假,执行循环体中的语句,直到x=4,y=5。然后再次进入循环判断。因为y=5,所以循环判断表达式结果为真,不执行循环体,循环结束。Printx打印X中的值,故选B。

  • 第9题:

    下列程序的输出结果是( )。 include int fun(int x) {int p;if(x==0‖x==1) return 3;el

    下列程序的输出结果是( )。 #include<stdio.h> int fun(int x) { int p; if(x==0‖x==1) return 3; else p=x-fun(x-2); return p; } void main() { print f("\n%d", fun(5)); }

    A.5

    B.3

    C.7

    D.1


    正确答案:A
    解析:本题考查函数的递归调用。在函数递归调用时,fun(5):a=5-fun(3)->fun3=a=3-fun(1)->fun(1):a-3,反推回去 fun(3):a=3-3=0->fun(5):a=5-0=5,最后的计算结果为5。

  • 第10题:

    有以下程序: #include 〈iostream〉 using namespace std; class A { public: virtual void setx(int i,int j=0) { x=i; y=j; } virtual void print()=0; protected: int x,y; }; class B : public A { public: void print() { cout〈〈x*x〈〈", "; } }; class C : public A { public: void print() { cout〈〈x*x*x〈〈end1; } }; int main() { A *pa; B b; C c; pa=&b; pa->setx(5); pa->print (); pa=&c; pa->setx(2); pa->print(); return 0; } 程序运行后的输出结果是( )。

    A.25,8

    B.2,5

    C.5,2

    D.8,25


    正确答案:A
    解析:该程序中定义了A类、B类和C类共3个类。其中,类A是抽象类,它的类体内有一个纯虚函数pnnt()。抽象类不可以定义对象,但可以定义指向对象的指针。类B和类C都是类A的公有派生类,这些类是具体类,它们对A类中纯虚函数都有不同的实现。该程序的主函数中,定义一个指向类A对象的指针pa,又定义了类B和类C的2个对象,并使指针pa分别指向这些对象。这里,采用动态联编,在运行时选择print()函数。所以,执行语句序列“pa=&b;pa->setx(5);pa->print();”后,系统调用类B的print()函数,输出25;执行语句序列“pa=&c;pa->setx(2);pa->prim();”后,系统调用类C的prim()函数,输出8。

  • 第11题:

    下列程序段:Dim x If x Then Print x Else Print x+1运行后,显示的结果是()。

    • A、1
    • B、0
    • C、-1
    • D、出错

    正确答案:A

  • 第12题:

    单选题
    下列程序段:Dim x If x Then Print x Else Print x+1运行后,显示的结果是()。
    A

    1

    B

    0

    C

    -1

    D

    出错


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

  • 第13题:

    以下程序的输出结果是 ( ) fun (int x,int y, int z) { z=x * x+y * y;} main( ) { int a=31; fun(5,2,a); print{("%d",a); }

    A.0

    B.29

    C.31

    D.无定值


    正确答案:C

  • 第14题:

    下面程序段的输出结果是【 】。

    For X=1.5 To 5 Step 1.5

    Print X;

    Next X


    正确答案:1.5 3 4.5
    1.5 3 4.5

  • 第15题:

    以下程序的输出结果是includevoid main( ){int i,j,x=0;for(i=0;i<2;i++){x++;for(

    以下程序的输出结果是 #include<iostream.h> void 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++;} cout<< "x="<<x;}

    A.x=4

    B.x=8

    C.x=6

    D.x=12


    正确答案:B
    解析:该题是一个for循环嵌套语句。第一层for循环循环2次,第二层循环3次,但当j等于 0和1时,将执行continue语句,不执行x++运算,所以每次执行完内循环后,x的增量为1。最后一个x++运算将每次累加起来就是x的值。

  • 第16题:

    有以下程序: include difine F(X, Y)(X)*(Y)main(){int a=3, b=4; print("% d\n",

    有以下程序: # include<stdio. h> # difine F(X, Y) (X)*(Y) main() { int a=3, b=4; print("% d\n", F(a++, b++)); } 程序运行后的输出结果是______。

    A.12

    B.15

    C.16

    D.20


    正确答案:A
    解析:F(a++,b++)的宏展开为:F(a++,b++)=(a++)*(b++)=a*b=3×4=12,因此printf函数的输出结果是12。

  • 第17题:

    以下程序运行后的输出结果是( )。 include main() { int x=20; printf("%d", 0

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

    include<stdio.h>

    main()

    { int x=20;

    printf("%d", 0<x<20);

    printf("%d\n", 0<x && x<20);

    }


    正确答案:10
    10 解析:表达式0x20,首先计算0x,其值为1,再计算120,其值为1,输出1;表达式0x && x20,0x为1,x20为0,再计算1 && 0,其值为0,输出0。所以输出结果为10。

  • 第18题:

    以下程序运行后的输出结果是______。 Private Sub Form_ Click() y=1 :x=2 Print Iif(x>=y,x,y) End Sub

    A.0

    B.1

    C.2

    D.3


    正确答案:C
    解析:当Iif函数的条件为真时,函数返回表达式1的值,否则返回表达式2的值。由于本题的条件x>=y为真,故函数返回表达式1,即x的值2。

  • 第19题:

    以下程序段的输出结果是【 】。

    int x, i ;

    for (i=1; i<=100; i++)

    { x=i;

    if (++x%2==0)

    if (++x%3==0)

    if(++x%7==0) cout<<i<<' , ';

    }


    正确答案:25 67
    25, 67

  • 第20题:

    有下列程序: fun(int x) {int p; if(x= =0 ‖ x= =1) return(3); p=x-fun(x-2); return p; } main( ) { print f("%d\n",fun(7 ));} 执行后输出的结果是( )。

    A.7

    B.3

    C.2

    D.0


    正确答案:C
    解析:因为在函数fun(int x)中,如果参数x等于0或1时,返回值3。否则p=x-fun(x-2)这是一个递归函数,所以在主函数调用fun(7)时,其过程为:"fun(7)=7-fun(5)=7-(5-fun(3))=7-(5-(3-fun(1)))=7-(5-(3-3))=7-5=2",所以最后的输出结果为2。

  • 第21题:

    下面程序的输出结果是 ( ) main( ) { char x=040; print{("%d\n",x=x<<1);}

    A.100

    B.160

    C.120

    D.64


    正确答案:D

  • 第22题:

    以下程序的输出结果是()。includevoid main(){int i,j,x=0;fof(i=0;i<2;i++={x++;fo

    以下程序的输出结果是( )。 #include<iostream.h> void main() {int i,j,x=0; fof(i=0;i<2;i++= {x++; for(j=0:j<3;j++= {if(j%2)continue; x++; x++;} cout<<"x="<<X;=

    A.x=4

    B.x=8

    C.x=6

    D.x=12


    正确答案:B

  • 第23题:

    单选题
    有以下程序:#include #define F(x) 2.84+x#define PR(a) printf(%d,(int)(a))#define PRINT(a) PR(a);putchar('')main(){ PRINT(F(5)*2);}程序运行后的输出结果是(  )。
    A

    12

    B

    13

    C

    15

    D

    11


    正确答案: A
    解析:
    直接置换宏定义命令行中相应形参字符串,非形参字符保持不变。将PRINT(F(5)*2)用PR(F(5)*2); putchar('')替换,将PR(F(5)*2)用printf(“%d”, (int)(F(5)*2))替换,再将F(5)用2.84+5替换,最后替换结果为printf(“%d”, (int)(2.84+5*2)); putchar(''),运行结果为:12<回车>。答案选择A选项。

  • 第24题:

    单选题
    有以下程序:#includemain(){ int x=0x13; if(x=0x12)printf(True); printf(False);}程序运行后的输出结果是(  )。
    A

    True

    B

    TrueFalse

    C

    False

    D

    TrueFalseTrue


    正确答案: C
    解析:
    if(x=0x12)条件语句为赋值语句,注意赋值操作符“=”与相等操作符“==”的区别,此处是赋值语句“=”0x12即十进制的18,给x赋值18,因此if的判断条件为真,执行输出语句,输出True;之后再执行下一个输出语句,输出False,答案选择B选项。