VC++程序设计练习题

合集下载

VC++程序设计试卷

VC++程序设计试卷

《VC++程序设计》学科一、单项选择题(每题2分,共20分)1.设有说明语句:int d,e;以下选项中,存在语法错误的是()。

A.d=9+e==d+2;B.d=e+=2;C.f=g+f=j*k++; D.(++d)++;2.设有函数调用语句:fun((x1,x2),x3,(x4,x5,x6));该函数调用中实参的个数是()。

A.2 B.3 C. 5 D.63.以下对二维数组的说明中,存在语法错误的是()。

A.int a[][3]={3,2,1,1,2,3};B.int a[][3]={{3,2,1},{1,2,3}};C.im a[2][3]={1} D.int a[2][]={{3,2,l},{1,2,3}};4.以下选项中,存在语法错误的是()。

A.float x,&j=x;B.int c,&d=c,&e=d;C.char b, &k=b;D.int f,&g;g=f;5.下述关于抽象类的描述中,错误的是()。

A.可以通过在类中定义纯虚函数的方式定义抽象类B 不可以创建抽象类的对象C 不可以创建抽象类的引用D.可以创建抽象类的指针6.下列有关函数缺省参数的描述中,正确的是()。

A:设置了缺省值的参数左边不允许出现没有指定缺省值的参数B.同一个函数在同一个文件中可以提供不同缺省参数值C.参数缺省值要设置在函数定义语句中,不能设置在函数说明语句中D. 一个函数具有缺省值的参数只能有一个。

|7.在以下选项中,C++语言不能重载的运算符是()。

A.?:B.+ C.[] D.<=8.假设a是类E的对象,执行语句:E b=a;则要调用类E中的()。

A.缺省构造函数B.operator=()函数c.拷贝构造函数D.对象之间的赋值9.已知在函数set中,语句this一>ff=5;与语句ff=5;的效果完全相同。

根据这一结论,以下叙述中不正确的是()。

A.ff是某个类的数据成员,Set是该类的友元函数B.ff是某个类的数据成员,Set是该类的成员函数C.Set不是该类的静态成员函数D.ff不是该类的常成员数据10.以下对派生类的描述中,不正确的是()。

c语言程序设计试卷

c语言程序设计试卷

c语言程序设计试卷C语言程序设计试卷一、单项选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. function2. 在C语言中,以下哪个是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. {"Hello, World!"}D. ("Hello, World!")3. 下列哪个是C语言中的合法变量名?A. 2variableB. variable-nameC. variable#nameD. variable_name4. 在C语言中,哪个运算符用于计算两个整数的乘积?A. *B.C. /D. %5. 下列哪个语句可以正确地交换两个变量的值?A. a = b;B. a = a + b;C. a = a + b - a;D. a = b; b = a;6. 在C语言中,以下哪个是正确的数组声明语句?A. int array[10];B. int [10] array;C. int 10 array[];D. int array[10] = {0};7. 下列哪个是C语言中正确的条件语句?A. if (x > y)B. if x > yC. if (x > y) thenD. if (x > y) { /* code */ }8. 在C语言中,哪个函数用于将整数转换为字符串?A. intToStringB. itoaC. toStringD. convertToInt9. 下列哪个是C语言中正确的循环结构?A. do-whileB. while-doC. do-doD. while-while10. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. typeC. classD. union二、填空题(每空2分,共20分)11. C语言中,一个基本的数据类型是____,用来存储字符。

C语言程序设计练习题(含程序及参考答案)1

C语言程序设计练习题(含程序及参考答案)1

C语言练习题(所提供的源程序均采用自定义函数方式解决,如不采用函数方式,也可直接在main函数中借鉴该思想编程,因时间有限,所有程序未能一一验证,仅供参考使用)1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。

#include <stdio.h>int fun(int a,int b,int c){if(a+b>c && b+c>a && a+c>b){if(a==b && b==c )return 3;else if(a==b||b==c||a==c)return 2;else return 1;}else return 0;}void main(){int a,b,c,shape;printf("\nInput a,b,c: ");scanf("%d%d%d",&a,&b,&c);printf("\na=%d, b=%d, c=%d\n",a,b,c);shape =fun(a,b,c);printf("\n\nThe shape : %d\n",shape);}2、编写一个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。

#include <stdio.h>void fun(int *x,int *y){int t;t=*x;*x=*y;*y=t}void main(){int a=3,b=8;printf("%d %d\n",a,b);fun(&a,b);printf("%d %d\n",a,b);}3、从键盘输入3个数,将最大值放在变量a中,最小值放在变量c中。

VC++程序设计习题参考答案

VC++程序设计习题参考答案

VC++程序设计习题参考答案
第一章
一、选择题
二、填空题
第二章
一、选择题
二、把数学表达式写成C/C++表达式
三、根据条件写一个C/C++表达式
第三章
一、选择题
注:第3题没有正确选项,结果应该是:75其他值。

第7题严格来说选项C也不是死循环,
因为当k增加到int类型的最大值后再加1会变成负数。

第四章
一、选择题
注:第2题选项A和D都不能对数组初始化。

第3题题目应改为:“要使字符数组具有字符串初值……”。

第6题题目有误,选项A、B、C是表达式不是语句,D中有印刷错误:“SCtring”应为“CString”。

