文档库 最新最全的文档下载
当前位置:文档库 › C期末考试复习题理工

C期末考试复习题理工

C期末考试复习题理工
C期末考试复习题理工

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

1.在C++中,函数原型不能标识(D )

A.函数的返回类型

B.函数参数的个数

C.函数参数类型

D.函数的功能

2.在C++程序中,对象之间的相互通信通过(B )

A.继承实现

B.调用成员函数实现

C.封装实现

D.函数重载实现

3.对于任意一个类,析构函数的个数最多为(B ) A.0 B.1 C.2 D.3

5.友元关系不能(A )

A.继承

B.是类与类的关系

C.是一个类的成员函数与另一个类的关系

D.提高程序的运行效率

6.语句ofstream f(″SALARY.DAT″,ios::app|ios::binary)?的功能是建立流对象f,试图打开文件SALARY.DAT 并与之连接,并且(A )

A.若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件

B.若文件存在,将其置为空文件;若文件不存在,打开失败

C.若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件

D.若文件存在,打开失败;若文件不存在,建立一个新文件

7.下面说法正确的是(B )

A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方

B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方

C.类的内联函数必须在类体内定义

D.类的内联函数必须在类体外通过加关键字inline 定义

//当程序使用内敛函数时,编译器将每个函数调用都用函数内的语句代替,这样就省去了函数调用地开销

8.可以用p.a 的形式访问派生类对象p 的基类成员a,其中a 是(D )

A.私有继承的公有成员

B.公有继承的私有成员

C.公有继承的保护成员

D.公有继承的公有成员

//函数可以调用成员,对象不可以调用

9.在公有派生情况下,有关派生类对象和基类对象的关系,不正确的叙述是( C)

A.派生类的对象可以赋给基类的对象

B.派生类的对象可以初始化基类的引用

C.派生类的对象可以直接访问基类中的成员

D.派生类的对象的地址可以赋给指向基类的指针

//派生类的对象是不能访问基类的任何成员

10.对于类定义

class A{

public:virtual void func1( ){ }

void func2( ){ }

}?

