最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

C语言程序设计A期末模拟试题一

来源:动视网 责编:小OO 时间:2025-10-04 08:01:31
文档

C语言程序设计A期末模拟试题一

C语言程序设计A期末模拟试题一一、单项选择题(每小题2分,共20分)1.由C++目标文件连接而成的可执行文件的缺省扩展名为()。A.cppB.exeC.objD.lik2.x>0&&xaD.px.a8.栈具有()的操作特性。A.先进先出B.先进后出C.进出无序D.进出任意9.对于任一个类,用户所能定义的构造函数的个数至多为()。A.0B.1C.2D.任意个10.下列对派生类的描述中错误的说法是:()。A.派生类至少有一个基类B.派生类可作为另一个派生类的基类C.派生类除了包含它直接定义的成员外
推荐度:
导读C语言程序设计A期末模拟试题一一、单项选择题(每小题2分,共20分)1.由C++目标文件连接而成的可执行文件的缺省扩展名为()。A.cppB.exeC.objD.lik2.x>0&&xaD.px.a8.栈具有()的操作特性。A.先进先出B.先进后出C.进出无序D.进出任意9.对于任一个类,用户所能定义的构造函数的个数至多为()。A.0B.1C.2D.任意个10.下列对派生类的描述中错误的说法是:()。A.派生类至少有一个基类B.派生类可作为另一个派生类的基类C.派生类除了包含它直接定义的成员外
   C语言程序设计A期末模拟试题一

一、单项选择题(每小题2分,共20分)

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

     A. cpp       B. exe       C. obj       D. lik

2.x>0 && x<=10的相反表达式为(    )。

A. x<=0 || x>10 B. x<=0 && x>10

C. x<=0 || x<=10 D. x>0 && x>10

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

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

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

4.假定p是具有double类型的指针变量,则表达式++p使p的值(以字节为单位)增加(  C )。

A. 1        B. 4        C. sizeof(double)        D. sizeof(p)

5.当#include后面的文件名用双引号括起来时,寻找被包含文件的方式是(  B  )。

        A. 直接按系统设定的标准方式搜索目录

        B. 先在源程序所在目录搜索,再按系统设定的标准方式搜索目录

        C. 仅仅搜索源程序所在目录

        D. 搜索当前逻辑盘上的所有目录

6.假定指针变量p定义为“int *p=new int(100);”,要释放p所指向的动态内存,应使用语句(  A  )。

        A. delete p;     B. delete *p;     C. delete &p;     D. delete []p;

7.假定AA为一个类,a为该类公有的数据成员,px为指向该类对象的一个指针,则访问px所指对象中数据成员a的格式为(   )。

A. px(a) B. px[a] C. px->a D. px.a

8.栈具有(   )的操作特性。

        A. 先进先出      B. 先进后出      C. 进出无序      D. 进出任意

9.对于任一个类,用户所能定义的构造函数的个数至多为(    )。

        A. 0      B. 1      C. 2      D. 任意个

10.下列对派生类的描述中错误的说法是:(    )。

       A. 派生类至少有一个基类

       B. 派生类可作为另一个派生类的基类

       C. 派生类除了包含它直接定义的成员外,还包含其基类的成员

       D. 派生类所继承的基类成员的访问权限保持不变

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

1.C++语言是在_________语言的基础上发展起来的。

2.当执行cin语句时,从键盘上输入每个数据后必须接着输入一个________符,然后才能继续输入下一个数据。

3.假定x是一个逻辑量,则x && false的值为__________。

4.元素类型为char的二维数组a[10][30]共占用____ ____字节的存储空间。

5.局部变量具有局部生存期,存放在内存的______栈______区中。

6.已知语句“cout<7.对类中常量成员的初始化是通过在构造函数中给出的______________来实现的。

8.在重载一个单目运算符时,参数表中没有参数,说明该运算符函数只能是类的_____________。

9.假定用户为类AB定义了一个构造函数“AB(int aa):a(aa){}”,则定义该类的对象时,有________种定义格式。

10.在每个成员函数中,隐含的第一个参数的参数名为________。 

三、程序填充题(对程序、函数或类中划有横线的位置,根据题意按标号把合适的内容填写到程序下面相应标号的后面。每小题6分,共24分)

1. 斐波那契数列的第1和第2个数分别为0和1 ,从第三个数开始,每个数等于其前两个数之和。求斐波那契数列中的前20个数,要求每行输出5个数。

#include

void main() {

    int f,f1,f2,i;

cout<<” 斐波那契数列:\n”;

    f1=0; f2=1;

cout< for(i=3;i<=20;i++) {

        f=______(1)______; 

cout<if(_____(2)______) cout<f1=f2;

f2=____(3)_______;

        }

cout<    }

