c程序设计考试题库.pdf
《c程序设计考试题库.pdf》由会员分享,可在线阅读,更多相关《c程序设计考试题库.pdf(120页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【章节】第 1 章 C+基础知识【知识点】1、C+程序的构成与书写形式;2、基本数据类型,常量、变量和表达式3、C+的标准输入输出【单选题】1、在 C+中,源程序变为可执行程序的正确顺序应该是(B)。A.编辑、链接、编译、执行 B.编辑、编译、链接、执行C.编译、编辑、链接、执行 D.编译、链接、编辑、执行2、要把高级语言编写的源程序转换为目标程序,需要使用(D)。A.编辑 程 序 B.驱动程序C.调试程序 D.编译程序3、下列关于C+与 C 语言的关系描述中,错误的是(D)。A.C 语言是C+语言的一个子集B.C+与 C 语言是兼容的C.C+对 C 语言进行了一些改进D.C+和 C 语言都是
2、面向对象的4、下面为使用面向对象语言的正确理由是(D)。A.面向对象程序由三种基本结构组成,分别是顺序结构、选择结构和循环结构B.程序语句比面向过程语言简单C.面向对象程序设计可以设计为自行修改错误D.面向对象程序很容易概念化5、以下选项中,合法的用户标识符是(B)。A.long B._2Test C.3Dmax D.A.dat6、下列描述中正确的是(A)。A.不是每个C+程序都必须包含预处理命令#includeB.C+程序必须有return语句C.C+程序中的变量必须定义在主程序内部D.C+程序中所使用的符号常量可以不进行定义7、C+源程序文件的扩展名为(A)。A.CPP B.C C.DLL
3、 D.EXE8、cout是 10流库预定义的(B)。A.类 B.对象C.包含文件 D.常量9、C+对 C 语言作了很多改进,即从面向过程变成为面向对象的主要原因是(D)。A.增加了一些新的运算符B.允许函数重载,并允许设置缺省参数C.规定函数说明符必须用原型D.引进了类和对象的概念10、下列选项中,(C)是不合法的标识符.A.Program B.O bj23 C.double D.B_C_D11、下列标识符中,不合法的用户标识符为(A)oA.a!B._int C.a_10 D.PAd,12、只能向终端输出一个字符的函数是(B)。A.pringf 函数 B.putchar 函数 C.getcha
4、r 函数 D.scanf 函数13、如果有整型量int一,执行情况x+=1.9 后 x 的值为(A)。A.6B.7 C.结果不确定 D.表达式非法14、已知 a=5,b=3,表达式 a+=a*=+b*3 的值为(D)。A.40 B.80 C.100 D.12015、下列语句彼此等价的是(C)。A.!(a 0)和!(a 0)B.!(a=b)和(a b)&(a 10)|(a 0)和(a=0)D.!(a b)和 a b16、定义如下变量:inli=2;intj=3;则 i/j的结果为(B)。A.0.66667 B.0 C.0.7 D.0.6666666666.17、下面表达式的值为false的是(D
5、)。A.1 3&5 4)C.!(5 8)|(2 c&b=c 的值是(C)A.2 B.-1 C.0 D.119、下列符号中,不 是 分 隔 符 的 是(C)oA.;B.()C./D.20、在 C+语言中,自 定 义 的 标 识 符(D)。A.能使用关键字并且不区分大小写B,不能使用关键字并且不区分大小写C.能使用关键字并且区分大小写D,不能使用关键字并且区分大小写21、字符串常量M E的字符个数是(B)。A.4 B.3 C.2 D.122、C+语言可执行程序从(C)开始执行。A.程序中第一条可执行语句B.x=0,y=0,z=0C.程序中的main函数D.包含文件中的第一个函数23、下列符号中,不
6、 是 分 隔 符 的 是(B)。A.;B.C.()D.2 4.在 C+语言中,自定义的标识符(D)。A.能使用关键字及标准标识符B,不能使用关键字并且不区分大小写C.能使用关键字并且区分大小写D,不能使用关键字并且区分大小写25、在 C+语言里,一条语句以(B)字符作为结束符。A.,B.;C.D.无符号26、设以下变量都是int类型,则值不.等于7的表达式是(C)。A.x=y=6,x+y,x+l B.x=y=6,x+y,y+C.x=6,x+l,y=6,x+y D.y=6,y+l,x=y,x+l27、x=l,y=l,z=l,执行表达式 w=+x|+y&+z 后,x、y、z 的值分别为(A)。A.
7、x=2,y=l,z=l B.x=2,y=2,z=2C.x=l,y=l,z=l D.x=2,y=2,z=l28、用逻辑表达式表示“大 于 10而小于20的数”,正确的是(D)。A.10 x 10|x10&x20 D.!(x=20)29、设 int a=10,b=11,c=12;表达式(a+b)c&b=c 的值是(B)。A.2 B.0C.-2 D.130、整型变量i 定义后赋初值inti=2.8*6 的结果是(B)。A.12 B.16 C.17 D.1831、在 C 语言中合法的字符型常量是(A)。A.t B.A C.65 D.a32、C+语言程序的基本单位是(B)。A.程序行 B.语句 C.函数
8、 D.字符33、下列C+运算符中,优先级最高的是(B)。A.+(双目)B.*(单目)C.若 x=4,A.36B.1.2e0.5D.f72r则 x*=x+2的值为(B.24 C.18B)oD.2047、以下运算符中,运算对象必须是整型的是(B)。A./B.%=C.!=D.=48、能将数学表达式a=c=b表示为正确的C+表达式的是(CA.a=c=b B.c=b)C.c=a&c=a|c=b49、以下选项中,与 k=n+完全等价的表达 式 是(A)o A.k=n,n=n+l B.n=n+l,k=nC.k=+n D.k+=n+l【程序阅读】1、定义如下变量和数组:inti;intx 3=123,4,5,
9、6,7,8,9;则语句 for(i=0;i 3;i+)cout xil;的执行结果是 _258.2、以下程序的输出结果是 7 o#includeusing namespace std;int main()(int a=7,b=4,c=6,d;cout (d=a b?(a c?a:c):(b);【章节】第 2 章基本控制结构程序设计【知识点】1、算法的相关概念2、C+语句及应用3、C+程序的阅读与设计、调试【单选题】1、结构化程序设计所规定的三种基本控制结构是(A)。A.顺序结构、选择结构、循环结构B.输入、输出、处理C.for while、switchD.主程序、子程序、函数2、当执行以下程序
10、段时,循环体将执行(C).int main()(int y=1;do y;while(y);)A.一次B.两次C.无限次D.系统将提示有语法错误3.while(!x)中的(!x)与下面(D)条件等价.A.x=lB.x!=lC.x!=0D.x=04、下 面 程 序 的 输 出 结 果 是(A)o#includeusing namespace std;int main()(int x=4;docout (x-=3)endl;while(x);A.1B,1 和-3C.2 和 0D.死循环5、下列语句段将输出字符*的个数为(B).int i=100;while(l)(i-;if(i=0)break;c
11、out)A.98 个B.99 个C.100 个D.101 个6、t为i n t类型,进入循环w h i l e(t=l).之前,t的值为0。则以下叙述中,正确的是(B )。A.循环控制表达式的值为0B.循环控制表达式的值为1C.循环控制表达式不合法D.以上说法都不对7、为了避免在嵌套的条件语句i f.e l s e中产生歧义,C+规定的i f.e l s e语句的匹配原则是(B)oA.e l s e子句与所排位置相同的i f配对B.e l s e子句与其之前最近的i f配对C.e l s e子句与其之后最近的i f配对D.e l s e子句与同一行上的i f配对8、乂 =0;门也=0;1 9
12、9;1+)1好)*+;执行完程序段后,*的 值 是(C ).A.0B.3 0C.9 8D.9 09、下列程序的输出结果是(A)o#i n c l u d e u s i n g n a m e s p a c e s t d;v o i d m a i n()i n t x =1,a =0,b =0;s w i t c h(x)(c a s e 0:b+;c a s e 1 :a+;c a s e 2 :a+;b+;)c o u t a=v v a b=v v b ;)A.a=2 b=lB.a=l b=lC.a=l b=0D.a=2 b=21 0、下列给字符数组进行初始化的语句中,(A)是正确
13、的。A.c h a r s l =,a b c d,;B.c h a r s 2 3 =,x y zH;C.c h a r s 3 =a 7 x 7 y );D.c h a r s 4 2 3 =,x y z,V,m n pu;1 1、下列程序段中循环体执行的次数为(A)oi n t k=1 0;w h i l e (k=l)k=k-1;A.循环体语句一次都不执行B.循环体语句执行无数次C.循环体语句执行一次D.循环体语句执行9次12、执行以下程序段后,变量i 的 值 为(D)。int i=2;switch(i)case 1:i+=10;case 2:i+=10;case 3:i+;break
14、;default:i+;break;A.24B.14C.12D.1313、C+语言中规定,if语句的嵌套结构中,else总是与(D)配对。A.与最近的i f 配套B.与第一个i f 配套C.与缩进位置相同的if配套D.与最近的且尚未配对的i f 配套【程序阅读题】1、写出以下程序的输出结果#includeusing namespace std;int main()(int a=7,b=4,c=6,d;cout (d=a b?(a c?a:c):(b);)答案:72、写出以下程序的输出结果#include using namespace std;int main()(int a=0,i;for(
15、i=1;i v 5;i+)(switch(i)(case 0:case 3:a+=2;case 1:case 2:a+=3;default:a+=5;cout a endl;return 0;答案:31【编程题】选做1、打印出所有的水仙花数。(所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身)答案:pa201.c#includeusing namespace std;void main()int n,a,b,c;for(n=100;n1000;n+)a=n%10;b=n/10%10;c=n/100;if(a*a*a+b*b*b+c*c*c=二 n)c o u t n,t,;)结果:结果
16、文件名。可选,程序输入结果文件。没有输出文件则为【src】另起一行屏幕显示结果。2、输 入 100到 200之间的所有素数。(所谓素数是指除了 1和它本身外,不能被其他数所整除的数)答案:pa202.c#includeusing namespace std;void main()int m;for(m=100;m=200;m+)if(prime(m)co u t m,t,;int prime(int m)int i,k=l;if(m=l)k=0;for(i=2;im;i+)if(m%i=0)k=0;return k;结果。3、打印如下图形:*答案:pa203.c#includeusing na
17、mespace std;int main()int i,j;for(i=l;i=4;i+)for(j=l;j=4-i;j+)cout?for(j=1 ,j=2*i-l;j+)cout,*5;coutendl;return 0;)结果。【章节】第 3 章 函 数【知识点】1、C+函数的相关知识2、函数定义与函数的调用3、内联函数与函数重载【单选题】1、在 Visual Bacic中,要使一个窗体不可见,但不从内存中释放,应 使 用 的 语 句 是(B)。A.ShowB.HideC.LoadD.Unload1、若有以下函数调用语句,在此函数调用语句中实参的个数是(A)ofun(a+b,(y=10,
18、y),fun(n,k,d);A.3B.4C.5D.62、以下程序 的 运 行 结 果 是(A)oint main()int k=4,m=l,p;p=func(k,m);coutpendl;p=func(k,m);c o ut p e n d l;)f un c(i n t a,i n t b)sta ti c i n t m,i=2;i+=m+1;m=i+a+b;r e tur n(m);)A.8,1 7B.8,1 6C.8,2 0D.8,83.以下函数调用语句中,含有的实参个数是(A).f un c(r e c l,r e c 2 +I,(r e c 3,r e c 4);A.3B.4C.5
19、D.有语法错误4.分析如下程序:#i n c lud e i n t f(i n t b ,i n t n)i n t i,r=l;f o r(i=0;i =n;i+)r=r*b i ;r e tur n r;)vo i d m a i n()i n t x,a 口=2,3,4,5,6,7,8,9;x=f(a,3);c o ut x e n d l;)上面程序的输出结果是(B )oA.7 2 0B.1 2 0C.2 4D.65、下列函数参数默认值定义错误的是(C)oA.Fun(i n t x,i n t y=0)B.Fun(i n t x=1 0 0)C.Fun(i n t x=0,i n t
20、 y)D.Fun(i n t x=f()(假定函数f()已经定义)6、在函数定义前加上关键字“i n li n e”表示该函数被定义为(B )。A.重载函数 B.内联函数 C.成员函数 D.普通函数7、一个函数功能不太复杂,但要求被频繁调用,选用(A)oA.内联函数 B.重载函数C.递归函数 D.嵌套函数8、下面有关重载函数的说法中正确的是(C)。A.重载函数必须具有不同的返回值类型B.重载函数形参个数必须不同C.重载函数必须有不同的形参列表D.重载函数名可以不同9、在C+语言中,对函数参数默认值描述正确的是(D)。A.函数参数的默认值只能设定一个B.一个函数的参数若有多个,则参数默认值的设定
21、可以不连续C.函数必须设定默认值D.在设定参数的默认值后,该参数后面定义的所有参数都必须设定默认值10、考虑函数原型void test(int a,int b=7,char z=*),下面的函数调用中,属于不合法调用的是(C)A.test(5);B.test(5,8);C.test(6,#);D.test(O,O;*);11、以下对C+函数的有关描述中,正确的是(A)。A.C调用函数时,只能把实参的值传给形参,形参的值不能传递给实参B.C+函数既可以嵌套定义又可以递归调用C.函数必须有返回值,否则不能使用函数D.C+程序中有调用关系的所有函数必须放在同一源程序文件中12、在C+语言中函数返回值
22、的类型是由(C)决定的。A.调用该函数时系统临时B.return语句中的表达式类型C.定义该函数时所指定的函数类型D.调用该函数时的主调函数类型13、以下程序的输出结果是(C)。int func(int a,int b)return a+b;int main()int x=6,y=7,z=8,r;r=func(func(x,y),z);coutrendl;)A.15B.20C.21D.3114、以下程序的输出结果是(A)ovoid fun(int a,int b,int c)a=456;b=567;c=678;int main()int x=10,y=20,z=30;fun(x,y,z);c
23、o u t z,y,7,x en d l;)A.30,20,10B.10,20,30C.456,567,678D.678,567,45615、C+语言中,形参与实参之间的数据传递方式是(C)。A.只能按值传递B,只能按地址传递C.既可以按值传递也可以按地址传递D.以上说法都不对16、分析以下程序:#include void fun(inl num)coutnum endl;void fun(char ch)cout(ch+1 )endl;int main()fun(A);return 0;)以上程序的输出结果是(B)oA.65 B.66C.A D.B17 一个函数为 void f(int x,
24、char y=a ),另一个函数为 void f(int),则它们(A)0A.不能在同一程序块中定义B.可以在同一个程序块中定义并可重载C.可以在同一个程序块中定义,但不可以重载D.以上说法均不正确18、函数定义为Fun(int&i),变量定义n=1 0 0,则下面调用正确的是(C)。A.Fun(20)B.Fun(20+n)C.Fun(n)D.Fun(&n)19、当一个函数无返回值时,函 数 的 类 型 应 为(B)oA.任意 B.voidC.int D.char20、下列带缺省值参数的函数说明中,正确的说明是(A)。A.int Fun(int x,int y=2,int z=3);B.int
25、 Fun(int x=l,int y,int z=3);C.int Fun(int x,int y=2,int z);D.int Fun(int x=l,int y,int z=3);21、下列函数参数默认值定义错误的是(C)oA.Fun(int x,int y=0)B.Fun(int x=100)C.Fun(int x=0,int y)D.Fun(int x=f()(假定函数f()已经定义)22、在函数定义前加上关键字inline表示该函数被定义为(B)。A.重载函数 B.内联函数C.成员函数D.普通函数23、一个函数功能不太复杂,但要求被频繁调用,选用(A)。A.内联函数 B.重载函数C.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 考试 题库
限制150内