搜档网
当前位置:搜档网 › C++试题(一)附答案

C++试题(一)附答案

C++试题(一)附答案
C++试题(一)附答案

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

1、下列关于C++标识符的命名不合法的是

A. Pad

B. name_1

C. A#bc

D. _a12

2、若有以下类型标识符定义:()

int x=2;char w='a';float y=23.45f;double z=45.6712;则表达式w*x+y-z的结果类型是

A. float

B. char

C. int

D. double

3、若有int x=10,y=20,z=30; 则执行下面语句后,x的值是

if(x>y)

z=x;

x=y;

y=z;

A. 10

B. 20

C. 30

D. 0

4、循环语句whlie(int i=0 )i--;的循环次数是

A. 0

B. 1

C. 5

D. 无限

5、一个函数无返回值时,应选择的说明符是

A. static

B. extern

C. void

D. 无说明符

6、对重载函数形参的描述中,错误的是

A. 参数的个数可能不同

B. 参数的类型可能不同

C. 参数的顺序可能不同

D. 参数的个数、类型、顺序都相同,只是函数的返回值类型不同

7、以下能正确定义数组并正确赋初值的语句是

A. int N=5,b[N][N];

B. int a[2]={{1},{3},{4},{5}};

C. int c[2][]={{1,2},{3,4}};

D. int d[3][2]={{1,2},{3,4}};

8、下列给字符数组进行的初始化中,不正确的是

A. char s1[]="abcd";

B. char s2[3]={'x','y','\0'};

C. char s3[]={'a','x','y','\0'};

D. char s4[6]={"xyz","mnp"};

9、通常的拷贝构造函数的参数是

A.某个对象名B.某个对象成员名

C.某个对象的引用D.某个对象的指针名

10、关于构造函数特点的描述中,错误的是

A. 定义构造函数必须指出类型

B. 构造函数的名字与该类的类名相同

C. 一个类中可定义0至多个构造函数

D. 构造函数是一种成员函数

11、下面程序的运行结果为

#include

int add(int a,int b);

void main()

{

extern int x,y;

cout<

}

int x=20,y=5;

int add(int a,int b)

{

int s=a+b;

return s;

}

A.20 B.5 C.25 D.编译会提示出错信息

12、关于常成员的描述中,错误的是

A. 常成员包含常数据成员和常成员函数两种

B. 常数据成员必须是公有的

C. 常数据成员要使用构造函数成员初始化列表进行初始化

D. 常对象只能调用它的常成员函数,不能调用其它的成员函数

13、关于友元函数的描述中,错误的是

A. 友元函数不是成员函数

B. 友元函数只能访问类中私有成员

C. 友元函数破坏隐藏性,尽量少用

D. 友元函数说明在类体内,使用关键字friend

14、如果有int x,*p; float y,*q;则下面操作正确的是

A.p=x B.p=q

C.p=&x D.p=&y

15、若有函数说明void fA(int m, int n); 和指针变量的定义void (*p)(int,int);并且有p= fA则下列操作不正确的是

A.(*p)(3,4); B.p(3,4);

C.fA(3,4); D.*p++;

16、若数组名作实参而指针变量作形参,函数调用时实参传给形参的是

A. 数组的长度

B. 数组第一个元素的值

C. 数组所有元素的值

D. 数组第一个元素的地址

17、对于动态分配内存空间描述正确的是

A.使用new运算符分配的内存空间的长度必需是常量

B.delete运算符可以释放动态的存储空间和静态的存储空间

C.由new分配的内存空间是不连续的

D.delete运算符只能释放由new分配的动态存储空间

18、能够释放对象所占资源的是()

A.析构函数B.数据成员

C.构造函数D.静态成员函数

19、虚函数的定义是在基类中进行的,定义时需要冠以关键字

A.static B.frend

C.virtual D.public

20、在C++中串流类是在头文件strstrea.h中定义的,下列不属于串流类的是)A.strstream B.ostrstream

C.ofstream D.istrstream

二、填空题(共9题16空,每空1分,共16分)

1、函数重载时,编译系统会根据____ 或____ 来区分。

2、若有char a[80];则cin>>a表示从键盘上读入一个____ 到数组a中。

3、若希望用一个已有对象来构造另一个同类型的对象,可以使用____来实现。

4、静态成员属于____ ,而不属于____ ,它被同一个类的所有对象共享。

5、类的继承方式有____ 继承、____ 继承和____ 继承。

6、重载运算符的含义必须清楚,不能有____ 。

7、按照联编进行阶段的不同,联编方法可分为两种:____ 和____ 。