第五章
一、选择题
第六章
一、选择题
个共有成员函数”,否则选项中就没有正确答案了。

第七章
一、选择题
第八章
第九章
一、选择题。

C语言程序设计练习题(答案)

C语言程序设计练习题(答案)

C语言程序设计练习题(答案)1.1上机实训项目实验1实验步骤1、进入VC环境从“开始”→“程序”→“Microsoft Visual Studio 6.0”→“Microsoft Visual C++ 6.0”,这时进入VC集成环境的主菜单窗口,屏幕显示如图1_1所示。

图1-1 VC集成环境的主菜单窗口2、VC环境下C程序的编辑、连接和运行(1)新建一个源程序①在VC环境中选择“文件”菜单,然后单击“新建”菜单项。

如图1-2所示图1-2 选择新建② 在弹出的新建对话框中设置好相应的内容,如图2-2所示。

要事先准备好保存文件的目录,例d:\lx 目录。

在图1-3中“文件”一栏的源程序文件的扩展名一定要输入C 语言程序的扩展名“.c ”。

设置好后,单击“OK ”,就回到了VC++的编辑界面,即将进行输入和编辑的源程序文件example.c 文件存放在D 盘的LX 目录下。

图1-3 新建对话框的设置③ 在图1-4的工作区中,输入源程序2.设置源程序的文件名,扩展名一定要为“.c ”且一定要输入扩展名1.单击该处3.设置存放目录图1-4 输入、编辑源程序④输入源程序文件后可在主菜单栏中选择“文件”(FILE),并在其下拉菜单中选择“保存”(SAVE),如图1-5所示。

图1-5 保存源程序⑤源程序的编译如图2-6所示,单击主菜单的“编译”(Build),在其下拉菜单中选择“编译example.c”(Compile example.c),或者单击工具栏上的“编译”按钮,如图1-6所示。

在单击“编译”后,屏幕上会出现一个如图1-7所示的对话框。

内容是“This build command requires an activeproject worksapce,Would you like to create a default project worksapce?”,要创建一个默认的项目工作区,单击“是(Yes)”,表示同意,将开始编译;单击“No ”,表示不同意,将取消编译。

VC程序设计基础习题2

VC程序设计基础习题2

《Visual C++ 程序设计基础》练习题第二部分面向对象的程序设计一、复习并回答下列问题:1. 什么是类,类的定义格式如何?类中成员的访问权限有哪些?2. 类中的数据成员和成员函数有何区别?对成员函数的定义有何规定?3. 什么是对象?对象的定义格式如何?对象成员如何表示?指向对象指针的成员如何表示?4. 构造函数的功能和特点有哪些?析构函数的功能和特点又有哪些?默认构造函数和默认析构函数有何特点?5. 拷贝构造函数的功能和特点是什么?默认拷贝构造函数有何用处?6. 成员函数具有哪些特征?7. 静态数据成员如何定义?如何引用?它有何特点?静态成员函数有何特点?8. 友元函数如何定义?它有什么特点?友元类如何定义?它又有何特点?9. 类的作用域是什么?按生存期如何划分对象?10.什么局部类?11.什么是指向对象的指针?什么是对象的引用?它们如何被定义?它们的主要功能是什么?12.什么是对象数组?什么是对象数组指针?它们是如何定义的?13.this指针的含义是什么?为什么在程序中很少见到?14.指向一维对象数组的指针是如何定义的?它的功能是什么?15.什么是对象指针数组?它是如何被定义的?16.如何使用const来说明指针常量?使用const说明常量时应注意些什么?17.如何说明const成员函数?const成员函数有何特点?18.const数据成员如何初始化?19.什么是对象成员?如何对对象成员进行初始化?20.使用new运算符创建对象时和创建对象数组时有何不同?21.什么是转换函数?如何定义一个转换函数?转换函数有何功能?22.什么是继承性?为什么说它是面向对象语言中的重要机制?23.C++语言中继承分为哪两类?继承方式又分为哪三种?三种不同继承方式有何特点?24.不同继承方式中,说明下列各种情况对于基类成员访问有何不同?A) 派生类B) 派生类的对象C) 派生类的派生类25.如何定义单继承的派生类?如何定义多继承的派生类?26.派生类及基类之间有什么关系?27.单继承中, 派生类的构造函数如何定义?28.多继承中, 派生类的构造函数如何定义?29.什么是子类型?它有何作用?30.多继承中那些情况下会出现二义性?如何消除?31.为什么要引入虚基类?带有虚基类的派生类构造函数有什么特点?32.什么是多态性?为什么说"多态性是继承性的补充"?33.什么是函数重载?定义重载函数时应注意哪些问题?34.什么是运算符重载?是否所有的运算符都能重载?35.运算符重载的定义格式如何?运算符重载有几种形式?36.运算符被重载后及原运算符有何关系?37.什么是编译时多态性和运行时多态性?38.什么是虚函数?如何说明虚函数?是否所有的成员函数都可以说明为虚函数?39.什么是纯虚函数?什么是抽象类?40.虚析构函数有何功能?41.总结c++语言的多态性包含哪些内容?42.在C++的输入输出操作中,如何理解"流"的概念?从流的角度说明什么是提取操作?什么是插入操作?43.系统预定的流类对象中,cin和cout的功能是什么?44.从键盘上输入一个字符有哪些方法?输入一个字符串有哪些方法?45.向屏幕上输出一个字符有哪些方法?输出一个字符串有哪些方法?46.如何将一个int型的数按不同进制形式输出?47.如何输出一个指定精度的浮点数?48.如何确定输出数据项的宽度?49.打开和关闭一个磁盘文件有哪些方法?50.读写磁盘文件中信息有哪些方法?51.如何对文件进行随机存取操作?二、填空1. 关于类定义格式的描述中,〖D〗是错的。

