飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 2980|回复: 4

[转贴]C++语言程序设计试题没事做一做

[复制链接]
  • TA的每日心情
    难过
    2024-4-22 14:49
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2004-12-12 18:57:04 | 显示全部楼层 |阅读模式
    孔子曰稳固而自信
    说明:在本试卷中规定整型(int)数据占用4个字节的存储单元。



    一、选择题(每小题1分,共6分)



    1.由C++目标文件连接而成的可执行文件的缺省扩展名为              。

            A.  cpp                         B.  exe

            C.  obj                         D.  lik

    2.在下面的一维数组定义中,哪一个有语法错误。               

            A.   int  a[ ]={1,2,3}               B.   int  a[10]={0}

            C.   int  a[ ]                      D.   int  a[5]

    3.在下面的函数声明中,存在着语法错误的是                。

            A.   void  BC(int  a , int)           B.  void  BD(int , int)

            C.   void  BE(int , int=5)            D.  int  BF(int  x ; int  y)

    4. 假定AB为一个类,则该类的拷贝构造函数的声明语句为              。

            A.  AB &(AB  x)                 B.  AB(AB  x)

            C.  AB(AB  &)                   D.  AB(AB * x)

    5.对于结构中定义的成员,其隐含访问权限为            。

            A.  public                        B.  protected

            C.  private                       D.  static

    6.当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为       。

            A.  iOS::in                      B.  ios::out

            C.  ios::int | ios::out              D.  没有



    二、填空题(每小题2分,共24分)

    1.执行“cout  <<43<<’-‘<<18<<’=’<<43-18<<endl;”语句后得到的输出结果为       。

    2.已知’A’~’Z’的ASCII码为65~90,当执行“char  ch=14*5+2; cout  <<ch<<endl;”语句序列后,得到的输出结果为          。

    3.使用const 语句定义一个标识符常量时,则必须对它同时进行         。

    4.表达式x=x+1表示成增量表达式为          。

    5.若x=5,y=10,则x>y和x<=y的逻辑值分别为         和         。

    6.执行“typedef  int  ABC[10];”语句把ABC定义为具有10个整型元素的        。

    7.假定p所指对象的值为25,p+1所指对象的值为46,则执行“(*p)++;”语句后,p所指对象的值为         。

    8.假定一个二维数组为a[M][N],则a的地址值(以字节为单位)为                。

    9.假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为     

                   。

    10.设px是指向一个类动态对象的指针变量,则执行“delete  px;”语句时,将自动调用该类的         。

    11.若需要把一个函数“void  F( );”定义为一个类AB的友元函数,则应在类AB的定义中加入一条语句:              。

    12.若要在程序文件中进行标准输入输出操作,则必须在开始的 # include 命令中使用

                 头文件。



    三、下列程序运行后的输出结果(每小题6分,共36分)

    1. # include <iostream.h>

    void main()

    {

           int s=0;

           for (int i=1;  ; i++) {

                  if (s>50) break;

                  if (i%2==0)  s+=i;

           }

           cout  <<"i,s="<<i<<","<<s<<endl;

    }



    2. # include <iostream.h>

    void main()

    {

           char a[]="abcdabcabfgacd";

           int i1=0,i2=0,i=0;

           while (a) {

                  if (a=='a') i1++;

                  if (a=='b') i2++;

                  i++;

           }

           cout <<i1<<' '<<i2<<endl;

    }



    3. # include <iomanip.h>

    void main()

    {

           int a[9]={2,4,6,8,10,12,14,16,18};

           for (int i=0; i<9; i++) {

                  cout <<setw(5)<<*(a+i);

                  if ((i+1)%3==0) cout <<endl;

           }

    }



    4. # include <iomanip.h>

    void LE(int * a,int * b) {

           int x=*a;

           *a=*b;  *b=x;

           cout <<*a<<' '<<*b<<endl;

    }

    void main()

    {

        int x=10,y=25;

        LE(&x,&y); cout <<x<<' '<<y<<endl;

    }



    5. # include <iostream.h>

    class A {

           int a,b;

    public :

           A() { a=b=0; }

           A(int aa,int bb) {

                  a=aa; b=bb;

                  cout <<a<<' '<<b<<endl;

           }

    };

    void main()

    {

           A x,y(2,3),z(4,5);

    }



    6. # include <iostream.h>

    template <class TT>

    class FF {

           TT a1,a2,a3;

    public :

           FF(TT b1,TT b2,TT b3) {

                  a1=b1; a2=b2; a3=b3;

           }

           TT Sum() { return a1+a2+a3; }

    };

    void main()

    {

           FF <int> x(2,3,4),y(5,7,9);

           cout <<x.Sum()<<' '<<y.Sum()<<endl;

    }





    四、写出下列每个函数的功能(每小题6分,共24 分)

    1.double SF(double x,int n) {

        // n为大于等于0的整数

        double p=1,s=1;

        for (int i=1; i<=n; i++) {

               p*=x;

               s+=p/(i+1);

        }

        return s;

    }



    2. float FH() {

        float x,y=0,n=0;

        cin >>x;

        while (x!=-1) {

               n++; y+=x;

               cin >>x;

        }

        if (n==0) return y; else return y/n;

    }



    3.  # include <iostream.h>

    void WA(int a[],int n) {

           for (int i=0; i<n-1; i++) {

                  int k=i;

                  for (int j=i+1; j<n; j++)

                         if (a[j]<a[k]) k=j;

                         int x=a; a=a[k]; a[k]=x;

           }

    }



    4.  # include <iomanip.h>

    # include <fstream.h>

    void JB(char * fname)

           // 可把以fname所指字符串作为文件标识符的文件称为fname文件

           // 假定该文件中保存着一批字符串,每个字符串的长度均小于20

    {

           ifstream fin(fname);

           char a[20];

           int i=0;

           while (fin>>a) {

                  cout <<a<<endl;

                  i++;

           }

           fin.close();

           cout <<"i="<<i<<endl;

    }



    五、编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平均值的元素个数并返回。(10分)

       int  Count(double a[],int n);   // 此为该函数的声明。
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2005-3-8 18:44:55 | 显示全部楼层
    有答案吗??????????/
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2005-3-11 16:23:26 | 显示全部楼层
    看完之后又感到好多的东西学的都不精
    拿书 饿补
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2005-4-10 01:34:36 | 显示全部楼层
    填空题的解答:
    1:43-18=25
    2:\
    3:赋值
    4:x+=1
    5 :0,1
    6:数组
    7:46
    8:a[0]
    9:*(p->b)
    10:首地址
    11:不会
    12:<iostream.h>
    选择题:1:B 2:C 3:D 5:B

    五:
    int cont(double a[],int n)
    {
         int num=0;
         int i;
         int sum=0;
    for(i=0;i<n;i++)       //求和
             sum+=a[i];
    for(i=0;i<n;i++)       //统计大于等于平均数的个数
      if(a[i]>=sum/n) num++;
      cout<<num<<endl;
    }
    这是我做的。。谢谢指教。有的不会做。。各位大哥大姐帮帮小弟。。因为刚刚学C++。
    还有啊,小、弟有个问题。。向函数传递二维数组的问题还有点模糊。。请详细讲解之。。谢谢。。
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-1-6 12:21
  • 签到天数: 90 天

    [LV.6]常住居民II

    发表于 2005-5-11 20:57:47 | 显示全部楼层
    我来作选择题:
    B   C    D   C    A     C
    没有翻黑课本哦,可能答案有错的!
    望指教!
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表