class B:public A{

public:void func1( ){cout<<″class B func 1″<

virtual void func2( ){cout<<″class B func 2″<

}?

下面正确的叙述是(C )

A. A::func2( )和B::func1( )都是虚函数

B. A::func2( )和B::func1( )都不是虚函数

C. B::func1( )是虚函数,而A::func2( )不是虚函数

D. B::func1( )不是虚函数,而A::func2( )是虚函数

第二部分非选择题(共80 分)

二、填空题(本大题共10 小题,每小题2 分,共20 分)

11.定义类的动态对象数组时,系统只能够自动调用该类的_无参_______构造函数对其进行初始化。

12.在C++程序设计中,建立继承关系倒挂的树应使用____单_一____继承。

13.表达式cout<

14.基类的公有成员在派生类中的访问权限由___访问控制___ __决定。

15.C++支持的两种多态性分别是__编译时的_(操作重载)_静态_____多态性和_运行时的(虚函数)___动态_____多态性。

16.C++中语句const char * const p=″hello″;所定义的指针p 和它所指的内容都不能被__改变(重新赋值)____。

17.假定AB 为一个类,则语句AB(AB&x);为该类_____拷贝____构造函数的原型说明。

18.将关键字const 写在成员函数的____函数头_____和____函数体_____之间时,所修饰的是this 指针。

19.在C++中,访问一个对象的成员所用的运算符是__·___,访问一个指针所指向的对象的成员所用的运算符是__>___。

20.派生类从一个或多个以前定义的该类的__基类__

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

1. 派生类对象可访问基类中的什么成员( A)

A.公有继承的公有成员

B.公有继承的私有成员

C.公有继承的保护成员

D.私有继承的公有成员

2. 定义析构函数时,应该注意( C )

A.其名与类名完全相同

B.返回类型是void类型

C.无形参,也不可重载

D.函数体中必须有delete语句

3. 如果类A被说明成类B的友元,则( D )。

A.类A的成员即类B的成员

B.类B的成员即类A的成员

C.类A的成员函数不得访问类B的成员

D.类B不一定是类A的友元

4. 应在下列程序划线处填入的正确语句是( C )

#include

class Base

{ public:

void fun(){cout<<"Base::fun"<

};

class Derived:public Base

{ void fun()

{_____________ // 显示调用基类的函数fun()

cout<<"Derived::fun"<

}

};

A.fun(); B. Base.fun(); C. Base::fun(); D. Base->fun();

5. 面向对象程序设计将数据与( A )放在一起,做为一个相互依存、不可分割的整体来处理。

A. 对数据的操作

B. 信息

C. 数据隐藏

D. 数据抽象

6. 在类中声明转换函数时不能指定( A )。

A. 参数

B. 访问权限

C. 操作

D. 标识符

7. 在派生类中重新定义虚函数时必须在( A )方面与基类保持一致。

A. 参数类型

B. 参数名字

C. 操作内容

D. 赋值

8. 下面关于C++中类的继承与派生的说法错误的是(C )。

A.基类的protected成员在公有派生类的成员函数中可以直接使用

B.基类的protected成员在私有派生类的成员函数中可以直接使用

C.公有派生时,基类的所有成员访问权限在派生类中保持不变

D.基类的protected成员在保护派生类的成员函数中可以直接使用

9. 重载赋值操作符时,应声明为( C )函数。

A. 友元

B. 虚

C. 成员

D. 多态

10. 语句 ofstream f(″SALARY.DAT″,ios::app|ios::binary); 的功能是建立流对象 f,试图打开文件 SALARY.DAT 并与之连接,并且 ( A )

A. 若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件

B. 若文件存在,将其置为空文件;若文件不存在,打开失败

C. 若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件

D. 若文件存在,打开失败;若文件不存在,建立一个新文件

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

1. 假定 AB 为一个类,则语句 AB(AB&x) ;为该类 _________ 复制构造函数的原型说明。

2. C++ 支持的两种多态性分别是 ________编译时的_ 多态性和运行时的_________ 多态性。

3. 定义类的动态对象数组时,系统只能够自动调用该类的无参的_________ 构造函数对其进行初始化。

4. 运算符重载时,其函数名由__operator运算符_构成。成员函数重载双目运算符时,左操作数是_当前对象__,右操作数是__函数形参_。

C++标准库中的异常层次的根类为exception _____类;MFC类库中绝大多数类都源自根类__ CObject _____类。

在下面横线处填上适当字句,完成类中成员函数的定义。

class A{

int * a;

public:

A(int aa=0) {

a=_ new int(aa)______; // 用 aa 初始化 a 所指向的动态对象

}

~ A(){_____delete a____;}// 释放动态存储空间

};

7.C++支持面向对象程序设计的四个要素是:封装性、继承性、抽象性和多态性。

8.模板分为类模板和函数模板。

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

1. 在下面选项中,对类的拷贝构造函数的声明形式是(B)

A. A::A(&)

B. A::A(constA&)

C. A::A(A)

D. void A::A(A&a)

2. 下面关于成员函数特征的描述中,错误的是(A )

A.成员函数不可以设置参数的默认值B.成员函数可以重载C.成员函数可以是内联函数D.成员函数可以是静态的

3. 下面关于类模板叙述不正确的是(B )

A.可以有多个构造函数B. 类模板是模板类的实例C. 一个类模板可以用来实例化多个模板类D. 类模板可以有多个参数

4. 要使一个类成为抽象类,这个类应具有的条件是(A )

A.至少有一个纯虚函数 B. 至少有一个虚函数C. 只含有一个纯虚函数 D. 只含有一个虚函数

5. 有关运算符重载正确的描述是(D )

A. C++语言允许在重载运算符时改变运算符的操作个数

B. C++语言允许在重载运算符时改变运算符的优先级

C. C++语言允许在重载运算符时改变运算符的结合性

D. C++语言允许在重载运算符时改变运算符的原来的功能

6. 下列说法正确的是( D )。

A. 一个类的对象可以是另一个类的成员

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

C. 一个类可以在另一个类定义体进行定义

D. 以上说法均正确

7. 有如下程序:

#include

class BASE{

char c;

public:

BASE(char n):c(n){}

virtual~BASE(){cout<

};

class DERIVED:public BASE

{

char c;

public:

DERIVED(char n):BASE(n+1),c(n){}

~DERIVED(){cout<

};

int main()

{

DERIVED('X');

return 0;

}

执行上面的程序将输出( C )。

A)X B)YX C)XY D)Y

8. 类MyClass的定义如下:

class MyClass

{ public:

MyClass(){value=0;}

SetValue(int i){value=i;}

private:

int value;

};

则对语句:MyClass *p,my;p=&my;正确的描述是( D )。

A. 语句p=&my;是把对象my赋值给指针变量p;

B. 语句MyClass *p,my;会调用两次类MyClass的构造函数

C. 对语句*p.SetValue(5)的调用是正确的

D. 语句p->SetValue(5)与my.SetValue(5)等价

9. 下列各类函数中,C不是类的成员函数。

A. 构造函数

B. 析构函数

C. 友元函数

D. 拷贝构造函数

10. 派生类的对象对它的基类成员中A 是可以访问的。

A. 公有继承的公有成员

B. 公有继承的私有成员

C. 公有继承的保护成员

D. 私有继承的公有成员

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

1. 定义内联函数所用的关键字inline ,定义友元所用的关键字为friend 。

2. 当一个派生类具有多个基类时,这种继承方式称为_ 多重继承__。

3. 通过一个构造函数调用虚函数时,C++系统对该调用采用静态联编。

4. 任何类中允许有_privated____、public____、_protected____三种访问控制类型的成员,数据成员和成员函数的默认类型为__privated ___。

5. 只有在公有继承的情况下,基类和派生类之间才有赋值兼容性规则。

6. C++标准库中的异常层次的根类定义在库的头文件_ exception.h

______中。

7. 运算符重载使用的两种方式是_____成员函数______和友元函数_______。

8. C++支持面向对象程序设计的四个要素是:抽象性、多态性________、封装性________和____继承性____。

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

1. 下面有关构造函数和new运算符关系正确的说法是(D )

A.new运算符不调用构造函数 B. 构造函数一定调用new运算符

C.当生成新类的实例时,先调用new运算符,然后调用构造函数进行初始化

D. 当new运算符动态产生类的对象时,new运算符也自动调用构造函数

2. 下面有关类性质的说法错误的是(D )

A.一个类可以有多个构造函数,但只有一个析构函数

B.析构函数和构造函数都不能有返回类型

C.不能给析构函数指定参数

D.一个类中不可以声明具有类类型的数据成员

3. 下面关于友元函数描述正确的是(C)

A.友元函数是类的成员B.友元函数在类的外部声明C.友元函数在类中声明D. 友元函数能够派生

4. 下面叙述正确的是( D )

A. 派生类不可以使用私用派生

B. 保护派生时,基类的保护成员在派生类中是公有的

C. 对基类成员的访问允许二义性

D. 赋值兼容规则也适用于多重继承的组合

5. 有关运算符重载正确的描述是(D)

A. C++语言允许在重载运算符时改变运算符的操作个数

B. C++语言允许在重载运算符时改变运算符的优先级

C. C++语言允许在重载运算符时改变运算符的结合性

D. C++语言允许在重载运算符时改变运算符的原来的功能

6. 下面描述中,表达错误的是(B )????

A. 公有继承时基类中的public成员在派生类中仍是public的

B. 公有继承是基类中的private 成员在派生类中仍是private的

C. 公有继承时基类中的protected成员在派生类中仍是protected的

D. 私有继承时基类中的public成员在派生类中是private的

7. 拷贝构造函数的参数是(C)

A. 某个对象名

B. 某个对象的成员名

C. 某个对象的引用名

D. 某个对象的指针名

8. 下列关于构造函数的描述中,错误的是(D)

A.构造函数可以设置默认参数B.构造函数在定义类对象时自动执行C.构造函数可以是内联函数D.构造函数不可以重载

9. 数组作为函数的形参时,把数组名作为实参,传递给函数的是(A)

A.该数组的首地址B.该数组的元素个数C.该数组中的各元素值D.该数组的大小

10. 通过一个析构函数调用虚函数时,C++系统对该调用采用(B)。

A. 动态联编

B. 静态联编

C. 不确定是哪种联编

D.函数重载

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

1.成员名限定的符号是::,它可以在引用成员时避免二义性。2.只有在公有继承的情况下,基类和派生类之间才有赋值兼容性规则。

3. 模板分为类模板和函数模板。

4. 在用class定义一个类时,数据成员和成员函数的默认访问权限是private。

5. 已知int DBL(int n){return n+n;}和long DBL(long n){return n+n;}是一个函数模板的两个实例,则该函数模板的定义是template<typenameT>TDBL(Tn){returnn+n}。(要求写出函数模板的完整定义)

6. 静态数据成员必须在类外进行初始化。

7. 含有纯虚函数的类称为抽象类。

8. 若Queue是一个类,aQueue是它的一个对象,而且该类中定义了一个静态成员函数show()则在类外对该成员的函数进行调用的方式可以为aQueue.show() 和Queue::show() 。

9. 定义内联函数所用的关键字为inline,定义友元所用的关键字为friend。

10. 使用成员函数重载运算符时,若运算符是二元的,则参数表中有1个操作数,此时当前对象作为此运算符的左操作数。

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

1. 下面有关重载函数的说法中正确的是(C )

A.重载函数必须具有不同的返回值类型;B.重载函数形参个数必须//先匹配个数在匹配类型

C.重载函数必须有不同的形参列表D.重载函数名可以不同;不同;

2. 使用string类建立对象的不正确方式是(D)。

A. string str(“OK”);

B. string str=”OK”;

C. string str;

D. string str=’OK’;

3. 面关于C++中类的继承与派生的说法错误的是( C)

A.基类的protected成员在公有派生类的成员函数中可以直接使用

B.基类的protected成员在私有派生类的成员函数中可以直接使用

C.私有派生时,基类的所有成员访问权限在派生类中保持不变

D.继承可以分为单一继承与多重继承

4. 面向对象程序设计将数据与(A )放在一起,作为一个相互依存、不可分割的整体来处理。

A. 对数据的操作

B. 信息

C. 数据隐藏

D.数据抽象

5. 一个类的析构函数 A 。

A.唯一的

B.允许重载

C.至多可有两个

D.只能是缺省的

6. 下列各类函数中,( C )不是类的成员函数。

A. 构造函数

B. 析构函数

C. 友元函数

D. 拷贝构造函数

7. 在下面选项中,对类的拷贝构造函数的声明形式是(B )

A.A::A(&) B. A::A(constA&) C. A::A(A) D. void A::A(A&a)

8. 下面关于静态成员描述正确的是(B )

A. 静态成员是对象的数据成员

B. 静态成员是对象的成员

C. 静态成员是对象的成员函数

D. 静态成员不是对象的成员

9. 下面关于成员函数特征的描述中,错误的是(A )

A.成员函数不可以设置参数的默认值B.成员函数可以重载C.成员函数可以是内联函数

D.成员函数可以是静态的

10. 下面叙述正确的是(D)

A.基类的保护成员在派生类中仍然是保护的B.基类的公有成员在派生类中仍然是公有的

C.基类的私有成员在派生类中是私有的D.从基类派生时,可以有3种派生方法

1. class base {

int a;

public:

int b;int f(int i,int j);

};

class derive:base{

int c;

public:

int base::b;

base::f(int i,int j);

};

[1]

[2]

2. #include

class A{

public:

void A(int i=0){m=i;}

void show(){cout<

void ~A(){}

private:

int m; };

void main()

{

A a(5);

a.m+=10;

a.show();

}

[3]

[4]

[5]

3. #include

using namespace std;

class base{

int a;

static int b;

public:

base(int m,int n):a(m),b(n){}

static int geta(){return a;}

static int getb(){return b;}

void show(){cout<

};

base::int b=45;

void main(){}

[6]

[7]

[8]

[1] int base::b;

[2] base::f(int i,int j);

[1] base::b; (或访问声明仅仅调整名字的访问,不可为它说明任何类型)

[2] base::f; (或访问声明不应说明函数参数)

[3] void A(int i=0){m=i;}

[4] void ~A(){}

[5] a.m+=10;

[3] 构造函数去掉void(或构造函数不能指定返回值类型)

[4] 析构函数去掉void(或析构函数不能指定返回值类型)

[5] 对象不能访问私有成员

[6] base(int m,int n):a(m),b(n){}

[7] static int geta(){return a;}

[8] base::int b=45;

[6] 不能通过构造函数初始化静态数据成员(只要把b(n)去掉即可)

[7] 静态成员函数中不能引用非静态成员数据成员(或去掉static)

[8] int base::b = 45;

1. Template

T fun(T x)

{

T y;

y=T-2*x; retrun y;

}

[1]

[2]

2. class base {

public:

f();

f(int a);

f(char *p); };

class derive:base {

public:

void f(int s);

base::f;

};

3. #include class A

{ public:

void setA(int);

void showA();

private:

int a;

};

class B

{ public:

void setB(int);

void showB(); private:

int b;

};

class C : public A, private B { public:

void setC(int, int, int);

void showC();

private:

int c;

};

}

[1] Template

[2] y=T-2*x;

[1] 改为template

[2] T不能用作-的操作数

[3] base::f;

[3] 派生类中具有与基类同名的函数,则基类中的此函数不能在派生类中进行访问声明

[4] a=x;

[5] b=y;

[6] obj.setB(6);

[7] obj.showB();

[8] return 0;

[4] 派生类不能访问基类A类的私有成员

[5] 派生类不能访问基类B类的私有成员

[6] 不能访问B类的公有成员setB

[7] 不能访问B类的公有成员showB

[8] 去掉此语句,或主函数的返回值void去掉或改为int

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

1、C++程序中,对象的初始化和清理工作,分别由两个特殊的成员函数()和()来

完成。

2、在c++中,分别用(变量)与(函数)来表现某种事物的所具有的属性和行为,并

且将它们封装在一起,形成一种抽象数据类型——类。

3、当用一个对象初始化另一个新的同类对象,将调用(),其特殊之处在于:形参是

()。

4、模板是C++支持参数化的工具,我们通常用类模板和函数模板,这些只是面向对

象的()性的一个方面。

5、如果在某个类定义中用关键字()声明了一个外部函数(也许是其他类的一个成员)

后,这个外部函数就可以例外的访问该类的任何成员,这个外部函数称为类的()函数。

6、可以将类的成员声明为static,使其成为()。这样的成员在编译时被创建,其实例

只有一个,为所有该类的对象()。

7、()是动态动态联编的基础。它是非静态的成员函数,经过()之后,在类族中可

以实现运行过程中的多态。

8、程序中有如下语句:

int a=30;int b=a++;int c=++a; 则b=( ),c=()

9、数组A[20][20]中,第一个元素是(),最后一个元素是()

10、声明一个int型指针,请为其动态分配含10个元素的地址空间:( )。

一、程序分析(30分)

1、分析程序,写出程序的输出结果(7分)。

#include

class Clock{

private:

int Hour,Minute,Second;

public:

void SetTime(int NewH=24,int NewM=24,int NewS=24)

{Hour=NewH;Minute=NewM;Second=NewS;}

void ShowTime(){cout<

};

void main()

{cout<<”time set and output: ”<

Clock MyClock;

MyCLock.SetTime();

MyClock.ShowTime();

MyClock.SetTime(8,30,30);

MyClock.ShowTime();

}

2、分析程序,写出程序的输出结果(7分)。

#include

class point{

private:

int x,y;

public:

point(int xx=0,int yy=0){x=xx?y=yy?cout<<”构造函数被调用”<

int GetX(){return x;}

int GetY(){return y;}

};

point::point(point &p)

{x=p.x;

y=p.y;

cout<<”拷贝构造函数被调用”<

}

void main()

{point A(4,5);

point B(A);

cout<

}

3、在括号中注释相应的语句(8分)

//有动态栈区的stack类

class stack{

int stacksize;

long *buffer;

long *sp;

public:

stack(int size)//()

{stacksize=size;

sp=buffer=new long[size];//()

}

~stack()//()

{delete buffer;}//()

};

void push(long );

long pop();};

void stack::push(long data)

{if(sp>=buffer+stacksize)

cout<<"overflow!\n";

else{*sp=data;

sp++;

}}

long stack::pop()

{if(sp<=buffer)

{cout<<"stack is empty!\n";return 0;} else return(*--sp);

}

void main()

{stack *pa=new stack(10);//()

pa->push(351);//->是()

pa->push(7075461);

cout<

cout<pop()<<”is popped.\n”?delete pa;//()

}

4、注释下列语句(8分)

#include

#include

#include

void main()

{char [20];

cout<<"enter the name you read:"; cin>>;

ifstream input();//()

cout<<"enter the name you write:"; cin>>;

ofstream output();//()

int number;

while(input>>number)//(){output<<10*number<<" ";}//()

input.close();//()

output.close();//()

}

二、改错(10分)

1、共5处错误,请指出,并改正。

#include

#include

class person{

char *name,sex;

int age;

public:

virtual person(char *n,int a,char s)

{strcpy(name,n);

age=a;

sex=s;

}

~person(char a){}

void print()

{cout<

};

void main()

{class zh;

zh.print();

cout<

2、共5处错误,请指出,并改正。

#include

class Position{

c语言期末测试题附答案

c语言期末测试题附答 案 集团标准化工作小组 #Q8QGGQT-GX8G08Q8-GNQGJ8-MHHGN#

课程代码:A100002 座位号: 《计算机技术基础(C 语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年 月 日 第一 部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答 案,答对一题得 2 分,共 30 分) 1、以下关于C 语言标识符的描述中,正确的是 【 】。 A )标 识符可以由汉字组成 B )标识符只能以字母开头 C )关键字可以作为用户标识符 D )Area 与area 是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【 】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d \n”,i,j,k); 3、判断char 类型的变量c1是否为数字字符的正确表达式为 【 】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是 【 】。 A )’a’&&’b’ B )a<=b C )((a>b)||(b0;i--);后,变量i 的值为 【 】。 A )10 B )9 C )0 D )1 8、若有int *p1, *p2,k; 不正确的语句是 【 】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是 【 】