VC_复习题+答案

VC_复习题+答案

《VC程序设计》试卷1一、单项选择题(每小题1分,共20分)1、假定MyClass为一个类,则执行“” MyClass a[3],*p[2];”语句时,自动调用该类构造函数的次数为(B)A、2B、3C、4D、52、对于类中定义的成员,其隐含访问权限为(B)A、protectedB、privateC、publicD、static3、一个类的友元函数或友元类能够通过成员操作符访问该类的(B)A、私有成员B、所有成员C、公用成员D、保护成员4、下面说法正确的是(A)A、构造函数可以重载,析构函数不能重载。

B、构造函数不能重载,析构函数可以重载。

C、构造函数可以重载,析构函数也可以重载。

D、构造函数和析构函数都不可以重载。

5、下列语句的运行结果为(D)#include <iostream.h>srtuct COMPLEX{int x;int y;} cNum[2]={1,3,2,7};void main(){cout<< cNum[0].y*cNum[1] x<<endl;}A、3B、2C、21D、66、类AB的造缺省构函数和析构函数是( A )A、AB( )和~AB( )B、AB(int)和~AB( )C、AB( )和~AB(delete )D、AB( )和int~AB( )7、在C++中,若对函数未加说明,则函数的隐含类型是(A)A、intB、doubleC、voidD、char8、已知类A是类B的友元,类B是类C的友元,则( D )A、类A一定是类C的友元B、类C一定是类A的友元C、类C的成员函数可以访问类B的对象的任何成员D、类A的成员函数可以访问类B的对象的任何成员9、下列说法中正确的是( B )A、类定义中只能说明函数成员的函数头,不能定义函数体B、类中的函数成员可以在类体中定义,也可以在类体之外定义C、类中的函数成员在类体之外定义时必须要与类声明在同一文件中D、在类体之外定义的函数成员不能操作该类的私有数据成员10、以下不属于成员函数的是( B)A、静态成员函数B、友元函数C、构造函数D、析构函数11、对于消息队列的描述正确的是(D)A、在Windows中只有一个消息系统,即系统消息队列。

vc编程设计例题100例

vc编程设计例题100例

vc编程设计例题100例VC编程是指使用Visual C++进行程序设计的一种方法。

在学习VC 编程的过程中,通过实际的例题练习,可以更好地掌握编程技巧和应用。

下面将介绍一些VC编程设计例题,供大家参考。

1. 编写一个程序,实现两个整数的加法运算,并输出结果。

2. 编写一个程序,实现两个整数的乘法运算,并输出结果。

3. 编写一个程序,实现两个整数的除法运算,并输出结果。

4. 编写一个程序,实现两个整数的取余运算,并输出结果。

5. 编写一个程序,实现两个整数的比较,并输出较大的数。

6. 编写一个程序,实现两个整数的比较,并输出较小的数。

7. 编写一个程序,实现两个整数的平均值计算,并输出结果。

8. 编写一个程序,实现两个整数的最大公约数计算,并输出结果。

9. 编写一个程序,实现两个整数的最小公倍数计算,并输出结果。

10. 编写一个程序,实现一个整数的阶乘计算,并输出结果。

11. 编写一个程序,实现一个整数的平方计算,并输出结果。

12. 编写一个程序,实现一个整数的立方计算,并输出结果。

13. 编写一个程序,实现一个整数的平方根计算,并输出结果。

14. 编写一个程序,实现一个整数的立方根计算,并输出结果。

16. 编写一个程序,实现一个整数的正弦计算,并输出结果。

17. 编写一个程序,实现一个整数的余弦计算,并输出结果。

18. 编写一个程序,实现一个整数的正切计算,并输出结果。

19. 编写一个程序,实现一个整数的反正弦计算,并输出结果。

20. 编写一个程序,实现一个整数的反余弦计算,并输出结果。

21. 编写一个程序,实现一个整数的反正切计算,并输出结果。

22. 编写一个程序,实现一个整数的自然对数计算,并输出结果。

23. 编写一个程序,实现一个整数的指数计算,并输出结果。

24. 编写一个程序,实现一个整数的对数计算,并输出结果。

25. 编写一个程序,实现一个整数的四舍五入计算,并输出结果。

26. 编写一个程序,实现一个整数的向上取整计算,并输出结果。

VC++程序设计模拟试题1

VC++程序设计模拟试题1