8、当基类中的某个成员函数被声明为虚函数后,此虚函数就可以在一个或多个派生类中被重新定义,在派生类中重新定义时,其函数原型,包括返回类型、____ 、____ 、参数类型以及参数的顺序都必须与基类中的原型完全相同。

9、C++的I/O是以的形式实现的,每个C++编译系统都带有一个面向对象的输入/输出软件包,这就是。

三、判断题(共10题,每题1分,共10分)

1、C++语言支持封装性和继承性,不支持多态性。

2、关系运算符可以用来比较两个字符的大小,也可用来比较两个字符串的大小。)

3、字符串"sdfgh"的长度是5。

4、引用和指针都可作函数参数。

5、友元函数说明在类体内,它是一种成员函数。

6、友元类必须被说明为公有成员。

7、纯虚函数是在基类中说明的虚函数,它在该基类中没有定义具体的操作内容。

8、析构函数不能被继承。

9、运算符重载以后,其优先级和结合性都不能改变。

10、在C++中,函数名实际上是一个指针,它指向函数的入口。

四、分析程序,回答所提出的问题(16分)

1、#include

class B;

class A

{

public:

A(int i)

{ a=i; }

friend int F(A &f1,B &f2);

private:

int a;

};

class B

{

c语言试题1有答案

西北工业大学 — 学年第 一 学期考试题 教学中心: 命题教师 姜学锋 审题教师 课程: C 语言程序设计 考试时间 2 小时 考试形式: 开□ 闭? A 卷□ B 卷?

char f(char x , char y) { if(x>y) return y; else return x; } void main() { int a=’9’,b=’8’,c=’7’,d=’6’; printf(“%c\n”,f(f(a,b),f(c,d))); }

西北工业大学考试试题(B卷)答案 一、单项选择题(每题2分,15小题,共30分) 评分标准: 题号答案题号答案题号答案 1 A 6 C 11 C 2 D 7 D 12 D 3 C 8 B 13 A 4 A 9 B 14 B 5 D 10 C 15 D 阅卷说明:错画叉(),对画钩(),合计本题得分并记录在得分栏上 二、填空题(每空1分,20空,共20分) 评分标准: 题号答案备注 1 函数 2 字母或下划线仅有字母、下划线算错 3 32 4 1.0/2.0*(a*x+(a+x)/(4*a)) 可能还有其他写法(需判断) 5 8 2 6 4.0 4算对 7 函数函数调用 8 x<0&&y<0||x<0&&z<0||y<0&&z<0 可能还有其他写法(需判断) 9 gets(S1); 分号不写算对,S1小写算对 10 7 11 54321 654321 12 0 a[2][1] 13 实参变量的值或值 实参数组的起始地址或地址表示“值”的说法均算对 表示“地址”的说法均算对 14 auto 自动 15 0 16 24 3*sizeof(double)算对 阅卷说明:错画叉(),对画钩(),合计本题得分并记录在得分栏上

c语言试题及答案

1、以下正确的说法是( B ) (A) 用户若需要调用标准库函数,调用前必须重新定义 (B) 用户可以重新定义标准库函数,若如此,该函数将失去原有含义 (C) 系统根本不允许用户重新定义标准库函数 (D) 用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调 2、以下正确的函数声明形式是( A ) (A) double fun(int x, int y) (B) double fun(int x; int y) (C) double fun(int x, int y); (D) double fun(int x,y); 3、以下正确的函数形式是( D ) (A) double fun(int x, int y) { z=x+y; return z;} (B) fun(int x,y) { int z; return z;} (C) fun(x,y) { int x,y; double z; z=x+y; return z;} (D) double fun(int x, int y) { double z; z=x+y; return z;} 4、以下正确的说法是( A ) 在C语言中 (A) 实参和与其对应的形参各占用独立的存储单元 (B) 实参和与其对应的形参共占用一个存储单元 (C) 只有当实参和与其对应的形参同名时才共占用存储单元 (D) 形参是虚拟的,不占用存储单元 5、若调用一个函数,且此函数中没有return语句,则正确的说法是( A ) 该函数 (A) 没有返回值 (B) 返回若干个系统默认值 (C) 能返回一个用户所希望的函数值 (D) 返回一个不确定的值 6、以下不正确的说法是( B ) C语言规定 (A) 实参可以是常量、变量和表达式 (B) 形参可以是常量、变量和表达式 (C) 实参可以为任意类型 (D) 形参应与其对应的实参类型一致 7、以下正确的说法是( C ) (A) 定义函数时,形参的类型说明可以放在函数体内 (B) return后边的值不能为表达式 (C) 如果函数值的类型与返回值类型不一致,以函数值类型为准 (D) 如果形参与实参的类型不一致,以实参类型为准 8、C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是( B ) (A) 地址传递 (B) 单向值传递 (C) 由实参传给形参,再由形参传回给实参 (D) 由用户指定传递方式

C试卷1

一、单选题:(40分) 1.设有int x=11; 则表达式( 1/3 * ++ x ) 的值是 A) 0 B) 3 C) 11 D) 12 2.定义int x=9 , y=4 , *p ; 执行p=&y ; y=x+++*p ; 后,则*p 的值为:(A)4 B)9 C)13 D)14 3. 当C只包含一个函数时,函数名必须是( ) . A) scanf B) printf C) main D) return 4.与y=(x>0?1:x<0?-1:0);的功能相同的if语句是 A) if (x>0) y=1; B) if(x) else if(x<0) y=-1; if(x>0) y=1; else y=0; else if(x<0) y=-1; else y=0; C) y=-1 D) y=0; if(x) if(x>=0) if(x>0) y=1; if(x>0) y=1; else if(x==0) y=0; else y=-1; else y=-1; 5.阅读程序 #include main() {int i=4,a; a=i++; printf(“a=%d,i=%d”,a,i);} A) a=4,i=4 B) a=5,i=4 C) a=4,i=5 D) a=5,i=5 6.以下循环体的执行次数是 main() { int i, j; for(i=0, j=1; i<=j+1; i+=2, j--) printf("%d \n", i); } A) 3 B) 2 C) 1 D) 0 7.以下叙述中不正确的是 A) 在不同的函数中可以使用相同名字的变量 B) 函数中的形式参数是局部变量 C) 在一个函数内定义的变量只在本函数范围内有效