c期末考试试题及答案完整版

c期末考试试题及答案 HUA system office room 【HUA16H-TTMS2A-HUAS8Q8-HUAH1688】

AutoCAD 试卷 一、 单项选择 1、AutoCAD 默认扩展名是 A 、dwt B 、dwg C 、bak D 、dxf 答案:B 2、在CAD 中,以下哪个命令可用来绘制横 平竖直的直线 A 、栅格 B 、捕捉 C 、正交 D 、对象捕捉答案:C 3、按哪个键可切换文本窗口和绘图窗口 A 、F2 B 、F8 C 、F3 D 、F5答案:A 4、默认情况下,命令提示行显示为几行 A 、3 B 、5 C 、2 D 、8答案:A 5、在CAD 中为一条直线制作平行线用什么命令 A 、移动 B 、镜像 C 、偏移 D 、旋转答案:C 6、在图层特性管理器中不可以设定哪项 A 、颜色 B 、页面设置 C 、线 宽 D 、是否打印答案:B 7、绘制建筑图步骤为 A 、墙线、轴线、门窗 B 、墙线、 门窗、轴线 C 、轴线、门窗、墙线 D 、轴线、 墙线、门窗答案:D 8、哪个命令可用于绘制直线与圆弧的复合 体 A 、圆弧 B 、构造线 C 、多段线 D 、样条曲线答案:C 9、如何在图中输入“直径”符号 A 、%%P B 、%%C C 、%%D D 、%%U 答案:B

