在下面程序横线处填上适当内容,以使该程序执行结果为4.4。includeusing namespace std;在下面程序横线处填上适当内容,以使该程序执行结果为4.4。include<iostream>using namespace std;template<typename T>T average(T*datA){T s=0;int i:0;while(data[i])【 】;return s/(i+1);}int main(){double x[]={2.5,4.5,6.5,5,0.0,5,3,18

题目
在下面程序横线处填上适当内容,以使该程序执行结果为4.4。includeusing namespace std;

在下面程序横线处填上适当内容,以使该程序执行结果为4.4。

include<iostream>

using namespace std;

template<typename T>

T average(T*datA)

{

T s=0;

int i:0;

while(data[i])

【 】;

return s/(i+1);

}

int main()

{

double x[]={2.5,4.5,6.5,5,0.0,5,3,18.5};

cout<<average(X);

return 0;

}


相似考题
参考答案和解析
正确答案:s+=data[i++]
s+=data[i++] 解析:函数average()中的while循环用来将求传入的数组中各元素的值的总和。
更多“在下面程序横线处填上适当内容,以使该程序执行结果为4.4。include<iostream>using namespace std; ”相关问题
  • 第1题:

    在下面程序的横线处填上适当的内容,使程序执行后的输出结果为ABCD。 include usingn

    在下面程序的横线处填上适当的内容,使程序执行后的输出结果为ABCD。

    include <iostream.h>

    using namespace std;

    class A

    {

    public: A() {cout<<'A';

    };

    class B:______

    {

    public: B() {cout<<'B';}

    };

    class C:______

    {

    public: C(} cout<<'C';}

    };

    class D:public B, public C

    {

    public: D(){cout<<'D';}

    };

    void main(){D obj;}


    正确答案:virtual public A; visual public A
    virtual public A; visual public A 解析:本题考核虚基类的应用。通过虚基类所派生的类,在所产生的对象中,只包含了一个和其他类共享的基础对象,也就是说,从同一个基类中以虚拟方式派生的所有类,在它们所产生的对象里,不会有一份基础对象,而只是在内存里保留一份基础对象,而派生类中只保留指向此基础对象的指针,这样就千会同时有两份基类对象的情形发生。题中程序最后字符A只输出了一次,所以类A必须为类 B和类C的虚基类。

  • 第2题:

    在下面的程序的横线处填上适当的语句,使该程序的输出结果为12。include using namespac

    在下面的程序的横线处填上适当的语句,使该程序的输出结果为12。

    include<iostream>

    using namespace std;

    class TestClass

    {

    public:

    int a,b;

    TestClass(int i,int j)

    {

    a=i;

    b=j;

    }

    };

    class TestCla


    正确答案:coutTestClass∷a
    coutTestClass∷a 解析: 题目中程序TestClass为基类,TestClass1为派生类,在主函数中定义TestClass1对象d(1)。据题目要求“输出基类数据成员a的值”,基类为TestClass,利用∷域运算符取其成员a的值。

  • 第3题:

    在下面程序横线处填上适当内容,使程序执行结果为: S=2 S=5 S=9 #include <iostream.h> void sum(int i) {static int s; _________; cout<<"s="<<s<<endl; } void main (void) {int i; for (i=0; i<3;i++) sum(i);


    D D。【解析】由主函数main入手,定义了类D对象obi。其中D为类B和C的公有继承,A是C的虚基类。题目中要求的输出结果为ABCD,依次为类A、类B、类C、类D中构造函数的输出语句。为了保证基类通过多条路径被派生类继承,即保证A只被继承一次,输出一个A,所以不但需要声明A为C的虚基类,同样也要声明A为B的虚基类。

  • 第4题:

    在下列的程序的横线处填上适当的语句,使该程序的输出为12。include using namespace

    在下列的程序的横线处填上适当的语句,使该程序的输出为12。

    include<iostream.h>

    using namespace std;

    class Base

    {

    public:

    int a,b;

    Base(int i){a=i;}

    };

    class Derived:public Base

    {

    int a;

    public:

    Derived(int x):Base(x),b(x+1){};

    void show()

    {


    正确答案:eoutBase::a。
    eoutBase::a。 解析: 本题考查的是基类和派生类的构造函数。派生类构造函数的执行顺序:首先调用基类的构造函数,调用顺序按它们被继承时说明的顺序;然后调用子对象的构造函数,调用顺序按它们在类中说明的顺序;最后是派生类构造函数中的内容。本题要求结果是输出12,分析题目,首先调用基类的构造函数,然后是调用子对象的构造函数,横线处要求输出基类成员a的值,填入toutBase::a即可。

  • 第5题:

    在下面程序的横线处填上适当的内容,使程序执行后的输出结果为ABCD。 include using nam

    在下面程序的横线处填上适当的内容,使程序执行后的输出结果为ABCD。

    include<iostream>

    using namespace std;

    class A

    {

    public: A(){cout<<'A';}

    };

    class B:【 】

    {

    public:B(){cout<<'B';)

    };

    class C:【 】

    {

    public;C(){cout<<'C';}

    };

    class D:public B,public C

    {

    public:D(){cout<<'D';}

    };

    void main(){D obi;}


    正确答案:virtual public A virtual public A
    virtual public A virtual public A