c 试题及答案

一、单项选择题 1、下列哪个类型的对象是https://www.sodocs.net/doc/0f4794651.html,在非连接模式下处理数据内容的主要对象? (D ) A. Command B. Connection C. DataAdapter D. DataSet 2、枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类 型, 如果类型省略,则定义为( A )。 A. int B. sbyte C. uint D. ulong 3、创建数据库连接使用的对象是( A )。 A. Connection B. Command C. DataReader D. DataSet 4、C#中导入某一命名空间的关键字是( A )。 A. using B. use C.import D. include 5、一般情况下,异常类存放在什么命名空间中?( B )。 A. 生成异常类所在的命名空间 B. System.Exception命名空 间 C. System.Diagnostics命名空间 D. System命名空间 6、若将数据库中的数据填充到数据集,应调用SqlDataAdapter的( C )方 法。 A. Open B. Close C. Fill D. Update 7、若将数据集中所作更改更新回数据库,应调用SqlAdapter的(A )方法。 A. Update B. Close C. Fill D. Open 8、在使用FileStream 打开一个文件时,通过使用FileMode 枚举类型的( A ) 成员,来指定操作系统打开一个现有文件并把文件读写指针定位在 文件尾部。 A. Append B. Create C. CreateNew D. Truncate 9、在菜单项File中,为将F设为助记符,应将该菜单项的Text属性设置为 (B )。 A. @File B.&File C. %File D._File 10、指定操作系统读取文件方式中的FileMode .Create的含义是( D)。 A. 打开现有文件 B. 指定操作系统应创建文件,如果文件存在,将出现异常 C. 打开现有文件,若文件不存在,出现异常 D. 指定操作系统应创建文件,如果文件存在,将被改写 11、枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类 型,如果类型省略,则定义为( D )。 A. uint B. sbyte C. ulong D. int 12、当运行程序时,系统自动执行启动窗体的( C )事件。 A. Click B.DoubleClick C. Load D. Activated

C 试题 (1)