10、如果要在一个圆的圆心写一个“A”字,应使用以下哪种对正方式 A、中间 B、对齐 C、中心 D、调整答案:A 11、在哪个层创建的块可在插入时与当前层特性一致 A、0层 B、在所有自动产生的层 C、所有图层 D、新建的图层答案:A 12、一个完整的尺寸由几部分组成 A、尺寸线、文本、箭头 B、尺寸线、尺寸界线、文本、标记 C、基线、尺寸界线、文本、箭头 D、尺寸线、尺寸界线、文本、箭头 答案:D 13、要将图形中的所有尺寸都为原有尺寸的2倍,应设定以下哪项A、文字高度 B、使用全局比例 C、测量单位比例 D、换算单位 答案:B 14、三维模型中哪种模型可以进行布尔运算 A、线框模型 B、实心体模型 C、表面体模型答案:B 15、渲染三维模型时,哪种类型可以渲染出物体的所有效果 A、一般渲染 B、普通渲染 C、照片级真实感渲染 D、照片级光线跟踪渲染答案:D 16、样板文件的括展名是 A、BAK B、SVS C、DWT D、DWG 答案:C 17、以下哪种相对坐标的输入方法是画8个单位的线长 A.8, 0 B.@0,8 C.@0<8

C语言期末考试题库(第一章 c语言基

一、单项选择 1.算术运算符,赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为(). A、关系运算,赋值运算,算术运算 B、算术运算,关系运算,赋值运算 C、算术运算,赋值运算,关系运算 D、关系运算,算术运算,赋值运算 答案:B 2.下述正确的C语言常量是:(). A、E2 B、3e-3 C、1.5E2.5 D、5.0E 答案:B 3.使用共用体变量,不可以(). A、进行动态管理 B、节省存储空间 C、同时访问所有成员 D、简化程序设计 答案:C 4.为表示关系x>=y>=z,应使用C语言表达式为:()

A、(x>=y)&(y>=z) B、(x>=y>=z) C、(x>=y)&&(y>=z) D、(x>=y)AND(y>=z) 答案:C 5.以下程序的输出结果是(). main() {char str[]="ABCD",*p=str;printf("%s\n",p);} A、68 B、ABCD C、不确定的值 D、字符D的地址 答案:B 6.char a[10];不能将字符串"abc"存储在数组中的是(). A、a="abc"; B、a[0]=0;strcat(a,"abc"); C、int i;for(i=0;i<3;i++)a[i]=i+97;a[i]=0; D、strcpy(a,"abc"); 答案:A 7.fscanf函数的正确调用形式是(). A、fscanf(文件指针,格式字符串,输入表列);

B、fscanf(格式字符串,文件指针,输出表列); C、fscanf(fp,格式字符串,输出表列); D、fscanf(格式字符串,输出表列,fp); 答案:A 8.下列数组说明中正确的是(). A、int array[][]={1,2,3,4,5,6,7,8,9,10}; B、int array[][][5]={1,2,3,4,5,6,7,8,9,10}; C、int array[][4]={1,2,3,4,5,6,7,8,9,10}; D、int array[3][]={1,2,3,4,5,6,7,8,9,10}; 答案:C 9.以下选项中,与k=n++完全等价的表达式是(). A、n=n+1,k=n B、k+=n+1 C、k=++n D、k=n,n=n+1 答案:D 10.针对下列程序段回答问题(). for(t=1;t<=100;t++) { scanf("%d",&x); if(x<0)continue;

c语言期末考试及答案讲解

C语言考试模拟试卷 1.若有定义:char c;int d;程序运行时输入:c=1,d=2<回车>,能把字符1输入给变量c、整数2输入给变量d的输入语句是 A、scanf("c=%d d=%d",&c,&d); B、scanf("c=%c d=%d",&c,&d); C、scanf("c=%d,d=%d",&c,&d); D、scanf("c=%c,d=%d",&c,&d); 【答案】D 【解析】scanf()函数中,%d对应的参数是整数型地址,%c对应参数为char 型地址,C,A选项错误;如果输入地址有多个,应该用逗号隔开,B选项错误,故答案为D选项。 2.以下叙述错误的是 A、在进行模块化程序设计的时候,应首先完成每个模块的编写调试,再集中考虑主程序中的算法 B、同一程序各模块可由一组人员同时进行编写调试,可提高编写程序的效率 C、模块化的程序设计是采用自顶向下、逐步细化的原则 D、程序的每个模块都可通过三种基本结构实现 【答案】A 【解析】结构化程序设计把一个复杂问题的求解过程分阶段进行,需要保证自顶向下、逐步细化、模块化设计、结构化编码。进行模块化设计时,首先设计框架,并定义和调试好各个模块之间的输入输出关系,然后完成各个模块的编写调试后

再集中编译,模块化的程序设计采用自顶向下、逐步细化的原则,A选项叙述错误,C选项叙述正确。各个模块可以由不同人员同时进行编写调试,提高编写程序的效率,B选项叙述正确。结构化程序主要由3种基本控制结构组成,顺序结构、选择结构、循环结构,这三种基本结构可以解决任何复杂的问题,D选项叙述正确。故选择A选项。 3.设有定义:int a=0,b=1,c=1; 以下选项中,表达式值与其它三个不同的是 A、b=a==c B、a=b=c C、a=c==b D、c=a!=c 【答案】A 【解析】赋值运算结合性为由右向左结合,赋值运算符左值为变量,右值为变量或常量,且左右两边数据类型相同才能实现赋值。成功实现赋值后以左值为返回值。逻辑表达式成立则返回1,不成立返回0。A选项逻辑表达式a==c不成立(0),则 b=0,表达式值为0。B选项中将c赋值给b,b=1,再将b赋给a,a=1,表达式值为1。C选项逻辑表达式c==b成立(1),则a=1,表达式值为1。D选项逻辑表达式a!=c成立(1),则c=1,表达式值为1。A选项与其他选项不同,A选项正确。 4.设有两行定义语句:

C语言期末考试试题

C语言试题1 一填空题(15分) 1.设x的值为15,n的值为2,则表达式x%=(n+=3)运算后,x的值为()。 2.设int a=7,b=9,t;执行完表达式t=(a>b)?a:b后,t的值是()。 3.下面程序段的输出结果是()。 int a=1234; a=a&0377; printf(“%d %o\n”,a,a); 4.a数组定义如下,按照内存排列顺序,a数组中的所有元素是()。 char a[3]; 5.设有以下宏定义,则执行赋值语句a=PP*20;(a为int型变量)后,a的值是()。 #define PR 80 #define PP PR+403 6.在C程序中,可以通过三种运算方式为指针变量赋地址值,它们是:()、()和()。7.在C文件中,数据存在的两种代码形式是()和()。 8.C语言中调用()函数打开文件,调用()函数关闭文件,调用()函数可实现文件的随机读写。 9.若有int a[3]={10,12,30};则a+1是()的地址,*(a+2)=()。 二判断对错(5分,对的划“√”,错的划“×” 1.在Turbo C中,整型数据在内存中占2个字节。() 2.表达式1/4+2.75的值是3。() 3.结构体类型只有一种。() 4.函数若无返回值,则它一定无形参。() 5.C语言只能处理文本文件和二进制文件。() 三选择题(20分) 1.设int a=12; 表达式a+=a-=a*=a的值是()。 A 12 B 144 C 0 D 132 2.以下程序的输出结果是()。 main( ) { int a=011; printf(“%d\n”,++a); } A 12 B 11 C 10 D 9 3.以下程序的输出结果是()。 #define ADD(x) (x)+(x) main() { int a=4,b=6,c=7,d=ADD(a+b)*c; printf(“d=%d”,d); } A d=70 B d=140 C d=280 D d=80 4.下面的选项中正确的赋值语句是(char a[5],*p=a;)()。 A p=“abcd”; B a=“abcd”; C *p=“abcd”; D *a=“abcd”; 5.若k为整形,则while循环执行()次。 k=2; while(k==0) printf(“%d”,k); k--; printf(“\n”); A 10 B 9 C 0 D 1

C期末考试题及答案

C期末考试题及答案 Revised at 2 pm on December 25, 2020.

一、填空题(每空0.5分,共30分) 1、世界坐标系简称__WCS_用户自定义坐标系简称__UCS_。 2、工作空间的切换:“工具”/“工作空间”或“工作空间”工具栏。 3、工具栏包括30种,系统默认的显示工具栏包括:“标准”、“属性”、“绘图”和“修改”等工具栏。 4、多线的对正方式有_上(T)_、_无(Z)_和_下(B)_。 5、文字标注包括标注单行文字和标注多行文字。 6、渲染环境是指在渲染对象时进行的雾化和深度设置。 7、漫游和飞行用户可以通过键盘和鼠标来控制视图显示,并创建导航动画。 8、编辑实体的边的种类:压印边、复制边、着色边。 9、动态块是通过自定义夹点或自定义特性定义的块。在图形中使用动态块,用户可以随时对组成块的对象进行修改。 10、三维实体是具有体积、质量、重心、回转半径、惯性距等特征的三维对象。 11、在AutoCAD 2007中,用户可以创建的光源有电光源、聚光灯光源和平行光光源。 12、相切、相切、半径法是指:通过指定圆的两个切点和半径来绘制圆。 13、绘制圆环的步骤中,先输入圆环的内径和外径,后确定圆环的中心点。 14、计算机辅助设计是:工程技术人员在CAD系统的辅助下,根据产品的设计程序进行设计的一项新技术。 15、菜单栏包括11种,每一种菜单中都含有四种显示情况:命令后跟右三角 、后跟省略号、后跟快捷键或功能键或命令呈灰色。 16、要对图形对象进行编辑就必须选中图形对象,在AutoCAD 2007中,选择对象的方法很多,常用的有_直接拾取_、矩形框选择_、_不规则区域选择_和快速选择。 17、在设置显示精度时,如果设置的精度越高,即分辨率就越高,计算机计算的时间 也越长,显示图形的速度也就越慢。 18、三维基本实体的种类包括:多段体、长方体、楔体、圆柱体、圆锥体、球体、圆环体、棱锥面。 19、布尔运算中只留重复的一部分的运算是交集运算。从一个图形中去掉与另一个图形重复部分的运算是差集运算。

最新软件测试期末考试试题及答案

一,判断 1 √ 2.× 3.√ 4.× 5. × 6. ×7. ×8. ×9.√10. ×二,选择 1. D 2. D 3. B 4. B 5. B 6. A 7. D 8. B 9. C 10. A 三填空 1. 测试计划、测试用例 2. 稳定性测试、负载测试、压力测试 3. 非增量是集成测试自顶向下增量式测试、自底向上增量式测试 4. 回归 5. 软件需求 四简答题(30分) 1.试描述软件测试的定义?(3分) 答:利用手工或者自动化的方式,按照测试方案对系统执行测试用例的过程叫做软件测试。 2.什么是软件缺陷?(4分) 答:满足以下条件的问题都叫缺陷: 软件未达到产品说明书中已标明的功能 软件出现了产品说明书中指明不会出现的错误 软件功能超出了产品说明书指明的范围 软件未达到产品说明书虽未指出但应达到的目标 软件测试员认为软件难以理解,不易使用,运行速度缓慢,或者最终用户认为该软件使用效果不好。 3.常见的黑盒测试用例的设计方法?并分别简单介绍一下各自的思想。(8分)答:等价类划分:等价类划分法是一种重要的、常用的黑盒测试方法,它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。 边界值分析:对输入输出的边界值进行测试的一种黑盒测试方法。 决策表法:决策表是分析和表达多逻辑条件下执行不同操作的情况的工具 因果图分析法:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。 错误推测法:基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对

性的设计测试用例的方法。 4. 列举常见的系统测试方法。答出来5个即可。(5分) 答:恢复测试 安全测试 强度测试 性能测试 正确性测试 可靠性测试 兼容性测试 Web测试 5.文档测试主要测试哪些内容?答出来5点即可(5分) 答:(1)检查产品说明书属性 (2)检查是否完整 (3)检查是否准确 (4)检查是否精确 (5)检查是否一致 (6)检查是否贴切 (7)检查是否合理 (8)检查代码无关 (9)检查可测试性 6. 单元测试主要测试那几方面的问题?(5分) 答:模块接口、局部数据结构、边界条件、独立的路径和错误处理。五,设计题

C语言期末考试题(含答案)

《C 语言程序设计》期末试卷 一、单项选择题(10x2’=20’) 1、以下叙述正确的是() A )C 语言的源程序不必通过编译就可以直接运行。 B ) C 语言中的每条可执行语句最终都将被转换成二进制的机器指令。 C )C 语言源程序经编译形成的二进制代码可以直接运行。 D )C 语言中的函数不可以单独进行编译。 2、一个C 语言的源程序中() A )必须有一个主函数 B )可能有多个主函数 C )必须有除主函数外其它函数 D )可以没有主函数 3、以下不能定义为用户标识符的是() A )scanf B )Void C )_3com D )int 4、若以下选项中的变量已正确定义,则正确的赋值语句是() A )x1=26.8%3; B )1+2=x2; C )x3=0x12; D )x4=1+2=3; 5、设有定义:floata=2,b=4,h=3;以下C 语言表达式中与代数式h b a *)(2 1 的计算结果不.相符的是() A )(a+b)*h/2 B )(1/2)*(a+b)*h C )(a+b)*h*1/2 D )h/2*(a+b) 6、C 语言中用于结构化程序设计的3种基本结构是() A )顺序结构、选择结构、循环结构 B )if 、switch 、break C )for 、while 、do-while D )if 、for 、continue 7.在while (!x )语句中的!x 与下面条件表达式等价的是() A)x!=0B)x==1C)x!=1D)x==0