VC++程序设计模拟试题1VC++程序设计一、选择题:(1题1分)1.以下选项中,哪一个是合法的字符常量A."N"B. '\010 'C.AD.652.表达式"(a=3*2,b=a/2),b-a,a+=2"的值是A.-3B.6C.8D.123.有以下的程序段,其输出结果是int x,y,z;x=y=z=0;x=++x||++y&&++z;cout<<x<<","<<y<<","<<z<<end;< p="">A.1,1,1B.1,1,0C.1,0,0D.0,0,04.以下程序的执行结果是#includeclass OBJ{ int n;public:OBJ(int i=0) {n=i;}operator++( ) {n++;}void Show( ) {cout<<n<<endl;}< p="">};void main( ){ OBJ obj(3);++obj;obj.Show( );}A.3B.4C.0D.15.设有以下程序段:int a[5]={0},*p,*q;p=a;q=a;则下列选项中,合法的运算表达式是A.p-qB.p+qC.p*qD.p%q6.假设MyClass为一个类,则该类的拷贝的构造函数的声明语句为A.MyClass&(MyClass x); B.MyClass(MyClass x);C.MyClass(MyClass &x);D.MyClass(MyClass *x);7.以下程序的执行结果是#includevoid main( )S[3]= '\0';cout<<s<<endl;< p="">}A.12B.123C.1234D.1234568.下面关于纯虚函数与抽象类的描述中,错误的是:A.纯虚函数是一种特殊的虚函数,它没有具体的体现B.抽象类是指具有纯虚函数的类C.一个基类中如果具有纯虚函数,该基类的派生类不能再是抽象类D.抽象类只能作为基类来用,其纯虚函数的实现由派生类给出9.以下程序段的输出结果是:int x=5;do{x--;}while(!x);cout<<x<<endl;< p="">A.5B.4C.0D.-110.下列虚基类的声明中,正确的是A.class virtual B:public AB.virtual class B:public AC.class B:public AD.class B:virtual public A11.以下四组语句中不符合C++语法规则的是A.char s[ ]= "Nanjing";B.char s[20];s="Nanjing";C.char *p="Nanjing"; C.char*p;p="Nanjing";12.类MyClass的定义如下:class MyClass{ int value;public:MyClass( ) {value=0;}Set Variable(int i) {value=i};};则以下各项对下面语句的描述中,正确的是:MyClass *p,my;p=&myA.语句"p=&my"是把对象my赋值给指针变量pB.语句"MyClass *p,my; "调用了两次构造函数C.语句"*p.SetVariable(5); "是正确的调用形式D.语句"p→SetVariable(5) "与语句"my.SetVariable(5) "是等价的13.下面函数的功能是int fun(char *x){ char *y=x;while(*y++);}A.求字符串长度B.比较两个字符串的大小C.将字符串x复制到字符串yD.将字符串x连接到字符串y后面14.有如下程序段int **p,*s,k=20;s=&kp=&s请指出**p所代表的是A.&sB.&kC.sD.k15.有以下程序:#include#includevoid main( ){ char s[ ]= "\n123\\";cout<<strlen(s)<< ","<<sizeof(s)<<endl;<="" p="">}该程序执行后的结果是A.赋初值的字符串有错B.4,6C.0,6D.5,616.若有定义:int *p;则下列各选项中,不同于表达式"*p=*p+1; "的是A.*p++;B.++*p;C.*p+=1;D.++(*p); 17.定义如下枚举类型:enum Day{Monday,Tuesday,Wednesday,Thursday,Friday=2}; 则下列语句正确的是:A.表达式Wednesday= =Friday的值是1B.Day day;day=3;C.Day day;day=Monday+3;D.Day day;day=Tuesday+10; 18.以下程序的执行结果是#includevoid main( ){ int a[9]={1,2,3,4,5,6,7,8,9},*p[3];for(int i=0;i<3;i++)p[i]=&a[i*3];cout<<p[1][2]<<endl;< p="">}A.9B.6C.3D.219.下列程序段的输出结果是#includevoid fun(int *x,int *y)*x=3;*y=4;}void main( ){ int x=1,y=2;fun(&y,&x);cout<<x<<y<<endl;< p="">}A.2143B.1212C.1234D.211220.对于运算符>>,其重载函数是一个A.用于输入的友元函数B.用于输入的成员函数C.用于输出的友元函数D.用于输出的成员函数二、基本概念填空题(1题2分)1.在用class定义一个类时,数据成员和成员函数的默认权限是【1】。

c程序设计考试试题

c程序设计考试试题

c程序设计考试试题C程序设计考试试题一、选择题(每题2分,共20分)1. 在C语言中,以下哪个是合法的变量名?A. 2variableB. variable-nameC. variable_nameD. variable-name22. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. stringD. double3. 以下哪段代码可以正确地声明一个整型数组?A. int array[10] = {0, 0, ...};B. int array[] = {0, 1, 2, ...};C. int array[10] = {1};D. int array = {1, 2, 3};4. C语言中,以下哪个关键字用于定义函数?A. ifB. whileC. functionD. void5. 在C语言中,以下哪个语句用于结束程序的执行?A. break;B. continue;C. return;D. exit;6. 以下哪个选项是C语言中的正确注释方式?A. /* This is a comment */B. // This is a commentC. /*/ This is a comment */D. //* This is a comment */7. 以下哪个选项是C语言中的逻辑运算符?A. &&B. ||C. <=D. =8. 在C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello";B. string str = "Hello";C. char str = "Hello";D. string str[] = "Hello";9. 以下哪个选项是C语言中的条件语句?A. switchB. caseC. if-elseD. for10. 在C语言中,以下哪个函数用于计算两个数的和?A. pow()B. sqrt()C. sum()D. printf()二、简答题(每题5分,共10分)1. 解释C语言中的指针是什么,并给出一个简单的示例。

VC程序设计期末复习题集学生用