C++程序设计试题 1、请解释以下定义的对象的区别(10分): int a=1024; int *p=&a; int *pt=new int(1024); int *pa=new int[1024]; 2、以下语句段正确的是 。(5分) 3、写出以下程序的运行结果:a ) b ) c ) (5分) 4、为什么以下重载的fun 函数调用具有二义性?(10分) 5、Tstring 类用于实现对字符串的管理,请完成成员函数的定义。(18分) class Tstring{ char *str; int len; public: Tstring(const char *ps); ~Tstring( ); Tstring(const Tstring & source); Tstring& operator=(Tstring& it); Tstring& operator=(const char * ps); Tstring& operator+( Tstring& it);//实现字符串连接 }; a) int a; int *pi=&a; void *pv=pi; const int *pci=&a; pv=pci; b) int a; int *pi1=&a; void * pv=pi1; int *pi2=pv; c) int a=6,b=7; const int *pc=&a; pc=&b; b=8; d) int k=10,j; int *const pic=&k; *pic=8; pic=&j; a) void fun(int &x) { x=x+1;} int main( ) { int a=9; fun(a); cout<

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、布尔运算中只留重复的一部分的运算是交集运算。从一个图形中去掉与另一个图形重复部分的运算是差集运算。

C试题库有答案的

C++试题库 一、选择题 1、求“abc\\12\n”字符串的长度( C ) (A) 5 (B) 6 (C) 7 (D) 8 2、字符串常量”\tMyNane\103”的长度是:( B ) (A) 6 (B) 8 (C) 12 (D) 14 3、设x=7,执行语句y=++x,则y等于( D ) (A) 6 (B) 7 (C) 9 (D) 8 4、下列字符列中,合法的长整型常量是:( D ) (A) 4.18e3 (B) 0.46793 (C) 4L (D) 956738 5、在C++中,char类型数据在内存的存储形式是:( D ) (A) 原码(B) 反码(C) 补码(D) ASCII码 6、以下运算符中,优先级最高的是:( B ) (A) *= (B) –> (C) && (D) >= 7、若有定义“int x”,则下面不能将x的值强制转换成双精度数的表达式(D )(A)(double)x (B) double(x)(C)(double)(x)(D)x(double) 8、设有变量定义 int i, j; 与表达式 i==0 && j==0 等价的表达式是:( b ) (A) i||j (B) !i&&!j (C) !i==!j (D) i==j 9、下述叙述正确的是()。 (A)字符型变量不能赋予整数(B) 任意整数都能表示字符 (C)字符型变量可存放多个字符(D) 字符数据的值是整数值 10、设变量int a = 5; 下列哪个表达式计算后,使得变量b的值等于2 ?( A ) (A) b=a/2 (B) b=6-(a--) (C) b=a%2 (D) b=a>3?3:2 11、if…else中为避免嵌套出现二义性,C++规定else子句总与( B ) (A)其之前最近的if语句 (B)其之前最近且尚未配对的if语句 (C)缩排位置相同的if语句 (D)其之后最近的if语句 12、逻辑运算符两侧运算对象的数据( D ) (A)只能是逻辑型数据(B)只能是整型数据 (C)只能是整型或字符型数据(D)可以是任何类型的数据

C语言试题及答案

第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 32 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以 /* 符号作为开始标记,以 */ 符号作为结束标记。 第2章数据类型运算符和表达式习题 1. 单项选择题 (1) 以下选项中,正确的 C 语言整型常量是 D 。 A. 32L B. 510000 C. -1.00 D. 567 (2) 以下选项中, D 是不正确的 C 语言字符型常量。

C语言试题1

安徽大学20 -20 学年第学期 《C语言程序设计》期末考试试卷(B卷120分钟) 年级院系专业姓名学号座位号 题号 一 二 三 四 五 六 七 八 得分 得分 得分 一. 单项选择题:(每题2分,共20分) 下列各题A)、B)、C)、D)四个选项中只有一个是正确的,请将正确选项填在答题卡相应题目的横线上。答在试卷上不得分。 1.执行程序: int a; printf("%d \n", (a=3*5, a*4, a+5) );后,a的值是______。

A)60 B)20 C)15 D)10 2.程序段:int x=023; printf("%d \n", --x );的输出是______。 A)19 B)18 C)23 D)22 3.程序段:static char s[10]={'C','h','i','n','a'}; printf("%d\n",strlen(s));的输出是______。 A)6 B)5 C)11 D)10 4.若fun( int x) { printf(“%d\n”,x);}, 则fun_______。 A)返回值为void 类型B)返回值类型无法确定 C)返回值为int 类型D)没有返回值 5. 有宏定义:#define MULT1(a,b) a*b #define MULT2(a,b) (a)*(b) 且引用宏:y=MULT1(3+2,5+8); z=MULT2(3+2,5+8); 则y和z的值是______。 A)y=65,z=65 B)y=21,z=65 C)y=65,z=21 D)y=21,z=21 6.程序段char s[]="Hello", *p; p=s;执行后,*(p+5)的值是______。 A)'o' B)'\0' C)'o'的地址D)不确定的值7. 程序段:char *s=”ABCD”, *p; for( p=s; *p ; p++) printf("%s\n", p);的输出是______。 A)ABCD B)A C)D D)ABCD BCD B C ABC CD C B AB D D A A 8. 若定义:int (*p)[3]; 则标识符p______。 A)定义不合法。

C语言试题及答案

