C程序设计基础复习题集
- 格式:doc
- 大小:112.50 KB
- 文档页数:17
《面向对象程序设计c》综合复习题集及答案详解综合复习题集一、单选题1.C++源程序文件的缺省扩展名为(A)。
A.cppB.e某eC.objD.lik2.由C++源程序文件编译而成的目标文件的缺省扩展名为(C)。
A.cppB.e某eC.objD.lik3.由C++目标文件连接而成的可执行文件的缺省扩展名为(B)。
A.cppB.e某eC.objD.lik4.编写C++程序一般需经过的几个步骤依次是()。
A.编译、编辑、连接、调试B.编辑、编译、连接、调试C.编译、调试、编辑、连接D.编辑、调试、编辑、连接5.以下标识符中不全是保留字的是()。
A.caeforintB.defaultthenwhileC.boolclalongD.gotoreturnchar6.能作为C++程序的基本单位是()。
A.字符B.语句C.函数D.源程序文件7.程序中主函数的名字为()。
A.mainB.MAINC.MainD.任意标识符8.C++程序的基本模块为()。
A.表达式B.标识符C.语句D.函数9.可用作C++语言用户标识符的一组标识符是()。
A.voiddefine+WORDB.a3_b3_123YNC.for-abcCaeD.2aDOizeof10.存储以下数据,占用存储字节最多的是()。
A.0B.‘0’C.“0”D.0.011.程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用()符号作为分隔符。
A.空格或逗号B.逗号或回车C.逗号或分号D.空格或回车12.设”inta=12;”,则执行完语句”a+=a某a;”后,a的值是()。
A.12B.144C.156D.28813.假设在程序中a、b、c均被定义成整型,所赋的值都大于1,则下列能正确表示代数式1/abc的表达式是()。
A.1.0/a某b某cB.1/(a某b 某c)C.1/a/b/(float)cD.1.0/a/b/c14.设”inta=15,b=26;”,则”cout<A.15B.26,15C.15,26D.2615.设某是一个bool型的逻辑量,y的值为10,则表达式某&&y的值为()。
面向对象程序设计课程复习题一、判断题1. 程序的编译是以文件为单位的,因此将程序分到多个文件中可以减少每次对程序修改所带来的编译工作量。
2. 派生类的成员函数可以直接访问基类的所有成员。
3. 函数的参数和返回值类型可以是简单数据类型,也可以是指针、引用、数组和类。
4. 如果派生类的成员函数的原型与基类中被定义为虚函数的成员函数原型相同,那么,这个函数自动继承基类中虚函数的特性。
5. 函数重载既要求两函数参数对应的类型不同又要求参数个数不同。
6.字符串”hello,world”在内存中存放时,占用11个字节的空间7.当函数的返回值是数组类型的,传递的是数组第一个元素的地址。
8.在内存中,一个字符常量或变量是以ASCII码值存储的,它可直接作为整数值参加运算。
1、√2、X3、X4、√5、X6、X7、√8、√1.在C++中,也可使用struct来声明类,但在该类中不能声明成员函数。
(X )2.在定义二维数组时,语句“int a[][4]={{1,2,3},{4}};”是不正确的。
(X )3.采用inline 定义内联函数时,在对于函数代码少、频繁调用的情况下特别有效。
(V )4.类中的静态成员数据为该类的所有对象所共享,并且,在该类对象被撤销时,静态成员并没有撤销。
(V )5.构造函数和析构函数均不能被说明为虚函数。
(X )6.char *const p 表明p是一个指针,它只能指向一个字符串常量。
(X )7.如果派生类的继承方式是protected的,则在main( )函数中,可以通过派生类对象来访问基类的公有的成员。
(X )8.在C++中,可以通过ofstream类对象来建立一个输出文件流。
(V )9.在C语言中,不使用命名空间,但在C++程序中,一定要使用命名空间。
(X )10.在MFC编程中,通过Invalidate(TRUE)可以发出重绘视图的消息。
(V )1 2 3 4 5 6 7 8 9 10××√√×××√×√1.C++程序总是从第一个定义的函数开始执行。
C语言习题集第一章C语言概述复习要点:1. 程序的构成,main函数和其他函数。
2.语句,注释3.运行C程序的步骤和方法习题:1.C程序是由函数构成的,一个C程序中至少包含一个main函数。
2.函数是C程序的基本单位。
(最小单位是表达式)3.C程序有且只有一个main函数。
4.C程序从main函数开始执行。
5.C程序注释符是由/*和*/组成,且不能嵌套使用。
6.C程序的语句是以; 结束。
7.C程序一条语句可分多行写,需要以为连接符。
(可以直接换行)8.C程序可以用{ 和} 将多条语句括起来,形成复合语句。
9.上机运行一个C程序必须经过源代码输入,编译,连接,运行4个步骤。
10.C程序的源文件扩展名是。
c 。
11.以下叙述中正确的是(C)A)C语言程序将从源程序中第一个函数开始执行B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C)C语言规定必须用main作为主函数名,main必须小写,程序将从此开始执行,在此结束D)main可作为用户标识符,用以命名任意一个函数作为主函数12.以下叙述中错误的是(D)A)C语言源程序经编译后生成后缀为.obj的目标程序B)C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件C)用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中D)C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令13.以下不是语句的是(A)A) a=10 B)a=b+c;c=20;C) ; D){a=b;b++;}14.运行以下程序main(){int a=10; /* 定义一个变量 aa=20; */printf(“%d”,A); 此程序应该改写为:printf(“%d”,a)}输出的结果是 B 。
A) 10 B)2015.牢记VC++6.0的出错提示英文提示中文实际意义missing ; , ( { 等表示缺少;,( {'T' : undeclared identifier T没有定义(T要先定义然后才能使用)'sqrt' undefined; sqrt如果是函数名则表示它的头文件没有包含'T' : redefinition T重复定义(可能是多次定义了T)Cannot open include file 头文件的拼写或路径的不对第二章数据类型,运算符与表达式复习要点:1. C的数据类型(整型,字符型,浮点型)及其定义方法。
计算机程序设计员复习题(附参考答案)一、单选题(共40题,每题1分,共40分)1、以下属于设计模式的原则是()。
A、关闭原则B、里氏代换原则C、打开原则D、继承原则正确答案:B2、解释程序相当于()。
A、笔译B、口译C、人工翻译D、机器翻译正确答案:B3、下列说法正确的是:()。
A、Http服务使用的端口是21B、Finger服务使用的端口是79C、Ftp服务使用的端口是80D、Gopher服务使用的端口是78正确答案:B4、以下数据结构中,哪一个是非线性结构()。
A、队列B、栈C、二叉树D、线性表正确答案:C5、要在Visual C++应用程序内使用() ActiveX数据对象,应该选择OLE DB作为连接类型,然后再应用程序中使用ADO类。
A、DAOB、OLE DBC、ODBCD、ADO正确答案:D6、在()过程中,用户不能进行任何干预,一切由系统自动进行。
A、脱机作业控制B、联机作业控制C、实时作业控制D、动态作业控制正确答案:A7、()协议是用来和Novell网络连接的。
A、Multi-ProtocolB、TCP/IPC、NWLinkD、Named Pipes正确答案:C8、()提供文本创建、打开、复制、删除、移动等静态方法。
A、File 类B、StreamReader类C、FileStream类D、FileInfo类正确答案:A9、下列说法正确的是:()。
A、使用OLEDB时不需要使用DSN,但必须知道本地驱动器或网络上数据的特定位置B、使用ODBC时不需要使用DSN,但必须知道本地驱动器或网络上数据的特定位置C、使用DAO时不需要使用DSN,但必须知道本地驱动器或网络上数据的特定位置D、使用ADO时不需要使用DSN,但必须知道本地驱动器或网络上数据的特定位置正确答案:D10、在软件质量特性中,软件的()是指在规定条件下,在规定的时间内,不引起系统失效的概率。
A、可靠性B、功能度C、易使用性D、时间经济性正确答案:A11、下列说法正确的是:()。
程序设计基础综合复习题一、单选题1、指出下面哪个是关键字______。
A、 mainB、 abcC、 printfD、 float参考答案: D2、链表不具有的特点是______。
A、不必事先估计存储空间B、可随机访问任一元素C、插入删除不需要移动元素D、所需空间与线性表长度成正比参考答案: B3、以下叙述中正确的是______。
A、 C语言比其他语言高级B、 C语言可以不用编译就能被计算机识别执行C、 C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D、 C语言出现的最晚,具有其他语言的一切优点参考答案: C4、若fp是指向某文件的指针,且已读到文件末尾,则函数feof(fp)的返回值是______。
A、 EOFB、 -1C、 1D、 NULL参考答案: C5、若有说明语句:char c='\72';则变量c______。
A、包含1个字符B、包含2个字符C、包含3个字符D、说明不合法,c的值不确定参考答案: A5、针对下列程序段回答问题( ).for(t=1;t<=100;t++){scanf("%d",&x);if(x<0) ______。
A、 x>=0时什么也不输出B、最多允许输出100个非负整数C、 printf函数永远也不执行D、当x<0时整个循环结束参考答案: B7、已知int a, *p=&a;则下列函数调用中错误的是______。
A、 scanf(”%d”, &a);B、scanf(”%d”, p);C、 printf(”%d”, a);D、printf(”%d”, p);参考答案: D8、已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是______。
A、 acbedB、 decabC、 deabcD、 cedba参考答案: D9、当c的值不为0时,在下列选项中能够将c的值赋给变量a、b的是______。
判断题1.运算器是完成算术和逻辑操作的处理部件,通常称为CPU。
×控制器2.通常硬盘安装在主机箱内,因此它属于主存储器。
×内存3.指令与数据在计算机内是以ASCII码进行存储的。
×二进制4.操作系统是合理地组织计算机工作流程、有效地管理系统资源、方便用户使用的程序集合。
√5.用计算机机器语言编写的程序可以由计算机直接执行,用高级语言编写的程序必须经过编译才能执行。
√6.计算机的所有计算都是在内存中进行的。
×运算器7.字长是指计算机能直接处理的二进制信息的位数。
√8.计算机区别于其他计算工具的本质特点是能存储数据和程序。
√9.系统软件就是市场上买来的软件,应用软件就是自己编写的软件。
×买的也可以10.常用字符的ASCII码值从小到大的排列规律是:空格、阿拉伯数字、小写英文字母、大写英文字母。
×大写小写11.多台计算机相连,就形成了一个网络系统。
×什么叫网络系统哦?12.在Internet网上,IP地址、E-mail地址都是唯一的。
√13.不同类型的变量在内存中占用存储空间的大小都是一样的。
×错了14.表示数学式3<x<5的C表达式也是3<x<5。
×3<x&&x<515.设某字符的ASCII码十进制值为72,则其十六进制值为48。
√16.结构化程序语言的三种基本结构是顺序、选择和循环。
√17.‘\n’不是一个字符常量。
×是的18.与float型数据相比,double型数据的精度高,取值范围大。
√19.在C语言中,表达式(010+2)的值是10。
√20.do-while语句先执行循环体,后判断循环条件,所以循环体至少会执行一次。
√21.在C 语言中,常量和变量都有数据类型。
√22. C 语言的运算符只有单目运算符和双目运算符两种。
×三目?:23.若变量已正确定义,表达式x + y == z符合C语言语法。
精品文档名目2单选题_________________________________________8多选题_________________________________________推断题_________________________________________1215填空题_________________________________________精品文档单选题的核心部分。
)是.NET平台是一个新的开发框架,( .NET Framework。
表 )2.Access数据库最基础的对象是(控件的功能(记录导航)。
3.BindingNavigator)属性。
控件中的(DataSource4.要连接数据库,需要设置BindingSource)语言演化而来。
和C++5.C#语言从(C对象 )的语言。
6.C#是一种面向(7.C#语言取消了( 指针 )语法。
)方法更新数据库。
对象的( Update中通过DataAdapter)方法填充记录集。
对象的( Fill中记录集的显示是通过DataAdapter控件中显示的字段名称,应修改( Columns)属性。
要设置DataGridView10.中执行一个存储过程时,假如要设置输出参数则必须同时设置参数的方向和(类型),必要时还要设在11.置参数尺寸。
)对象保存当前数据集。
中通过( DataSet12.)。
13.在下面循环语句中循环体执行的次数为(n/2+1for(int i=0; i<n; i++)if(i>n/2) break;”循环次数为(7)次){ }循环语句“for14.(int i=30;i>=10;i-=3下面程序段的运行后,n的值为(6)。
15.n=1;for(i=1;i<=3;i++)n=n*i;)的值为(55下面程序段执行后,sum16.int i,sum;for(i=1,sum=0;i<=10;i++)sum+=i;中产生二义性,C语言规定else子句总是与(其之前最近的,同一复合语为了幸免在嵌套的条件语句if-else17.)配对。
c语言规定,任何非0的数像1-1等都被认为是真,而0被认为是假1>1为假试题一、单选题1.已知int k,m=1;执行语句k=-m++;后,k的值是_____。
【知识点:难度:正确答案:A】A.-1 B.0 C.1 D.-22.已知定义int m; float k; 正确的语句是。
【知识点:难度:正确答案:D】A.(int k)%m B.int(k)%m C.int(k%m)D.(int)k%m3.当k的值不为0时,在下列选项中能够将k的值赋给变量m,n的是______。
【知识点:难度:正确答案:B】A.m=k=n B.(m=k)&&(n=m)C.(m=k)||(n=k)D.(n=m)&&(m=k)4.已知int x=5; 表达式6>x>1值是_____。
【知识点:难度:正确答案:A】A.0 B.1 C.5 D.表达式语法错表达式6>x>1 ,先判断6>x 为0,再判断0>1,所以值为0。
(6>x 为1 ,再判断1>1,所以值为0。
)5.下列程序段执行后c值为_____。
【知识点:难度:正确答案:D】int k=7, c=0;while(--k)if (k%3) continue; else c++;A.5 B.4 C.3 D.26.已知字母a的ASCII码为十进制数97,且ch为字符型变量,则执行语句ch=‘a’+‘D’-‘A’;后,ch中的值为_____。
【知识点:难度:正确答案:C】A.d B.c C.100 D.不确定7.设m,n已正确定义,执行语句{for(m=0, n=10; m<n; m+=3,n--);}以后,m,n的值是________。
【知识点:难度:正确答案:C】A.6,7 B.7,6C.9,7 D.7,98.已知char *t[] ={”How”, ”are”, ”you!”};则t是_______。
【知识点:难度:正确答案:B】A.指向char变量的指针B.指向字符指针的指针常量C.指向”How”的指针变量D.指向’H’的指针9.假设scanf语句执行时输入ABCDE<回车>,能使puts(s)语句正确输出ABCDE字符串的程序段是______。
【知识点:难度:正确答案:C】A.char s[5] = {"ABCDE"}; puts(s) B.char s[5] = {‘A’,’B’,’C’,’D’,’E’};puts(s);C.char *s; s = "ABCDE"; puts(s); D.char *s; scanf(“%s”,s); puts(s);10.以下程序有错,错误原因是______。
【知识点:难度:正确答案:D】main(){ int *p, i; char *q, ch;p = &i;q = &ch;*p = 40;*p = *q;......}A. p和q的类型不一致,不能执行*p=*q;语句B. *p中存放的是地址值,因此不能执行*p=40;语句C. q没有指向具体的存储单元,所以*q没有实际意义D. q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行*p=*q;没有意义,可能会影响后面语句的执行结果11.若有定义:int a=2, b=5, c=8; 则表达式c |= (~a && b) ^ !(a & b)的值为_____。
【知识点:难度:4 正确答案:B】A.14 B.8 C.1 D.012.设int a=5, b=7, 表达式(++a == b--)? ++ a : --b 的值是_______。
【知识点:难度:2 正确答案:C】A.7 B.6 C.5 D.413.设a=3, b=2, 那么表达式(a=b=7, b=a!=7) 的值是。
【知识点:难度:2 正确答案:D】A.1 B.2 C.7 D.0逗号(,)也可以是运算符,逗号表达式最右边的子表达式的值即为逗号表达式的值。
而b=a!=7的值为0逗号运算符只取最右边的子表达式的值,但每个子表达式都要运行14.设有:int a=1,b=2,c=3,d=4,m=2,n=2; 执行语句(m=a>b)&&(n=c>d);后n的值是_____。
【知识点:难度:3 正确答案:A】A.2 B.1 C.0 D.3&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。
&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,15.下列程序段的输出结果是_____。
【知识点:难度:3 正确答案:B】int k=2, s=0;switch (k) {case 2: s++; k++;case 1: s++;case 3: s+=1;switch(s){case 2: s+=2; break;default: k++; break;}default: s+=3;}printf("%d#%d#", s, k);A.1#3# B.6#4# C.3#2# D.3#4#16.下列程序的输出结果是_____。
【知识点:难度:2 正确答案:C】int f(int x){ static int k;return ++k + x;}main( ){ int k;for(k=1; k<4; k++) printf("%d#", f(k) );}A.2#5# B.3#6# C.2#4#6# D.不确定17.下列程序的输出结果是_____。
【知识点:难度:2 正确答案:D】main(){ char x=040;printf("%o\n",x<<1);}A.o B.40 C.1000000 D.10018.下列程序段的输出是__________。
【知识点:难度:3 正确答案:A】main(){ int x= -9, y=5, z=8;if(x=y)if(x>0)z=0;else z+=1;printf("z=%d\n", z);}A.z=0 B.z=1 C.z=8 D.z=9esle子句与其之前最近的不完整if配对。
C语言中等号“=”为赋值运算符,不用于判断相等,判断相等应用“==”,因此执行x=y后,x=5,if(5)相当于if(true),执行if(x>0)z=0,所以z=019.下列程序段的输出是__________。
【知识点:难度:3 正确答案:B】#define SQ(a,b) (a*a-2*a*b+b*b)main(){ int k=4;printf("%d", SQ(k, k-1) );}A.1B.-18 C.-15 D.-8#define定义一个宏(不是一个函数),用于字符串的替换,注意替换不是用数值去替换,也不会自动加括号,因此SQ(k,k-1)=k*k-2*k*k-1+k-1*k-1=-k*k-2SQ(4,3)=-4*4-2=-1820.若运行以下程序时,从键盘输入Hello_Everyone!<CR>(<CR>表示回车),则下面程序的运行结果是_________。
【知识点:难度:2 正确答案:C】main(){ char c;int v1=0,v2=0;do{switch(c=getchar()){case 'a': case 'A': case 'e': case 'E': case 'i': case 'I': case 'o': case 'O':case 'u': case 'U': v1+=1;default: v1+=1;v2+=1; }} while( c != '\n' );printf("%d,%d\n", v1, v2);}A.6,10 B.21,10 C.22,10 D.6,921.下列程序段输出_____。
【知识点:难度:4 正确答案:D】main(){ char str[2][5] = { "abcd" };strcpy( str[0], "You" ); strcpy( str[1], "Me" );str[0][3] = '&';printf( "%s\n", *str );}A.You&Me B.abcd C.abc& D.You&22.对于函数f,调用f (12345) 的输出是_____。
【知识点:难度:3 正确答案:A 】void f (int n){ if(n<10) printf( "%1d", n );else { f(n/10); printf( "%1d", n%10); }}A.12345 B.54321 C.11111 D.543223.下列程序段的输出结果是_____.【知识点:难度:2 正确答案:B】void fun(char *fname,char *st)。