VC程序设计期末复习题集学生用

VC程序设计期末复习题集学生用一、选择题1. 在VC程序设计中,以下哪个是C++预处理指令?A. #includeB. coutC. mainD. cin2. 下列关于数组的说法正确的是:A. 数组可以存储不同类型的数据B. 数组的大小可以在程序运行时改变C. 数组的下标从1开始D. 数组的大小必须是常量3. 下面哪个关键字用于定义一个类的成员函数?A. publicB. privateC. classD. void4. 下面哪个函数将子字符串插入到另一个字符串中?A. strcatB. strcpyC. strstrD. strncat5. 在VC程序设计中,以下哪个是C++的输入操作符?A. >>B. <<C. &D. |二、填空题1. 下划线是一个合法的变量名吗?(是/否)2. 下划线是一个有效的标识符吗?(是/否)3. 在VC程序中,使用的"cout"函数是属于哪个命名空间的?4. 在C++中,整数类型的常量默认是什么类型?(int/float/double)5. 使用toint()函数可以将浮点数转换为整数。

(是/否)三、简答题1. 请解释C++中的面向对象编程(OOP)是什么意思。

2. 请解释C++中的继承是什么,并举例说明。

3. 请解释C++中的多态是什么,并举例说明。

4. 简要描述函数重载的概念,并给出一个函数重载的例子。

四、编程题1. 编写一个程序,输入一个整数n,输出1到n之间的所有偶数。

2. 编写一个程序,输入一个字符串,将字符串反转并输出。

3. 编写一个程序,输入一个正整数n,计算n的阶乘并输出。

4. 编写一个程序,输入一个字符串,统计字符串中的大写字母、小写字母、数字和其他字符的个数,并输出结果。

以上是VC程序设计的期末复习题集,学生可以通过完成这些题目来加深对VC程序设计的理解和掌握。

在解答问题时,建议注明每个选择题的正确答案或填空题的具体填写内容,以便于检查和对比答案。

c程序设计考试题目及答案

c程序设计考试题目及答案

c程序设计考试题目及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义函数?A. structB. intC. voidD. return答案:C2. 在C语言中,哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A3. 若有定义`int a = 5;`,则执行`a += 3;`后,变量a的值是多少?A. 3B. 5C. 8D. 无法确定答案:C4. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. $variableD. variable!答案:B5. 在C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World'D. 'Hello, World'答案:A6. C语言中,以下哪个选项是正确的二维数组声明?A. int array[3][];B. int array[][3];C. int array[3][3];D. int array[][];答案:C7. 在C语言中,以下哪个选项是正确的条件语句?A. if (x > y)B. if x > yC. if (x > y) elseD. if (x > y) else if答案:A8. 在C语言中,以下哪个选项是正确的循环语句?A. for (int i = 0; i < 10; i++)B. for i = 0; i < 10; i++C. for (int i = 0; i < 10;)D. for (i = 0; i < 10; i++)答案:A9. 在C语言中,以下哪个选项是正确的函数声明?A. int add(int, int);B. int add(int a, int b)C. int add(int, int) {}D. int add(a, b)答案:A10. 在C语言中,以下哪个选项是正确的指针声明?A. int *ptr;B. int ptr[];C. int *ptr[10];D. int ptr(int);答案:A二、填空题(每题2分,共20分)1. 在C语言中,`printf`函数用于__输出__。

《VC程序设计》期末复习题集(学生用)