一、单项选择题 1. 软件危机具有下列表现( d )。 I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住 III. 软件常常不可维护IV. 软件成本逐年上升 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是( A )。 A. 运行和维护阶段 B. 设计阶段 C. 代码实现阶段 D. 测试阶段 3. 下列属于软件的特点的是(D )。 A. 软件是一种逻辑实体,具有抽象性 ~ B. 软件在使用过程中没有磨损、老化的问题 C. 软件不同于一般程序,它的一个显著特点是规模庞大,复杂程度高 D. 以上都正确 4. 软件工程的出现是由于(D )。 A. 软件危机的出现 B. 计算机硬件技术的发展 C. 软件社会化的需要 D. 计算机软件技术的发展 5. 软件开发技术不包含( d )。 A. 软件开发方法学 B. 软件工程环境 C. 软件工具 D. 软件质量度度量 6. 软件工程的课程特点( D )。 【 I. 学科理论及其知识应用的多维性 II. 工程化 III. 浓厚的方法学色彩 IV. 实践性、指导性强 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 7. 下列属于应用软件的是( b )。 I. 计算机辅助教学软件II. 软件测试工具 III. 办公自动化软件IV. 工程与科学计算软件

A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 8. 需求分析阶段最重要的技术文档是( b )。 - A. 设计说明书 B. 需求规格说明书 C. 可行性分析报告 D. 用户手册 9. 以下关于数据流图的说法错误的是( c )。 A. 数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储 B. 数据流图是用作结构化分析的一种工具 C. 传统的数据流图中主要由加工、数据源点/终点、数据流、控制流、数据存储组成 D. 数据流图的绘制采用自上向下、逐层分解的方法 10. 数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( c )。 A. 数据库设计 B. 数据通信 C. 数据定义 D. 数据维护 11. 需求分析阶段的研究对象是( b )。 ¥ A. 系统分析员要求 B. 用户要求 C. 软硬件要求 D. 系统要求 12. 结构化方法的基本原则是( b )。 A. 模块化 B. 抽象与分解 C. 信息隐蔽 D. 逐步求精 13. 耦合度最高的是(b)耦合。 A. 环境 B. 内容 C. 控制 D. 数据 14. 内聚程度较低的是( a )内聚。 A. 偶然 B. 通讯 C. 顺序 D. 时间 15. 对一个程序来说,组成系统的模块数目( b ),则开发成本越小。 A. 越多 B. 越少 C. 顺序 D. 时间> 16. 画软件结构图时应注意调用关系只能是(B )。 A. 从下到上 B. 从上到下 C. 从左到右 D. 从右到左 17. 程序流程图中的箭头代表( b )。 A. 数据流 B. 控制流 C. 顺序流 D. 调用 18. 软件测试是软件质量保证的重要手段,下述( B )是软件测试的最基础环节。

C语言期中考试试题及答案 1

高级语言程序设计试题 答案在最后 一、单项选择题(本大题共20 小题,每小题 2 分,共20 分)在每小题列出的四个选项中只有一 个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。 1.C 语言程序编译时,程序中的注释部分是() A. 参加编译,并会出现在目标程序中 B. 参加编译,但不会出现在目标程序中 C. 不参加编译,但会出现在目标程序中 D. 不参加编译,也不会出现在目标程序中 2.设int a=3 ;则表达式a<1&&--a>1 的运算结果和a 的值分别是() A.0 和2 B.0 和3 C.1 和2 D.1 和3 3. 与语句if(a>b)if(c>d)x=1;else x=2; 等价的是() A.if(a>b){if(c>d)x=1;else x=2;} B.if(a>b){if(c>d)x=1;}else x=2; C.if((a>b)&&(c>d))x=1;else x=2; D.if(a<=b)x=2;else if(c>d) x=1; 4.设char x='a:则 printf("x=%c,y=%c \ n",x,97);的输出是() A.x=a,y=97 B.x=97,y=a C.x=97,y=97 D.x=a,y=a 5. 执行下列程序 int a[3][3]={{1},{2},{3}}; int b[3][3]={1,2,3}; main() {printf("%d、n”,a : 1: : 0]+b[0][0]);} 后输出的结果是() A.0 B.1 C.2 D.3 6. 结构化程序设计所规定的三种基本控制结构是() A)输入、处理、输出B)树形、网形、环形 C)顺序、选择、循环D)主程序、子程序、函数 7. 完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为( ) A. 连接、编译 B.编译、连接 C.连接、运行 D.运行

C试题及答案一

