2012全国计算机笔试4.doc_第1页
2012全国计算机笔试4.doc_第2页
2012全国计算机笔试4.doc_第3页
2012全国计算机笔试4.doc_第4页
2012全国计算机笔试4.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、选择题 在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。 A(1)下列叙述中正确的是 A)线性表是线性结构 B)栈与队列是非线性结构 C)线性链表是非线性结构 D)二叉树是线性结构 C(2)非空的循环单链表head的尾结点(由p所指向),满足 A)p-next=NULL B)p=NULL C)p-next=head D)p=head B(3)已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是 A)堆排序 B)直接插入排序 C)快速排序 D)直接选择排序 A(4)对建立良好的程序设计风格,下面描述正确的是 A)程序应简单、清晰、可读性好 B)符号名的命名只要符合语法 C)充分考虑程序的执行效率 D)程序的注释可有可无 A(5)下列不属于结构化分析的常用工具的是 A)数据流图 B)数据字典 C)判定树 D)PAD图 D(6)在软件生产过程中,需求信息的给出是 A)程序员 B)项目管理者 C)软件分析设计人员 D)软件用户 D(7)下列工具中为需求分析常用工具的是 )PAD )PFD )N-S )DFD C(8)NULL是指 A)0 B)空格 C)未知的值或无任何值 D)空字符串 C(9)数据库的故障恢复一般是由 A)数据流图完成的 B)数据字典完成的 C)DBA完成的 D)PAD图完成的 C(10)下列说法中,不属于数据模型所描述的内容的是 A)数据结构 B)数据操作 C)数据查询 D)数据约束 B(11)面向对象程序设计思想的主要特征中不包括 A)继承性 B)功能分解,逐步求精 C)封装性和信息隐藏 D)多态性 B(12)C+语言是以哪种语言为基础逐渐发展演变而成的一种程序设计语言 A)ASP B)C C)VB D)Java C(13)设变量a是int型,f是double型,i是float型,则表达式10+a+ i * f值的数据类型 A)int B)float C)double D)不确定 D(14)能正确表示逻辑关系:a10或a0的C+语言表达式是 A)a=10 or a=0|a=10 & a=10a=0 B(15)以下程序的输出结果是 #includevoid main() int i,j,x=0; for(i=0;i2;i+) x+; for(j=0;j3;j+) if(j%2)continue; x+; x+; cout x= a b; k=a; if(ak=a%b; else k=b%a; cout k endl; A)5 B)3 C)2 D)0 D(17)有以下程序 #include #include void main() char *p=abcde0fghjik0 ; cout strlen(p); 程序运行后的输出结果是 A)12 B)15 C)6 D)5 D(18)若有说明语句 char a=It is mine; char *p=It is mine; 则以下不正确的叙述是 A)a+1表示的是字符t的地址 B)p指向另外的字符串时,字符串的长度不受限制 C)p变量中存放的地址值可以改变 D)a中只能存放10个字符 B(19)以下程序的运行结果是 #includevoid sub(int x,int y,int *z) *z=y-x; void main() int a,b,c; sub(10,5,&a); sub(7,a,&b); sub(a,b,&c); cout a , b, c endl; A)5,2,3 B)-5,-12,-7 C)-5,-12,-17 D)5,-2,-7 D(20)下列程序是用来判断数组中特定元素的位置所在,则输出结果为 #include #include int fun(int *s, int t, int *k) int i; *k=0; for(i=0;iif(s*kreturn s*k; void main() int a10= 876,675,896,101,301,401,980,431,451,777,k; fun(a, 10, &k); cout k , B); cout n; A)0 B)1 C)2 D)3 D(22)关于this指针的说明不正确的是 A)不能在程序中修改this指针 B)this指针可以给其他指针赋值,但不能修改this指针 C)静态成员函数中没有this指针 D)this指针可以被赋值 B(23)下面程序的结果是 #includeclass A public: A()cout construtA endl; virtual A()cout destructA endl; class B : public A ; class C : public A ; class D : public B,public C ; void main() D d; A)constructA destructA B)constructA constructA destructA destructA C)constructA constructA constructA destructA destructA destructA D)constructA constructA constructA constructA destructA destructA destructA destructA D(24)关于虚函数下面说的正确的是 A)若在重定义虚函数时使用了virtual,则该重定义函数还是虚函数 B)虚函数不能声明为友元 C)子类必须重定义父类的虚函数 D)虚函数不能是static的 A(25)如果表达式+x/y中,+是作为友元函数重载的,/是作为成员函数重载的,则该表达式还可为 A)(operator+(x).operator/(y) B)(operator+(0).operator/(y) C)operator/(operator+(x,0),y) D)operator/(operator+(0),y) C(26)要想使23.78965421的输出为23.7887应用的语句是 A)cout 23.78965421; B)cout fixed 23.78965421; C)cout 23.78965421 -0.001; D)cout fixed 23.78965421 - 0.001; D(27)有以下语句,则对a数组元素的引用不正确的是(0i9) int a10=0,1,2,3,4,5,6,7,8,9,*p=a; A)ap-a B)*(&ai) C)pi D)*(*(a+i) B(28)有以下程序 #includefloat fun(int x,int y) return(x+y); void main() int a=2,b=5,c=8; cout fun(int)fun(a+c,b),a-c); 程序运行后的输出结果是 A)编译出错 B)9 C)21 D)9.0 A(29)下列程序的运行结果是 #include class Location private: int X, Y; public: void init(int=0, int=0); void valueX( int val )X=val; int valueX() return X; void valueY(int val)Y=val; int valueY( )return Y; void Location:init(int initX, int initY) X=initX; Y=initY; void main( ) Location A,B; A.init( ); A.valueX (5); cout A.VALUEX()ENDLA.VALUEY()B.init(6,2); /A.VALUEX()ENDLA.VALUEY()B.valueY (4); coutB.VALUEX()ENDLB.VALUEY()A)5 /B.VALUEX()ENDLB.VALUEY()0 6 4 B)0 0 6 4 C)5 0 6 2 D)0 0 6 2 B(30)在C+语言中,封装是借助于什么达到的? A)结构 B)类 C)数组 D)函数 A(31)在位运算中,操作数每左移一位,其结果相当于 A)操作数乘以2 B)操作数除以2 C)操作数除以4 D)操作数乘以4 B(32)有如下程序 #include#define N 2 #define M N+1 #define NUM 2*M+1 void main() int i; for(i=1;i=NUM;i+) cout i; 该程序中的for循环执行的次数是 A)5 B)6 C)7 D)8 B(33)下列程序的输出结果是 #includeint b=2; int func(int *a) b += *a; return(b); void main() int a=2, res=2; res += func(&a); cout 2)return(fib(n-1)+fib(n-2); else return (2); void main() cout b)?a:b; 。 if(ab)max=a; else max=b; (8)以下程序的输出结果是defg。 #includevoid main() char s=defghijk;s4=0; cout s endl; (9)下面程序的功能是将字符数组a中下标值为偶数的元素从小到大排列,其他元素不变,请填空。 #include #include void main() char a=clanguage,t; int i, j, k; k=strlen(a); for(i=0; i=k-2; i+=2) for(j=i+2; j=ajaiaj)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论