《VC程序设计》期末复习题集(学生用)
{intt=1;
if (n==1)t=1;
elset=n*fun1(n-1);
returnt;
}
void main(void)
{cout<<fun2(4)<<endl;}
9.下列程序的输出是abcABCabc。
#include <iostream.h>
char * str(char *p1, char *p2)
{cout<<list->data<<endl;
if(list->next)ShowList(list->next );
}
}
void AddToEnd(Lnode* New,Lnode*&head)
{if(head==NULL)head=New;
elseAddToEnd(New,head->next);
c=fun(a,b);
cout<<a<<'\t'<<b<<'\t'<<c<<endl;
}
8.下列程序的输出是20。
#include<iostream.h>
int fun2(int);
int fun1(int n)
{if(n==1) return 1;
else returnn&#)
{if(b)
{a=new int[n=m];
for(int i=0;i<n;i++) a[i]=b[i];
}else a=0,n=0;
}
~DArr(){ delete []a; }
int& Elem(int i) { return a[i]; }

VC考试题B及答案

VC考试题B及答案

VC++程序设计试题〔B〕一、单项选择〔每题分,10小题,共15分〕1.以下不属于面向对象程序设计的3大机制的是〔〕A.多态 C.重载 D.继承2、关于对象,以下说法中不正确的选项是〔〕A.对象是类的一个实例B. 一个类只能有一个对象C.任何一个对象只能属于一个类3、关于类的成员,以下正确的说法是〔〕C.数据成员和成员函数都可以为private public protect属性之一D.公有成员函数只能访问类的公有成员,私有成员函数只能访问类的私有成员4、要实现动态束定,必须通过〔〕调用虚函数。

A. 对象指针B.成员名限定C. 对象名D. 派生类名5、关于友元以下说法错误的选项是〔〕A.类的友元函数可以访问类的所有成员C.类A是类B的友元类,那么A的所有成员函数可访问B的任何成员6、MFC主要由〔〕组成A. 根底类库、全局函数B. 根底类库、全局变量、宏C.根底类库、宏D.根底类库、全局变量、全局函数、宏7、关于构造函数,以下说法不正确的选项是〔〕A.一个类中有且仅有一个构造函数B.构造函数在说明类变量时被自动执行C.构造函数没有返回值D.类中的构造函数的函数名与该类的类名必须同名8、程序对资源的调用主要是靠〔〕来识别。

A.资源名称9、在一个GDI对象使用完后,通常应当调用〔〕函数将其从设备描述符表别离出来,再将其删除,以免造成系统资源的浪费。

A. Attach()B.ReleaseDC()C.Detach()D.DeleteDC()10、使用GetWindowDC()和GetDC()获取的设备描述符表,在退出时必须调用〔〕来释放。

A.ReleaseDC()B.Delete()C.DeleteDC()D.Detach()二、判断题〔每题1分,10小题,共10分〕1.类实现了数据的封装。

〔〕2.一个类一定有构造函数和析构函数。

〔〕3.友元函数是类的成员函数。

〔〕4.析构函数可以重载。

〔〕5.析构函数没有返回值类型。

C程序设计试题汇编

C程序设计试题汇编

c程序设计试题汇编C程序设计试题汇编一、选择题(每题2分,共20分)1. 在C语言中,以下哪个是正确的数据类型?A. IntegerB. intC. RealD. float2. 以下哪个语句可以正确地声明一个整型变量?A. int var;B. var int;C. int = var;D. var = int;3. C语言中的数组下标是从哪个数字开始的?A. 0B. 1C. -1D. 随机数4. 以下哪个是正确的C语言函数定义?A. int func(int a, int b) { return a + b; }B. int func(int, int) { return a + b; }C. func(int a, int b) { return a + b; }D. int func(a, b) { return a + b; }5. 在C语言中,哪个关键字用于定义一个函数?A. functionB. defC. defineD. void6. 以下哪个是C语言中的循环结构?A. forB. whileC. do-whileD. 所有选项都是7. 在C语言中,以下哪个操作符用于取模运算?A. %B. /C. *D. -8. 以下哪个是C语言中的逻辑运算符?A. &&B. ||C. ~D. 所有选项都是9. 在C语言中,哪个关键字用于定义一个结构体?A. structB. typeC. classD. union10. 以下哪个是C语言中的输入输出函数?A. printf()B. print()C. input()D. read()二、填空题(每空2分,共20分)11. 在C语言中,字符常量用____表示。

12. 一个C语言程序的执行从____函数开始。

13. C语言中的字符串以____字符结尾。

14. 一个变量的存储类别可以是自动的(auto)或____的。

15. 在C语言中,____运算符用于连接字符串。

c语言程序设计比赛试题及答案

c语言程序设计比赛试题及答案

c语言程序设计比赛试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的合法整数常量?A. 0x1AB. 01AC. 0b1010D. 1.23答案:A2. C语言中,哪个关键字用于定义一个函数?A. structB. intC. voidD. return答案:B3. 下列哪个选项是C语言中正确的注释方式?A. // 这是注释B. /* 这是注释 */C. //* 这是注释D. /* 这是注释答案:B4. C语言中,哪个运算符用于求两个数的和?A. +B. -C. *D. /答案:A5. 在C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A6. C语言中,哪个关键字用于定义一个枚举类型?A. structB. unionC. enumD. typedef答案:C7. 下列哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. _variableD. variable$2答案:B8. 在C语言中,哪个关键字用于定义一个指针?A. intB. floatC. charD. *答案:D9. C语言中,哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strcmpD. strlen答案:A10. 在C语言中,哪个函数用于计算字符串的长度?A. strcpyB. strcatC. strcmpD. strlen答案:D二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型数组的关键字是________。

答案:int2. C语言中,用于定义一个字符型数组的关键字是________。

答案:char3. C语言中,用于定义一个浮点型数组的关键字是________。

答案:float4. C语言中,用于定义一个双精度浮点型数组的关键字是________。

答案:double5. C语言中,用于定义一个字符串的关键字是________。

VC程序设计基础习题

VC程序设计基础习题

《Visual C++ 程序设计基础》练习题第一部分面向过程程序设计第一章 VC++语言的基础知识和简单的语句1.C++语言程序由〖C〗组成。

A)子程序 B)过程 C)函数 D)主程序和子程序2.以下各标识符中,合法的用户标识符组为〖D〗。

A)PAd,P#d,b-b,abc,_0123,ssipedB)cin,a10,CPP,float,del_word,signedC)void,max,hiy,<fr>,list,*jerD)a,temp,_isw,INT,keep,wind3.在VC++中,char类型数据占〖A〗个字节,int类型数据占〖C〗个字节,short类型数据占〖B〗个字节,long类型数据占〖C〗个字节,float类型数据占〖C〗个字节,double类型数据占〖D〗个字节。

A)1 B)2 C)4 D)84.以下语句〖B〗。

int a=-2L; cout << a << endl;A)赋值不合法 B)输出值为-2 C)输出为不确定值 D)输出值为25.在VC++中,以下语句的输出为〖D〗。

short int k=-1;cout << k << ',' << (unsigned short)k <<endl;A)-1,-1 B)-1,32767 C)-1,32768 D)-1,655356.若有以下说明语句,则该语句〖B〗。