C++程序设计模拟试卷(一) 一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中 只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无 分。 1. 编写C++程序一般需经过的几个步骤依次是() A. 编辑、调试、编译、连接 B. 编辑、编译、连接、运行 C. 编译、调试、编辑、连接 D. 编译、编辑、连接、运行 答案:B 解析:经过编辑、编译、连接和运行四个步骤。编辑是将C++源程序输入计算机的过程,保 存文件名为cpp。编译是使用系统提供的编译器将源程序cpp生成机器语言的过程,目标文件为 obj,由于没有得到系统分配的绝对地址,还不能直接运行。连接是将目标文件obj转换为可执行 程序的过程,结果为exe。运行是执行exe,在屏幕上显示结果的过程。 2. 决定C++语言中函数的返回值类型的是() A. return语句中的表达式类型 B. 调用该函数时系统随机产生的类型 C. 调用该函数时的主调用函数类型 D. 在定义该函数时所指定的数据类型 答案:D 解析:函数的返回值类型由定义函数时的指定的数据类型决定的。A项的表达式的值要转换 成函数的定义时的返回类型。 3. 下面叙述不正确的是() A. 派生类一般都用公有派生 B. 对基类成员的访问必须是无二义性的 C. 赋值兼容规则也适用于多重继承的组合 D. 基类的公有成员在派生类中仍然是公有的 答案:D 解析:继承方式有三种:公有、私有和保护。多继承中,多个基类具有同名成员,在它们 的子类中访问这些成员,就产生了二义性,但进行访问时,不能存在二义性。赋值兼容规则是指 派生类对象可以当作基类对象使用,只要存在继承关系,所以单继承或多继承都适用。基类中的 公有成员采用私有继承时,在派生类中变成了私有成员,所以D项错误。 4. 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体 也就是() A. 类 B. 对象 C. 函数体 D. 数据块 答案:A 解析:类即数据和操作的组合体,数据是类的静态特征,操作是类具有的动作。 5. 在公有派生类的成员函数不能直接访问基类中继承来的某个成员,则该成员一定是基类中 的() A. 私有成员 B. 公有成员 C. 保护成员 D. 保护成员或私有成员 答案:A 解析:在派生类中基类的保护或者基类公有都可以直接访问,基类的私有成员只能是基类 的成员函数来访问。所以选择A项。 6. 对基类和派生类的关系描述中,错误的是() A. 派生类是基类的具体化 B. 基类继承了派生类的属性 C. 派生类是基类定义的延续 D. 派生类是基类的特殊化 答案:B 解析:派生类的成员一个是来自基类,一个来自本身,所以派生类是基类的扩展,也是基 类的具体化和特殊化,派生类是对基类扩展。B项基类不能继承派生类成员,所以错误。 7. 关于this指针使用说法正确的是() A. 保证每个对象拥有自己的数据成员,但共享处理这些数据的代码

c语言试题1有答案

、单项选择题(每题 2分,15小题,共30分) 8.若 w=1,x=2,y=3,z=4 ,则条件表达式 wy) retur n y; else return x; } 1. C 语言源程序是由 组成的。 D)主程序和子程序 A)有零个或多个输入 C)有穷性 B)有零个或多个输出 D)可行性 3 .以下选项中合法的 C 语言标识符是 。 A) long B) _2Test C) 3Dmax D) A.dat 4 .下列转义字符中错误的是 。 A) '\000' B) '\14' C) '\x111' D) '\2' A) 语法错误 B) f 为5.0 ;的判断中, __________ 是正确的。 C) f 为 0.0 D) f 为 2.0 6 ?若变量a , b 已经正确定义并赋值,符合 A) a 2+b B) a*a+b C 语言语法的表达式是 C) a x a+b o D) a ? a+b 7 .有输入语句:scan f("a=%d,b=%d,c=%d",&a,&b,&c); 则正确的数据输入方式是 。 为使变量a 的值为1, b 的值为3,c 的值为2, A) 132 / C) a=1—b=3LJC=2 / B) 1,3,2 / D) a=1,b=3,c=2 / A) 0, 0 B) 0, 1 C) 1, 0 D) 1, 1 D) 3次 D) f A 过程 B)函数 C)子程序 2 .一个算法应该具有“确定性”等 5个特性,下面对另外 4个特性的描述中错误的是 _____________ 5 .对于语句:f=(3.0,4.0,5.0),(2.0,1.0,0.0)

完整版C试题及答案