8、有以下程序: #include voidmain(){ inti=1,j=1,k=2; if((j++||k++)&&i++) printf(“%d,%d,%d\n”,i,j,k);} 执行后的输出结果是() A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3 9、有以下程序: #include voidmain(){ inti,s=0; for(i=1;i<10;i+=2) s+=i+1; printf(“%d\n”,s);} 程序执行后的输出结果是() A)自然数1~9的累加和B)自然数1~10的累加和 C)自然数1~9中奇数之和D)自然数1~10中偶数之和 10、有以下函数定义: voidfun(intn,doublex){……} 若以下选项中的变量都已经正确定义并赋值,则对函数fun的正确调用语句是()A)fun(inty,doublem); B)k=fun(10,12.5); C)fun(x,n);D)voidfun(n,x); 二、填空题(10x2’=20’) 11、C语言描述“x和y都大于或等于z”的表达式是:。 12、函数定义时涉及的基本要素是:、、。

c语言期末测试题(附答案)

课程代码: A100002 《计算机技术基础( C 语言)》试卷 A 姓名: 学号: 专业 : 学院 : 班级 : 20 年 月 日 选择题(共 30 分) 题(本大题共 15 小题,每题只有一个正确答案,答 分,共 30 分) 1、以下关于 C 语言标识符的描述中,正确的是 【 】。 A) 标识符可以由汉字组成 B )标识符只能以字母开头 C )关键字可以作为用户标识符 D ) Area 与 area 是不同的标识符 2、使下列程序段输出“ 123, 456,78”,键盘输入数据,正确的输入是【 】 int i,j,k; scanf( “%d,%3d%”d ,&i,&j,&k); printf( “%d,%d,%dn ”,i,j,k); A ) 12345678 B )123,456, 78 C ) 123,45678 D ) 123,*45678 3、判断 char 类型的变量 c1 是否为数字字符的正确表达式为 【 】。 A) (c1>=0)&&(c1<=9) B) (c1>= '0')&&(c1<='9') C) '0'<=c1<='9' D) (c1>= '0')||(c1<= '9') 4、若有语句 int a=1,b=2,c=3 ;则以下值为 0 的表达式是 【 】。 A )' a '&&'b ' B )a<=b C )((a>b)||(b

计算机技术基础试题 第 2 页(共 10 页) A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行 break 语句,其作用是 【 】。 A )跳出该循 环体,提前结束循环 B) 继续执行 break 语句之后的循环体各语句 C) 结束本次循环,进行下次循环 D) 终止程序运行 7、执行语句 for(i=10;i>0;i--) ;后,变量 i 的值为 【 】。 A ) 10 B )9 C )0 D )1 8、若有 int *p1, *p2, k; 不正确的语句是 【 】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是 【 】 A. 静态( static ) B. 外部( extern ) C. 自动( auto ) D . 寄存器( register ) 10、如下程序的输出结果是 【 】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系 a