(1)                 (2)                  (3) 

    2. 对数组a[n]按升序进行的选择排序算法

        void SelectSort(int a[], ___(1)___)

        {

            int i,j,k;

for(i=1;i                k=i-1;

     for(j=i;j             if(a[j]                int x=a[i-1]; a[i-1]=a[k]; ___(3)___;

            }

        }

(1)                  (2)                   (3) 

    3. 已知一个类的定义如下:

#include

class AA {

    int a[10];

    int n;

public:

    void SetA(int aa[], int nn); //用数组aa初始化数据成员a,

                                 //用nn初始化数据成员n

    int MaxA();  //从数组a中前n个元素中查找最大值

void SortA();  //采用选择排序的方法对数组a中前n个元素

               //进行从小到大排序

    void InsertA();//采用插入排序的方法对数组a中前n个元素进行从小到大排序

    void PrintA();  //依次输出数组a中的前n个元素

};

    该类中MaxA()函数的实现如下,请在标号位置补充适当的内容。

int ____(1)_____ 

{

    int x=a[0];

for(int i=1; i     if(a[i]>x) ___(2)___;

    ___(3)___;

}

(1)                   (2)                   (3)

4.class A {

     int a;

   public:

     A() {a=0;}

     ___(1)___{}  //定义构造函数,用参数aa初始化数据成员a

   };

   main() {

     ___(2)___;  //定义类A的指针对象p

     ___(3)__;   //用p指向动态对象并初始化为整数5

   }

(1)                    (2)                    (3)

四、理解问答题(写出前两小题的程序运行结果和指出后两小题的程序(或函数)所实现的功能。每小题6分,共24分)

1. #include

#include

        void main()

        {

            int a[8]={25,48,32,85,,18,48,29};

            int max,min;

            max=min=a[0];

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

if(x>a[i]) max=a[i];

          if(x            }

     cout<<"max:"< cout<<"min:"<        }

2. #include

       void main()

       {

for(int i=1,s=0;i<20;i++) {

               if(i%2==0 || i%3==0) continue;

     cout<               s+=i;

           }

     cout<       }

    3.  void trans(int x)

        {  

            char a[10];

            int i=0,rem;  

            do {

                rem=x%16;

                x=x/16;

     if(rem<10) a[i]=48+rem; //’0’字符的ASCII码为48

                else a[i]=55+rem;        //’A’字符的ASCII码为65

                i++;

            }while(x!=0);

while(i>0) cout< cout<        }

   4. char *f(char *s){

            int n=strlen(s);

            char* r=new char[n+1];

            for(int i=0; i if(s[i]>='a' && s[i]<='z') r[i]=s[i]-'a'+'A';

                else r[i]=s[i];

            r[n]=’\\0’;

        return r;

        }

五、编程题(每小题6分,共12分)

1. 求出从键盘上输入的10个整数中的最大值,要求输入变量用x表示,存储最大值的变量用max表示。

2. 根据下面类中Reverse 函数成员的原型和注释写出它的类外定义。

class AA {

    int* a;

    int n;

    int MS;

public:

    void InitAA(int aa[], int nn, int ms) {

     if(nn>ms) {cout<<"Error!"<        MS=ms;

        n=nn;

        a=new int[MS];

     for(int i=0; i    }

AA* Reverse();  //对于调用该函数的对象,将其a数组中前n个

       //元素值按相反的次序排列,返回指向该对象的指针。

};

C语言程序设计A期末模拟试题一

一、单选题

1. B    2. A    3. C    4.B        5.C        6.A        7.C        8.B        9.D        10.D

二、填空题

1. C    2. 空白        3. false(或0)     4. 300        5.栈    6.H        7. 初始化表        

8. 成员函数        9. 1        10. this

三、程序填充题

1. (1) f1+f2                (2) i%5==0        (3) f

2. (1) int n                    (2) k=j           (3) a[k]=x

3. (1) AA::MaxA()             (2) x=a[i]       (3) return x

4. (1) A(int aa):a(aa)         (2) A *p          (3) p=new A(5)

四、理解问答题

1. 

max:85 

min:18 

2. 

1 5 7 11 13 37 

3.

此函数用于把十进制整数x转换为十六进制数字串输出

4.

根据参数s所指向的字符串,生成一个由r所指向的新字符串并返回,该字符串使s字符串中的小写字母均变为大写。

五、编程题

1. #include

       void main() 

       {

            int x,max; 

cin>>x;

           max=x;  

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

     cin>>x;

     if(x>max) max=x;

           }

     cout<<"max:"<       }

2.

AA* AA::Reverse()

{

    

    int i,x;

for(i=0; i        x=a[i]; a[i]=a[n-1-i]; a[n-1-i]=x;

    }

    return this;

}

文档

C语言程序设计A期末模拟试题一

C语言程序设计A期末模拟试题一一、单项选择题(每小题2分,共20分)1.由C++目标文件连接而成的可执行文件的缺省扩展名为()。A.cppB.exeC.objD.lik2.x>0&&xaD.px.a8.栈具有()的操作特性。A.先进先出B.先进后出C.进出无序D.进出任意9.对于任一个类,用户所能定义的构造函数的个数至多为()。A.0B.1C.2D.任意个10.下列对派生类的描述中错误的说法是:()。A.派生类至少有一个基类B.派生类可作为另一个派生类的基类C.派生类除了包含它直接定义的成员外
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top