C++考试试卷 1. 已知:char *s=S456; 则cout<>s; C) char *s1=abcd,*s2=efghijk;strcpy(s1,s2); D) char *s=abcdefg; cout<<*s; 4. C++中,关于构造函数和析构函数,正确的描述是()。 A) 在定义类时,必须自定义构造函数和析构函数,在创建对象时自动调用构造函数,在释放对象时自动调用析构函数 B) 构造函数和析构函数均可以重载 C) 已知类Student以及Student *p; 在使用p=new Student;时自动调用无参构造函数创建动态对象,在delelte p;时自动调用析构函数释放动态对象 D) 构造函数和析构函数都可以成为虚函数 )。关于拷贝构造函数的描述正确的是(5. A) 通常的拷贝构造函数的参数是对象的指针类型 B) 如果不自定义拷贝构造函数,系统提供默认的拷贝构造函数 C) 如果有自定义的构造函数,系统就不再提供拷贝构造函数 D) 如果需要用已有对象为新创建的对象初始化时,就必须自定义拷贝构造函数 6. 有关静态成员的描述错误的是()。 A) 某个类的静态数据成员由该类的所有对象所共享 B) 类的公有静态数据成员既可以用类的对象访问,也可以直接用作用域运算符“::”通过类名来访问 C) 静态数据成员既可以是私有成员,也可以是公有成员 D) 类中一旦定义了静态数据成员,就必须定义静态成员函数,以便对静态数据成员进行操作

C简单程序部分模拟试题(1)

C简单程序部分模拟试题 [1]. 以下程序的执行结果是___B_____。 main() { int x = 0, s = 0; while( !x != 0 ) s += ++x; printf( "%d ",s );} A.0 B.1 C.语法错误 D.无限循环 [2]. 若有下面的说明和定义,则sizeof(struct aa)的值是_____D___。struct aa { int r1;double r2;float r3; union uu { char u1[5]; long u2[2];} ua; }mya; A.30 B.29 C.24 D.22 [3]. 以下程序的执行结果是_____B___。 main() { int a = 1, b = 10; do { b -= a;a++;} while( b-- < 1 ); printf( "a=%d,b=%d \n ",a,b );} A.a=3,b=11 B.a=2,b=8 C.a=1,b=-1 D.a=4,b=9 [4]. 以下程序的执行结果是______D__。 main() { static int x[]={0,1,2,3,4,5,6,7,8,9 }; int s, i, *p; s=0;p=&x[0]; for( i=1;i<10;i+=2 ) s+=*( p + i ); printf( "%d ",s );} A.55