大学C语言期末考试习题集(带详解答案)

一、单项选择题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从 C开始执行。 A) 程序中第一条可执行语句 B) 程序中第一个函数 C) 程序中的main函数 D) 包含文件中的第一个函数 3、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B)。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C)。 A.-a1 B.a[i] C.a2_i D.int t 5~8题为相同类型题 考点:标识符的命名规则 (1)只能由字母、数字、下划线构成 (2)数字不能作为标识符的开头 (3)关键字不能作为标识符 选项A中的“-”,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是( B)。 A)3ax B)x C)case D)-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C)。 A) %x B) a+b C) a123 D) 123 选项A中的“%”,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai

数据库期末考试试题及答案

数据库期末考试试题 ━━━━━━━━━━━━━━━ 一、填空共30题(共计30分) ━━━━━━━━━━━━━━━ 第1题(分)题号:2385 ORDER BY 子句实现的是【1】. 答案: =======(答案1)======= 排序 第2题(分)题号:2374 如果列上有约束,要删除该列,应先删除【1】 答案: =======(答案1)======= 相应的约束 第3题(分)题号:2394 在每次访问视图时,视图都是从【1】中提取所包含的行和列. 答案: =======(答案1)======= 基表 第4题(分)题号:2372

1.在增加数据文件时,如果用户没有指明文件组,则系统将该数据文件增加到【1】文件组.答案: =======(答案1)======= 主 第5题(分)题号:2371 查看XSCJ数据库信息的存储过程命令是【1】 答案: =======(答案1)======= sp_helpdb 第6题(分)题号:2392 创建视图定义的T-SQL语句的系统存储过程是【1】. 答案: =======(答案1)======= sp_helptext 第7题(分)题号:2379 1.表的外键约束实现的是数据的【1】完整性. 答案: =======(答案1)======= 参照 第8题(分)题号:2390 要进行模糊匹配查询,需要使用【1】关键字来设置查询条件.

答案: =======(答案1)======= LIKE 第9题(分)题号:2380 定义标识列的关键字是【1】. 答案: =======(答案1)======= identity 第10题(分)题号:2383 在进行多表查询是,必须设置【1】条件. 答案: =======(答案1)======= 连接 第11题(分)题号:2363 联系两个表的关键字称为【1】 答案: =======(答案1)======= 外键 第12题(分)题号:2382 用【1】字句可以实现选择行的运算. 答案:

2019年C语言期末考试题与答案