char s='\092';A)使s的值包含1个字符 B)说明不合法,s的值不确定C)使s的值包含4个字符 D)使s的值包含3个字符7.若a,b均为int型变量,为了将10赋给a,将20赋给b,则对应以下cin语句的正确输入方式为〖B〗。

(<CR>代表回车换行,_代表空格)。

cin >> a >> b;A)1020<CR> B)10_20<CR> C)10,20<CR> D)20_10<CR>8.以下语句的输出为〖D〗。

C语言程序设计试卷含答案

C语言程序设计试卷含答案

C语言程序设计试卷含答案一、选择题(共20题,每题2分,共40分。

下面每题后面用小括号内标注了正确答案)1. 下列关键字中,用于定义变量的是(A)A. intB. ifC. whileD. for2. 变量的作用域是指变量的(C)A. 大小B. 类型C. 可访问范围D. 值3. 下列语句中,用于输出字符的是(B)A. scanfB. printfC. inputD. output4. 已知整型变量a和b,那么a += b; 等价于(D)A. a = a + b;B. a -= b;C. a = a - b;D. a = a + b;5. 在C语言中,用于表示“不等于”的运算符是(C)A. =B. ==C. !=D. >=6. 下面哪个for循环语句是正确的(A)A. for(int i=0; i<10; i++)B. for(int i<10; i++)C. for(int i=0; i<10)D. for(i=0; i<10; i++)7. 下列选项中,表示“或”运算符的是(D)A. &B. &&C. |D. ||8. 在C语言中,用于声明宏定义的关键字是(B)A. defineB. #defineC. constD. int9. 如果要判断一个整数是否为负数,正确的if条件语句是(C)A. if(n > 0)B. if(n => 0)C. if(n < 0)D. if(n <= 0)10. 下列哪个不是C语言的基本数据类型(D)A. intB. floatC. charD. string11. 下列关键字中,用于定义函数的是(C)A. mainB. includeC. voidD. for12. 在C语言中,表示“或者”的条件语句是(B)A. ifB. else ifC. switchD. while13. C语言中的“++”运算符表示(A)A. 自增B. 自减C. 相加D. 相减14. 下列哪个语句用于在C语言中声明字符类型的变量(C)A. String name;B. var name;C. char name;D. character name;15. 下列哪个不是C语言的关键字(D)A. enumB. longC. doubleD. true16. 在C语言中,用于跳出当前循环并继续执行下一次循环的关键字是(D)A. exitB. breakC. endD. continue17. 下列哪个函数用于从标准输入读取一个整数(A)A. scanfB. printfC. getsD. puts18. 在C语言中,用于声明一个指针变量的关键字是(A)A. int*B. pointC. newD. pointer19. 下列哪个运算符用于获取变量在内存中的地址(B)A. &B. *C. #D. %20. 下列哪个函数调用可以输出字符串(A)A. printf("Hello World!");B. scanf("Hello World!");C. gets("Hello World!");D. puts("Hello World!");二、填空题(共5题,每题4分,共20分。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