B.16 C.18 D.25 [5]. 以下程序的执行结果是_____C___。 void num() { extern x, y;int a = 15, b = 10; x = a - b;y = a + b;} int x , y ; main() { int a = 7, b = 5; x = a + b;y = a - b;num();printf( "%d , %d ",x,y);} A.12 , 2 B.不确定 C.5 , 25 D.1 , 12 [6]. 以下程序的执行结果是_____D___。 main() { static int x[]={0,1,2,3,4,5,6,7,8,9 }; int s, i, *p; s=0;p=&x[0]; for( i=1;i<10;i+=2 ) s+=*( p + i ); printf( "%d ",s );} A.55 B.16 C.18 D.25 [7]. 以下程序的执行结果是______C__。 main() { int num = 0; while( num <= 2 ) { num++;printf( "%d,",num );} } A.0,1,2, B.1,2, C.1,2,3, D.1,2,3,4, [8]. 以下程序的执行结果是_______B_。 main() { int x = 2, y = -1, z = 2;

c语言试题及答案

c语言试题及答案 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

1、以下正确的说法是(B) (A)用户若需要调用标准库函数,调用前必须重新定义 (B)用户可以重新定义标准库函数,若如此,该函数将失去原有含义 (C)系统根本不允许用户重新定义标准库函数 (D)用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调 2、以下正确的函数声明形式是(A) (A)doublefun(intx,inty) (B)doublefun(intx;inty) (C)doublefun(intx,inty); (D)doublefun(intx,y); 3、以下正确的函数形式是(D) (A)doublefun(intx,inty){z=x+y;returnz;} (B)fun(intx,y){intz;returnz;} (C)fun(x,y){intx,y;doublez;z=x+y;returnz;} (D)doublefun(intx,inty){doublez;z=x+y;returnz;} 4、以下正确的说法是(A ) 在C语言中 (A)实参和与其对应的形参各占用独立的存储单元 (B)实参和与其对应的形参共占用一个存储单元

(C)只有当实参和与其对应的形参同名时才共占用存储单元 (D)形参是虚拟的,不占用存储单元 5、若调用一个函数,且此函数中没有return语句,则正确的说法是(A) 该函数 (A)没有返回值 (B)返回若干个系统默认值 (C)能返回一个用户所希望的函数值 (D)返回一个不确定的值 6、以下不正确的说法是(B) C语言规定 (A)实参可以是常量、变量和表达式 (B)形参可以是常量、变量和表达式 (C)实参可以为任意类型 (D)形参应与其对应的实参类型一致 7、以下正确的说法是(C) (A)定义函数时,形参的类型说明可以放在函数体内 (B)return后边的值不能为表达式 (C)如果函数值的类型与返回值类型不一致,以函数值类型为准 (D)如果形参与实参的类型不一致,以实参类型为准

C试题库

2000~2001学年《程序设计基础-C》试卷 一、单项选择题(每小题 2 分,共 30 分) 1. C 语言程序中可以对程序进行注释,注释部分必须用符号_____括起来。 A、‘{‘ 和’}’ B、‘[‘和’]’ C、“/*”和”*/” D、“*/”和”/*” 2.下列运算符中,优先级最低的是_____。 A、* B、!= C、+ D、= 3.若变量已正确定义,表达式 (j=3, j++) 的值是_____ 。 A、3 B、 4 C、5 D、0 4.已知字符‘a’ 的ASCII码为 97 ,执行下列语句的输出是_____。 printf ("%d, %c", ’b’, ’b’+1 ) ; A、98, b B、语句不合法 C、98, 99 D、 98, c 5.表达式strcmp(“box”, “boss”) 的值是一个_______。 A、正数 B、负数 C、 0 D、不确定的数 6.数组定义为 int a[3][2]={1, 2, 3, 4, 5, 6},数组元素_____的值为6。 A、a[3][2] B、a[2][1] C、a[1][2] D、a[2][3] 7.要调用数学函数时,在#include命令行中应包含_____。 A、”stdio.h” B、”string.h” C、”math.h” D、”ctype.h” 8.判断i和j至少有一个值为非0的表达式是_____。 A、 i!=0 && j!=0 B、i*j!=0 C、!(i==0 || j==0) D、i&&j 9.若a是基本整型变量,c是单精度实型变量,输入语句______是错误的。 A、scanf(”%d,%f”, &a, &c); B、scanf(”d=%d, c=%f”, &a, &c); C、scanf(”%d%f”, &a, &c); D、scanf(”%d%f”, a, c); 10.若变量已正确定义并且指针p已经指向某个变量x,则(*p)++相当于_____。 A、p++ B、x++ C、*(p++) D、&x++ 11.若p1、p2都是整型指针,p1已经指向变量x,要使p2也指向x, _____是正确的。 A、p2=p1; B、p2=**p1; C、p2=&p1; D、p2=*p1; 12.下列程序段的输出是_____。 int c[]={1, 3, 5}; int *k=c+1; printf("%d", *++k); A、 3 B、 5 C、 4 D、6 13.不正确的赋值或赋初值的方式是______。 A、char str[]="string"; B、char str[7]={'s', 't', 'r', 'i', 'n', 'g'}; C、char str[10];str="string"; D、char str[7]={'s', 't', 'r', 'i', 'n', 'g', ’\0’}; 14.对于以下结构定义,++p->str中的++加在_____。 struct { int len; char *str;

C试题及答案

C#模拟练习 一.选择填空 1. 面向对象的语言具有继承性、多态性和____性。 A) 封装 B) 拆箱 C) 封闭 D) 逻辑 2. 以下叙述正确的是____ A) 接口中可以有虚方法。 B) 一个类可以实现多个接口。 C) 接口可以被实例化。 D) 接口中可以包含已实现的方法。 3. .当整数a赋值给一个object对象时,整数a将会被____。 A)拆箱 B)丢失 C) 装箱 D)出错 4. float f=-123.567F; int i=(int)f;i的值现在是_____? A) 123f B) 123.56 C) -123f D)-123 5. 委托声明的关键字是____。 A) delegate B) delete C) public D)interface 6. 在.Net中所有可序列化的类都被标记为____。 A) (serializable) B) [serializable] C) serializable D) serialize 7. C#中的索引器类型应该是_____类型。 A)整型 B)字符型 C)任意类型 D)数组8.在c#中using关键字的作用是_____ A)定义命名空间 B)新建实例 C)调用类 D)引入命名空间9.在c#中new关键字的作用是_____ A)新建对象实例 B)定义命名空间 C)调用类 D)引入命名空间 10.在c#中利用sealed修饰的类_____。 A)密封,不能继承 B)密封,可以继承 C)表示基类 D)表示抽象类 二.阅读程序,指出划线部分的含义或功能 ① using ; ②namespace ConAAAA { ③ class FirstThread { public void Task() { ("This is a Task"); } static void Main(string[] args) { ④FirstThread ft = new FirstThread(); Thread t1 = new Thread(new ThreadStart); (); ⑤(); } } } 三.写出下列程序的运行结果。 1.namespace TestAAA { class TestArray

相关主题