1、给定n个数据, 求最小值出现的位置(如果最小值出现多次,求出第一次出现的位置即可)。 最大值第三行i<=n五行k+1 2、编写程序求无理数e的值并输出。计算公式为: e=1+1/1!+1/2!+1/3!+......+1/n! 当1/n!<0.000001时e=2.718282。 3、求一批数中最大值和最小值的积。 4、某一正数的值保留2位小数,对第三位进行四舍 五入。 5、从键盘上输入任意实数x,求出其所对应的函数值。 z=(x-4)的二次幂(x>4) z=x的八次幂(x>-4) z=z=4/(x*(x+1))(x>-10) z=|x|+20(其他)6、求出N×M整型数组的最大元素及其所在的行坐标 及列坐标(如果最大元素不唯一,选择位置在最前面 的一个)。 例如:输入的数组为: 1 2 3 4 1 5 6 12 18 9 10 11 2 求出的最大数为18,行坐标为2,列坐标为1。 7、求一个n位自然数的各位数字的积。(n 是小于10的自然数) 8、计算n门课程的平均值,计算结果作为函数值返回。例如:若有5门课程的成绩是:92,76,69,58,88,则函数的值为76.599998。 9、求一批数中小于平均值的数的个数。

10、编写函数判断一个整数m 的各位数字之和能否被7整除, 可以被7整除则返回1,否则返回0。调用该函数找出 100~200之间满足条件的所有数。 11、请编一个函数void fun(int tt[M][N],int pp[N]), tt 指向一个M 行N 列的二维数组,求出二维数组每列 中最大元素,并依次放入pp 所指一维数组中。二维 数组中的数已在主函数中赋予。 12、编写函数fun 用比较法对主程序中用户输入的具有10 个数据的数组a 按由大到小排序,并在主程序中输出 排序结果。 13、编写main 程序调用函数fact 求解从m 个元素选n 个元 素的组合数的个数。计算公式是:组合数=m!/(n!.(m-n)!)。 要求:m 不能小于n ,否则应有容错处理。 说明:函数fact(x)的功能是求x!。 14、找出一批正整数中的最大的偶数。 15、实现两个整数的交换。 例如:给a 和b 分别输入:60和65,输入为: a=65 b=60 16、将字符串中的小写字母转换为对应的大写字母, 其它字符不变。 17、求一个四位数的各位数字的立方和。 18、求一组数中大于平均值的数的个数。 例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函 数值为3。 19、对任意输入的 x ,用下式计算并输出 y 的值。 5 x<10 y= 0 x=10 -5 x>10

C语言程序设计期末考试试题(含答案)

C语言程序设计 期末考试试题及其答案 一、单项选择题(本大题共20题,每题2 分,共40分) 1、以下不是C语言的特点的是( ) A、C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件进行操作 D、C语言移植性好 2、以下不正确的C语言标识符是( ) A、ABC B、abc C、a_bc D、ab.c 3、一个C语言程序是由( ) A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( ) A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性 5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( ) A、int B、float C、double D、不确定 6、在C语言中,char型数据在内存中的存储形式是( ) A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是( ) 。 #include main(){ int x; float y; scanf("%3d%f",&x,&y); } A、12345 B、123 C、45 D、345 8、若有以下定义int a,b; float x,则正确的赋值语句是( ) A、a=1,b=2 B、b++; C、a=b=5 D、b=int(x); 9、以下程序的执行结果是( )

#include { int i=10,j=10; printf("%d,%d\n",++i,j--); } A、11,10 B、9,10 C、11,9 D、10,9 10、巳知字母A的ASCII码是65,以下程序的执行结果是( ) #include main() { char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); A、A,Y B、65,65 C、65,90 D、65,89 11、下列运算符中优先级最高的是( ) A、< B、十 C、% D、!= 12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。 A、’x’&&’y’ B、x<=y C、x||y+z&&y-z D、!((x<y)&&!z ||1) 13、判断char型变量cl是否为小写字母的正确表达式为( ) A、’a’<=c1<=f’z’ B、(c1>=a)&&(c1<=z) C、(‘a’>=c1) (‘z’<=c1) D、(c1>=’a’)&&(c1<=’z’) 14、字符串"a"在内存中占据的字节个数为( ) A、0 B、 1 C、 2 D、 3 15、下面有关for循环的正确描述是( ) A、for循环只能用于循环次数已经确定的情况 B、for循环是先执行循环体语句,后判定表达式 C、在for循环中,不能用break语句跳出循环体 D、for循环体语句中,可以包含多条语句,但要用花括号括起来 16、下面程序的运行结果是( ) #include main() {int num=0; while(num<=2) {num++; printf(“%d ,num); } } A、 1 B、 1 2 C、 1 2 3

C语言期末考试试题及答案