南京工业大学继续教育学院《VC++程序设计》练习题2010学年第一学期使用班级:H工升本/HY交升本/H自升本一、选择题(每小题2分,共计40分)(1)下列关于栈的叙述正确的是A)栈是非线性结构B)栈是一种树状结构C)栈具有先进先出的特征D)栈具有后进先出的特征(2)结构化程序设计所规定的三种基本控制结构是A)输入、处理、输出B)树形、网形、环形C)顺序、选择、循环D)主程序、子程序、函数(3)结构化程序设计的一种基本方法是A)筛选法B)递归法C)归纳法D)逐步求精法(4)如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性个数少于原来关系中属性个数,这说明所实施的运算关系是:A)选择B)投影C)连接D)并(5)C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是()A)面向过程B)面向对象C)安全性D)复用性(6)C++语言的跳转语句中,对于break和continue说法正确的是()A)break语句只应用与循环体中B)continue语句只应用于循环体中C)break是无条件跳转语句,continue不是D)break和continue的跳转范围不够明确,容易产生问题(7)for(int x=0,y=o;!x& &y<=5;y++)语句执行循环的次数是()A)0B)5C)6D)无次数(8)考虑函数原型void test(int a,intb=7,char="*"),下面的函数调用中,属于不合法调用的是()A)test(5); B)test(5,8); C)test(6,"#") D)test(0,0."*");(9)下面有关重载函数的说法中正确的是()A)重载函数必须具有不同的返回值类型;B)重载函数形参个数必须不同;C)重载函数必须有不同的形参列表D)重载函数名可以不同;(10)下列关于构造函数的描述中,错误的是()A)构造函数可以设置默认参数;B)构造函数在定义类对象时自动执行C)构造函数可以是内联函数;D)构造函数不可以重载(11)下面描述中,表达错误的是()A)公有继承时基类中的public成员在派生类中仍是public的B)公有继承是基类中的private成员在派生类中仍是private的C)公有继承时基类中的protected成员在派生类中仍是protected的D)私有继承时基类中的public成员在派生类中是private的(14)在进行完任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是(B)A)fail B)eof C)bad D)good(15). ( D )能用作用户自定义标识符A friend B-var C 3xyz D Float(16). 指针可以用来表示数组元素,int a[3][7],表示错误的是___A___A.*(a+1)[5] B.*(*a+b)C.*(*(a+1))D.*(a[0][0]+2)(17).有如下定义,int a[5],*p;p=a;则下列错误的是___B__A.表达式p=p+1合法B.表达式a=a+1合法C.表达式p-a合法D.表达式a+2合法(18).下列函数中___C___不是类的成员函数A.构造B.析构C.友元D.拷贝构造(19).下面_C__保留字不能作为函数的返回类型A.voidB.intC.newD.long(20).设a是一个整形数组,则元素a[4]字节地址为__C__A.a+4B.a+8C.a+16D.a+32二、填空题1分每题,合计20分1.对于输入为N个数进行快速排序算法的平均时间复杂度是(O(Nlog2N) )2.在面向对象方法学中,直接反映了用户对目标系统的要求的模型是(功能模型)3.软件测试方法中,黑盒测试个白盒测试法是常用的方法,其中黑盒测试法主要是用于测试(软件外部功能)4.关系型数据库管理系统中存储与管理数据的基本形式是(二维表)5.一个类的析构函数是___唯一的__6.拷贝构造函数的形参是__类的对象的引用_________7.在每个C++程序中都必须包含这样一个函数__main___8.假定AB作为一个类,则执行AB a(4),b[3],*p[2],自动调用该类型析构函数的次数为__4__9. 执行“cout<<char(‘A’+2)<<endl”;___C_____10. 关系表达式x+y>5的相反表达式:_____x+y<=5_____11. 假定一个一维数组定义为”char*a[8],则该数组所含元素个数为__8__,所占存储空间的字节数___32_____12. 变量分全局和局部;___局部变量___没有赋初值,其值是不确定13. 假定a是一个二维数组,则a[i][j]的指针访问方式为____ *(_*(a+i)+j)14. 假定一个结构类型定义为”struct D {int a;union{int b;double c;};D*d[2];};”则该类型的大小为__20__字节15. C++使用cin和cout进行输入输出操作的程序必须包含头文件_iostream.h______,其语句形式___#include<iostream>____16. 假定AB为一个类,则执行”AB,a[10];”时,系统自动调用类的析构函数的次数___10___17. 假定类AB中有一个公用属性的静态数据成员bb,在类外不能通过对象名访问该成员bb的写法为____AB::bb__________18. 若Queen是一个类,a Queen是它的一个对象,而且该类中定义了一个静态成员函数show(),则在类外对该成员函数运行调用方式为___Queen::show()或a.show()_19. 现有基类的构造函数,成员对象的构造函数,派生类本身的构造函数,则对于派生类的构造函数,在定义对象时该三种类型的构造函数执行顺序,1.__ 基类的构造函数___2.__ 成员对象的构造函数__3.____ 派生类本身的构造函数___20. 任何类中允许有三种类型数据__私有_____,___公有____,_保护______三、简答题(每小题5分,共计25分)(1)下面程序的打印结果是[ 1 2 5 11 21 ]#incudeint f(int);int main(){ int i;for(i=0;i<5;i++)cout<<F(I)<<"";return0;}int f(int i){ static int k=1;for(;i>0;i- -)k + = i;return k;}(2)已知intDBL(int n){return n + n;}和longDBL(long n){return n +n;}是一个函数模板的两个实例,则该函数模板的定义是[templateT DBL(T n){return n+n;} ](3).void main()int x=1,y=0,a=0,b=0;switch(){case 1:switch(y){ case 0:a++,break;case 1:b++,break;}case 2:a++;b++,break;}Cout<<a<<”,”<<b;}答案:2,1(4)应在下列程序划线处填入的正确语句是(C )#includeclass Base{ public:void fun(){cout<<"Base::fun"<<ENDL;}};class Derived:public Base{ void fun(){_____________ //显示调用基类的函数fun()cout<<"Derived::fun"<<ENDL;}};A)fun(); B)Base.fun(); C)Base::fun(); D) Base->fun();(5)有如下程序: A#includeclass BASE{char c;public:BASE(char n):c(n){}virtual~BASE(){cout<<C;}};class DERIVED:public BASE{char c;public:DERIVED(char n):BASE(n+1),c(n){}~DERIVED(){cout<<C;}};int main(){ DERIVED("X");return 0;}执行上面的程序将输出()A)XY B)YX C)X D)Y五应用题15分建立一个ARRAY类,秋一维数组中各元素的最大值、最小值和平均值,要求:(1)私有成员:.int data[10]:数组名称.int max :元素最大值.int min.float average(2)公有成员.构造函数ARRAY(int a[10]):初始成员函数.void process().void print()答案:#include<iostream>using namespace std;class ARRAY{public:ARRAY(int a[10]);Void process()Void print();Private:int data[10];int max,min;float average;};ARRAY::ARRAY(int a[10]) {for(i=0;i<10;i++)data[i]=a[i];}void ARRAY::process(){int i;float sum;max=a[0];min=a[0];sum=a[0]; for(i=1;i<10;i++){if(a[i]>max) max=a[i];if(a[i]<min) min=a[i];sum+=a[i];}average=sum/10;}void ARRAY::print(){co ut<<”max=”<<max;cout<<”min=”<<min;cout<<”average=”<<average; }void main(){int a[10],i ;for(i=0;i<10;i++)cin>>a[i];ARRAY a(a[10]);a. process();a. print();}。

相关文档
最新文档