个人收集整理-仅供参考 2008-2009学年第一学期期末考试试卷 考试说明:本课程为闭卷考试,可携带书写与修正文具,满分为:100 分. 考试结束后请将后页答题卡与试卷分开上交 ..... 一、单选题<每题2分,共30分) 1.以下叙述正确地是 ______ . A)C程序地每行只能写一条语句 B>语言本身没有输入输出语句 C)在C程序中,注释说明只能位于一条语句地后面 D)在多函数地程序中,main函数必须放在其它子函数地定义之前 2.以下不正确地常量表示形式是 ______ . A> 0.45 B>0XF5 C>‘\85’D> 32.67E-5 3. 以下不正确地变量名是 ______ . A)R&B B> _max C>INT D> SUM3 4. 以下正确地一组语句是 ________. A> int x=y=5; B> int n; scanf("%d",&n>;int a[n]; C> char a,*p; p=&a; D> char s[10]; s="hello"; 5. 若以下变量均已正确定义和赋值,则正确地语句是 ________. A> a=b==5; B> y=x%2.0; C> x+y=10; D> n=8=2*4; 6.下面各组中与给出地程序段功能不等价地是 ________. if(a>0> b=1; else if(a==0> b=0; else b=-1; A>if(a>0> b=1; B>if(a>0> b=1; C>if(a>0> b=1; D>if(a>=0> if(a==0> b=0; else if(a==0> b=0; if(a>0> b=1; if(a<0> b=-1; if(a<0> b=-1; else b=-1; if(a==0> b=0; else b=0; if(a<0> b=-1; 7. 运行下面程序段,若输入abc#,则程序输出是:________. char c;int v1=0,v2=0; while((c=getchar(>>!='#'> { switch(c> { case 'a':v1++; default :v1++;v2++; case 'c':v2++; } } printf("v1=%d,v2=%d\n",v1,v2>; A>2,2 B>3,5 C> 3,4 D>2,5

数据库期末考试试题及答案

一、选择题(每题1分,共20分) 1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是( A )阶段。 A. 数据库系统 B. 文件系统 C. 人工管理 D.数据项管理 2.数据库三级视图,反映了三种不同角度看待数据库的观点,用户眼中的数据库称为(D)。 A. 存储视图 B. 概念视图 C. 内部视图 D. 外部视图 3.数据库的概念模型独立于(A)。 A.具体的机器和DBMS B. E-R图 C. 信息世界 D. 现实世界 4.数据库中,数据的物理独立性是指(C)。 A. 数据库与数据库管理系统的相互独立 B. 用户程序与DBMS的相互独立 C. 用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的 D. 应用程序与数据库中数据的逻辑结构相互独立 5.关系模式的任何属性(A)。 A. 不可再分 B. 可再分 C. 命名在该关系模式中可以不惟一 D.以上都不是 6.下面的两个关系中,职工号和设备号分别为职工关系和设备关系的关键字: 职工(职工号,职工名,部门号,职务,工资) 设备(设备号,职工号,设备名,数量) 两个关系的属性中,存在一个外关键字为( C )。 A. 职工关系的“职工号” B. 职工关系的“设备号” C. 设备关系的“职工号” D. 设备关系的“设备号” 7.以下四个叙述中,哪一个不是对关系模式进行规X化的主要目的( C )。 A. 减少数据冗余 B. 解决更新异常问题 C. 加快查询速度 D. 提高存储空间效率 8.关系模式中各级X式之间的关系为( A )。 A. B. C. D. 9.保护数据库,防止未经授权或不合法的使用造成的数据泄漏、非法更改或破坏。这是指数据的( A )。 A. 安全性 B.完整性 C.并发控制 D.恢复 10.事务的原子性是指( B )。 A. 事务一旦提交,对数据库的改变是永久的 B. 事务中包括的所有操作要么都做,要么都不做 C. 一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D. 事务必须使数据库从一个一致性状态变到另一个一致性状态 11.下列哪些运算是关系代数的基本运算( D )。 A. 交、并、差 B. 投影、选取、除、联结 C. 联结、自然联结、笛卡尔乘积 D. 投影、选取、笛卡尔乘积、差运算

C期末考试试卷及答案

C++期末考试试卷及答案1 一、单项选择题(每题2分,共40分) 1. ______不是属于面向对象程序设计的特性 A. 抽象性 B. 数据相关性 C. 多态性 D. 继承性 2. 将对某一类数据的处理算法应用到另一类数据的处理中,要用到C++的______ A. 类 B. 虚函数 C. 运算符重载 D. 模板 3. C++与C语言最根本的不同之处在于_______ A. 使用了类 B. 能够实现变量自动初始化 C. 支持软件重用 D. 支持接口重用 4. 动态内存分配的主要目的是_______ A. 使程序按动态联编方式运行 B. 正确合理的使用内存 C. 提高程序的运行速度 D. 提高程序的可维护性 5. 在C++函数的形参前加const关键字,是为了提高函数的_______ A. 数据封装性 B. 可理解性 C. 可维护性 D. 可重用性 6. 函数重载的目的是________ A. 实现共享 B. 使用方便,提高可读性 C. 提高速度 D. 减少空间 7. 从程序片断:char name[] = "C++"; course(name);可判断函数course的调用采用的是_______ A. 传值调用 B. 带缺省参数值的函数调用 C. 引用调用 D. 传址调用 8. 用来说明类中公有成员的关键字是________

9. 如果一个类的成员函数print()不修改类的数据成员值,则应将其声明为 A. void print() const; B. const void print(); C. void const print(); D. void print(const); 10. 下列关于构造函数的论述中,不正确的是_______ A. 构造函数的函数名与类名相同 B. 构造函数可以设置默认参数 C. 构造函数的返回类型缺省为int型 D. 构造函数可以重载 11. 在程序代码:A::A(int a, int *b) { this->x = a; this->y = b; }中,this的类型是______ A. int B. int * C. A D. A * 12. 内存泄漏是指_______ A. 内存中的数据出现丢失 B.试图释放一个已经释放了的动态分配的堆内存 C. 函数中局部变量所占的栈内存没有及时回收 D. 动态分配的堆内存在程序退出后始终被占用 A. 私有成员数据 B. 私有成员函数 C. 公有成员数据 D. 公有成员函数 14. 友元函数_______ A. 可以被声明为const B. 没有this指针 C. 可以用类名或对象名来调用 D. 只能用对象名来调用 15. 若一个类的成员函数前用static关键字修饰,则该成员函数________ A. 可以被声明为const B. 没有this指针 C. 可以访问该类的所有成员 D. 只能用对象名来调用 16. C++是用_______实现接口重用的

C语言期末考试复习题及答案

C语言期末考试复习题及答案 一、选择题:下列各题A)、B)、C)、D)四个选项中只有一个是正 确的,请将正确的选项涂写在答案纸上。答在试卷上不得分。 (1)C语言规定:在一个源程序中,main函数的位置 D 。 A)必须在最后B)必须在系统调用的库函数的后面。 C)必须在最开始。。D)可以任意 (2) C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 A 。 A)必须为字母或下划线。。B)必须为下划线。 C)必须为字母D)可以是字母、数字和下划线中的任一种字符。 (3)下面四个选项中,均是正确的八进制数或十六进制数的选项是 B 。 A)-10 0x8f -011 B) 010 -0x11 0xf1 C) 0abc -017 0xc D) 0a12 -0x123 -0xa (4) C语言中int型数据在内存中占两个字节,则unsegned int取值范围是 A 。 A)0 ~ 65535 B)0 ~ 32767 C)-32767 ~ 32768 D)-32768 ~ 327687 (5) 若有定义:int a = 7; floa x = , y = ; 则表达式x + a % 3 * (int) (x + y) % 2/4 的值是 D 。 A) B) 0.00000 C) D) (6)已知ch是字符型变量,下面不正确的赋值语句是 B 。 A)ch = 5 + 9 ; B) ch= ' a + b '; C) ch = ' \ 0 '; D) ch= '7' + '6' ; (7) 设x , y和z是int型变量,且x = 3, y = 4 , z = 5 则下面表达式中值为0的

2019年C语言期末考试题及答案

的一个)。, 求最小值出现的位置(如果最小值1、给定n个数据例如:输入的数组为:求出第一次出现的位置即可)。出现多次, 1 2 3 4 1 5 6 12 18 9k+1i<=n最大值第三行五行 10 11 2的值并输出。计算公式为:2、编写程序求无理数e e=1+1/1!+1/2!+1/3!+......+1/n! 求出的最大数为18,行坐标为2,列坐标为1。。当1/n!<0.000001时e=2.718282 7、求一个n位自然数的各位数字的积。(n 是小于10的 自然数)求一批数中最大值和最小值的积。3、 2、某一正数的值保留位小数,对第三位进行四舍48、计算n门课程的平均值,计算结果作为函数值返回。五入。例如:若有5门课程的成绩是:92,76,69,58,88,

则函数的值为76.599998。 x,5、从键盘上输入任意实数求出其所对应的函数值。 z=(x-4)的二次幂(x>4) 9、求一批数中小于平均值的数的个数。 z=x的八次幂(x>-4) z=z=4/(x*(x+1))(x>-10)z=|x|+20(其他) M×N求出、6整型数组的最大元素及其所在的行坐标10、编写函数判断一个整数m的各位数字之和能否被7整除,及列坐标(如果最大元素不唯一,选择位置在最前面 0。调用该函数找出可以被7整除则返回1,否则返回 100~200之间满足条件的所有数。 15、实现两个整数的交换。 例如:给a和b分别输入:60和65,输入为:a=65 b=60 void fun(int tt[M][N],int pp[N]),11、请编一个函数16、将字符串中的小写字母转换为对应的大写字母, N列的二维数组,求出二维数组每列M tt指向一个行其它字符不变。

相关文档
相关文档 最新文档