计算机二级C语言笔试考试2009年9月
2009年全国高等学校计算机考试二级(C语言)试卷

一、单项选择1.中央处理器(CPU)包括A.控制器和内存 B .制器和内存器C.运算器和内存 D .硬盘和控制器2.计算机的主存储器包括A.RAM和C盘 B .ROM和C磁盘C . ROM和RAMD .硬盘和控制器3.计算机中数据的表示形式是A.二进制B.八进制C.十进制 D.十六进制4在微型计算机中,2048*2048的字节准确等于A.1MBB.2MBC.3MBD.4MB5.八进制整数157化为二进制数是A.1101010B.1101000C. 1101111D.10101016.在Windows应用环境中,选中窗口全部对象的组合键是A.<Alt>+AB.<Ctrl>+AC.<Alt>+<Shift>+AD.<Shift>+A7.Windows中,文件扩展名通常表示A.文件的类型B.文件的大小C. 文件的版本D.文件的修改时间8.在Windows移动普通窗口的方法是使用鼠标拖动A.滚动条B.菜单栏C.工具栏D.标题栏9.在Windows中剪贴板是A.硬盘上的一块空间B.U盘上的一块空间C.Cache中的一块空间D.内存中的一块空间10.在Windows中,关闭窗口的操作是双击A.窗口控制图标B.标题栏C.菜单栏D.工具栏11.在Windows的“资源管理器”的窗口右部,若单击了第一个文件,有按住<Ctrl>键并开始单击第七个文件,则A.在0个文件被选中B.有1个文件被选中C.有2个文件被选中D.有7个文件被选中12.Word文档文件默认的扩展名是A.TXTB.DOSC.WPSD.WAV13.Word文档编辑过程中,为防止突然断电等意外操作造成丢失数据,应经常单击工具栏上的保存按钮或快捷键A.<Art>+SB.<Alt>+CC. <Ctrl>+CD.<Ctrl>+S14.保存Word文档时系统默认的保存路径是A.My DocumentsB.我的公文包C.WindowsD.Wrod15.Word程序中允许打开多个文档,可以实现文档窗口之间切换的菜单是A.编辑B.窗口C.视图D.工具16.Excel中,下列输入数据属于字符型的是A.+J1+7B.=SUM(J1:Y1)C.’SUM(P1,P7)D.=P7+717.以下说法错误的是A.Excel文件的扩展名是.XSLB.Excel是电子表格软件C.Excel属于OfficeD.Excel可以在Windows环境下运行18.在Excel中,若要对几个数值求平均值,选用函数是A.SUMB.AVERAGEC.MAXD.COUNT19.局域网的英文缩写是A.WANB.ISDNC.WWWN20.下列各种网络拓扑结构中,共享资源能力最差的是A.网状结构B.树状结构C.总线结构D.星型结构21若在说明语句:int i=9,j:则执行语句j=(i++)+(++i);后j的数值是A.18B.19C.20D.2222.设有如下定义:int x=10,y =3;则语句printf(”%d”,(x%y));的输出结果是A.0B.1C.4D.323.”A”和在计算机内存中分别占用的字节数是A.2,1B.1,1C.1,2D.2,224.若已定义char a[10];则下面表达式中不能表示a[1]地址的是A.a+1B.a++C.&a[0]+1D.&a[1]25.设有定义:int a=1,b=2,c=3,d=4;,则printf(”%d”,a<b?c:b);的输出结果是A.1B. 2C.3D.426.C语言中运算数必须是整形的运算符是A./B.%C.>=D.+27.C语言中,可以用来定义多个不同类型变量值的数据类型是A.数组B.结构体C.指针D.权举28.程序设计的三种结构是A.顺序结构、分支结构、选择结构B.顺序结构、递归结构、选择结构C.顺序结构、循环结构、逻辑结构D.顺序结构、循环结构、选择结构29.字符串常量”\\ab\’dtd"的长度是A.5B.7C.8D.930.若有如下定义,则sizeof(struct stu)的数值是Struct sut{ int i;Char ch[5]}a;A.2B.5C.6D.7二.阅读程序题(本题共10小题,每小题3分,共30分)1. main( ){int x=4;printf(“%d”, x+=x-=x*x);}2. int x=4,y=5;main( ){int x=6, y=7;printf(“%d,%d\n”,x,y);}3. main( )int i,s=0;for(i=1;i<6;i++){switch(i){case 1: s=1;case 2: s+=3; break;case 3: s==4;default : s+=2;}}printf(“%d\n”, s);}4.int fun(int x){static int m=1;m*=x;return m;}main( ){int i,s=0;for(i=1;i<3;i++)s+=fun(i);printf(“%d\n”,s);}5. main( ){int a=8,b=10,c=6;if(a<b)if(b<1) c=0else c++;printf(“%d\n”,c);}6. #define m(x,y,z) x*y-zmain( ){int a=2,b=3,c=4,y;y= M(a,b+c,c+b);printf(“%d\n”,y);}7. main( ){int a[ ]={1,2,3,4,5,6}, *p;p=a;*(p+2)+=4;printf(“%d,%d \n”, *p,*(p+2));}8. main( ){int num[3][3]={0,1,2,0,1,2,0,1,2},I,j,t=0;for(i=0;i<3;i++)for(j=0;j<=i;j++)t=t+num[i][num[[j][j]];}三.完善程序题(本小题共10小题,每小题2分,共20分)将下列程序________的内容填写到答题纸上对应题号处,使程序完整、正确。
历届国家二级c语言考试真题及其答案,word版

B)操作系统C)教务管理系统D)汇编程序(6)下面叙述中错误的是A)软件测试的目的是发现错误并改正错误B)对被调试的程序进行“错误定位”是程序调试的必要步骤C)程序调试通常也称为DebugD)软件测试应严格执行测试计划,排除测试的随意性(7)耦合性和内聚性是对模块独立性度量的两个标准。
下列叙述中正确的是A)提高耦合性降低内聚性有利于提高模块的独立性B)降低耦合性提高内聚性有利于提高模块的独立性C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度D)内聚性是指模块间互相连接的紧密程度(8)数据库应用系统中的核心问题是A)数据库设计B)数据库系统设计C)数据库维护D)数据库管理员培训(9)有两个关系R,S如下:由关系R通过运算得到关系S,则所使用的运算为A)选择 B)投影 C)插入 D)连接(10)将E-R图转换为关系模式时,实体和联系都可以表示为A)属性 B)键 C)关系 D)域(11)以下选项中合法的标识符是A) 1-1 B)1—1 C)-11 D)1--(12)若函数中有定义语句:int k;,则A)系统将自动给k赋初值0B)这时k中值无定义C)系统将自动给k赋初值-1D)这时k中无任何值(13)以下选项中,能用作数据常量的是A)o115 B) 0118 C)1.5e1.5 D) 115L(14)设有定义:int x=2;,以下表达式中,值不为6的是A) x*=x+1B) x++,2*xC)x*=(1+x)D)2*x,x+=2(15)程序段:int x=12;double y=3.141593; printf(“%d%8.6f”,x,y);的输出结果是A)123.141593B)123.141593C)12,3.141593D)123.141593(16)若有定义语句:double x,y,*px,*py,执行了px=&x, py=&y;之后,正确的输入语句是A)scanf(“%f%f”,x,y);B) scanf(“%f%f”,&x,&y);C) scanf(“%lf%le”,px,py);D) scanf(“%lf%lf”,x,y);(17)以下是if语句的基本形式:if(表达式)语句其中“表达式”A)必须是逻辑表达式B)必须是关系表达式C)必须是逻辑表达式或关系表达式D)可以是任意合法的表达式(18)有以下程序#include <stdio.h>main(){int x;scanf(“%d”,&x);if(x<=3); elseif(x!=10)printf(“%d\n”,x);}程序运行时,输入的值在哪个范围才会有输出结果A)不等于10的整数B)大于3且不等于10的整数C)大于3或等于10的整数D)小于3的整数(19)有以下程序#include<stdio.h> Main(){int a=1,b=2,c=3,d=0;if(a= =1 &&b++= =2)if(b!=2 || c--!=3)printf(“%d,%d,%d\n”,a,b,c);else printf(“%d,%d,%d\n”,a,b,c);else printf(“%d,%d,%d\n”,a,b,c);}程序运行后的输出结果是A)1,2,3B)1,3,2C)1,3,3D)3,2,1(20)以下程序中的变量已正确定义for(i=0;i<4;i++,i++for(k=1;k<3;k++);printf(*”);程序段的输出结果是A)********B)****C)**D)*(21)有以下程序#include<stdio.h>main(){char*s=(“ABC);do{printf(“%d”,*s%10);s++;}while(*s);}注意,字母A的ASCII码值为65。
国家计算机二级C语言历年真题及答案

全国计算机等级考试二级笔试试卷C语言程序设计(考试时间90分钟,满分100分)一、选择题((1)—(10)、(21)—(40)每题2分,(11)—(20)每题1分,共70分)(1)下列数据结构中,属于非线性结构的是A)循环队列B) 带链队列C) 二叉树D)带链栈(2)下列数据结果中,能够按照“先进后出”原则存取数据的是A) 循环队列B) 栈C)队列D)二叉树(3)对于循环队列,下列叙述中正确的是A)队头指针是固定不变的B)队头指针一定大于队尾指针C)队头指针一定小于队尾指针D)队头指针可以大于队尾指针,也可以小于队尾指针(4)算法的空间复杂度是指A)算法在执行过程中所需要的计算机存储空间B)算法所处理的数据量C)算法程序中的语句或指令条数D)算法在执行过程中所需要的临时工作单元数(5)软件设计中划分模块的一个准则是A) 低内聚低耦合B) 高内聚低耦合C) 低内聚高耦合D) 高内聚高耦合(6)下列选项中不属于结构化程序设计原则的是A) 可封装D) 自顶向下C) 模块化D) 逐步求精(7)软件详细设计产生的图如下:该图是A) N-S图B) PAD图C) 程序流程图D) E-R图(8)数据库管理系统是A)操作系统的一部分B) 在操作系统支持下的系统软件C) 一种编译系统D) 一种操作系统(9)在E-R图中,用来表示实体联系的图形是A) 椭圆图B) 矩形C) 菱形D) 三角形(10)有三个关系R,S和T如下:其中关系T由关系R和S通过某种操作得到,该操作为A) 选择B) 投影C) 交D) 并(11)以下叙述中正确的是A)程序设计的任务就是编写程序代码并上机调试B)程序设计的任务就是确定所用数据结构C)程序设计的任务就是确定所用算法D)以上三种说法都不完整(12)以下选项中,能用作用户标识符的是A)voidB)8_8C)_0_D)unsigned(13)阅读以下程序#includemain(){ int case; float printF;printf(“请输入2个数:”);scanf(“%d %f”,&case,&pjrintF);printf(“%d %f\n”,case,printF);}该程序编译时产生错误,其出错原因是A)定义语句出错,case是关键字,不能用作用户自定义标识符B)定义语句出错,printF不能用作用户自定义标识符C)定义语句无错,scanf不能作为输入函数使用D)定义语句无错,printf不能输出case的值(14)表达式:(int)((double)9/2)-(9)%2的值是A)0B)3C)4D)5(15)若有定义语句:int x=10;,则表达式x-=x+x的值为A)-20B)-10C)0D)10(16)有以下程序#includemain(){ int a=1,b=0;printf(“%d,”,b=a+b);printf(“%d\n”,a=2*b);}程序运行后的输出结果是A)0,0C)3,2D)1,217)设有定义:int a=1,b=2,c=3;,以下语句中执行效果与其它三个不同的是A)if(a>b) c=a,a=b,b=c;B)if(a>b) {c=a,a=b,b=c;}C)if(a>b) c=a;a=b;b=c;D)if(a>b) {c=a;a=b;b=c;}(18)有以下程序#includemain(){ int c=0,k;for (k=1;k<3;k++)switch (k){ default: c+=kcase 2: c++;break;case 4: c+=2;break;}printf(“%d\n”,c);}程序运行后的输出结果是A)3B)5C)7D)9(19)以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是A)if((a>b)&&(b>c)) k=1;else k=0;B)if((a>b)||(b>c) k=1;else k=0;C)if(a<=b) k=0;else if(b<=c) k=1;D)if(a>b) k=1;else if(b>c) k=1;else k=0;20)有以下程序#include{ char s[]={“012xy”};int i,n=0;for(i=0;s[i]!=0;i++)if(s[i]>=’a’&&s[i]<=’z’) n++;printf(“%d\n”,n);}程序运行后的输出结果是A)0B)2C)3D)5(21)有以下程序#includemain(){ int n=2,k=0;while(k++&&n++>2);printf(“%d %d\n”,k,n);}程序运行后的输出结果是A)0 2B)1 3C)5 7D)1 2(22)有以下定义语句,编译时会出现编译错误的是A)char a=’a’;B)char a=’\n’;C)char a=’aa’;D)char a=’\x2d’;(23)有以下程序#includemain(){ char c1,c2;c1=’A’+’8’-‘4’;c2=’A’+’8’-‘5’;printf(“%c,%d\n”,c1,c2);}已知字母A的ASCII码为65,程序运行后的输出结果是A)E,68C)E,DD)输出无定值(24)有以下程序#includevoid fun(int p){ int d=2;p=d++; printf(“%d”,p);}main(){ int a=1;fun(a); printf(“%d\n”,a);}程序运行后的输出结果是A)32B)12C)21D)22(25)以下函数findmax拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能#define MIN -2147483647int findmax (int x[],int n){ int i,max;for(i=0;i<N;I++)< p="" />{ max=MIN;if(maxreturn max;}造成错误的原因是A)定义语句int i,max;中max未赋初值B)赋值语句max=MIN;中,不应给max赋MIN值C)语句if(maxD)赋值语句max=MIN;放错了位置(26)有以下程序#includemain(){ int m=1,n=2,*p=&m,*q=&n,*r;r=p;p=q;q=r;printf(“%d,%d,%d,%d\n”,m,n,*p,*q);}程序运行后的输出结果是A)1,2,1,2B)1,2,2,1C)2,1,2,1D)2,1,1,2(27)若有定义语句:int a[4][10],*p,*q[4];且0≤i<4,则错误的赋值是A)p=aB)q[i]=a[i]C)p=a[i]D)p=&a[2][1](28)有以下程序#include#includemain(){ char str[ ][20]={“One*World”, “One*Dream!”},*p=str[1];printf(“%d,”,strlen(p));printf(“%s\n”,p);}程序运行后的输出结果是A)9,One*WorldB)9,One*DreamC)10,One*DreamD)10,One*World(29)有以下程序#includemain(){ int a[ ]={2,3,5,4},i;for(i=0;i<4;i++)switch(i%2){ case 0:switch(a[i]%2){case 0:a[i]++;break;case 1:a[i]--;}break;case 1:a[i[=0;}for(i=0;i<4;i++) printf(“%d”,a[i]); printf(“\n”);}A)3 3 4 4B)2 0 5 0C)3 0 4 0D)0 3 0 4(30)有以下程序#include#includemain(){ char a[10]=”abcd”;printf(“%d,%d\n”,strlen(a),sizeof(a));}程序运行后的输出结果是A)7,4B)4,10C)8,8D)10,10(31)下面是有关C语言字符数组的描述,其中错误的是A)不可以用赋值语句给字符数组名赋字符串B)可以用输入语句把字符串整体输入给字符数组C)字符数组中的内容不一定是字符串D)字符数组只能存放字符串(32)下列函数的功能是fun(char * a,char * b){ while((*b=*a)!=’\0’) {a++,b++;} }A)将a所指字符串赋给b所指空间B)使指针b指向a所指字符串C)将a所指字符串和b所指字符串进行比较D)检查a和b所指字符串中是否有’\0’(33)设有以下函数void fun(int n,char * s) {……}则下面对函数指针的定义和赋值均是正确的是A)void (*pf)(); pf=fun;B)viod *pf(); pf=fun;C)void *pf(); *pf=fun;D)void (*pf)(int,char);pf=&fun;(34)有以下程序#includeint f(int n);main(){ int a=3,s;s=f(a);s=s+f(a);printf(“%d\n”,s);}int f(int n){ static int a=1;n+=a++;return n;}程序运行以后的输出结果是A)7B)8C)9D)10(35)有以下程序#include#define f(x) x*x*xmain(){ int a=3,s,t;s=f(a+1);t=f((a+1));printf(“%d,%d\n’,s,t);}程序运行后的输出结果是A)10,64B)10,10C)64,10D)64,64(36)下面结构体的定义语句中,错误的是A)struct ord {int x;int y;int z;}; struct ord a;B)struct ord {int x;int y;int z;} struct ord a;C)struct ord {int x;int y;int z;} a;D)struct {int x;int y;int z;} a;(37)设有定义:char *c;,以下选项中能够使字符型指针c正确指向一个字符串的是A)char str[ ]=”string”;c=str;B)scanf(“%s”,c);C)c=getchar();D)*c=”string”;(38)有以下程序#include#includestruct A{ int a; char b[10]; double c;};struct A f(struct A t);main(){ struct A a={1001,”ZhangDa”,1098.0};a=f(a);jprintf(“%d,%s,%6.1f\n”,a.a,a.b,a.c);}struct A f(struct A t)( t.a=1002;strcpy(t.b,”ChangRong”);t.c=1202.0;return t; )程序运行后的输出结果是A)1001,ZhangDa,1098.0B)1001,ZhangDa,1202.0C)1001,ChangRong,1098.0D)1001,ChangRong,1202.0(39)若有以下程序段int r=8;printf(“%d\n”,r>>1);输出结果是A)16B)8C)4D)2(40)下列关于C语言文件的叙述中正确的是A)文件由一系列数据依次排列组成,只能构成二进制文件B)文件由结构序列组成,可以构成二进制文件或文本文件C)文件由数据序列组成,可以构成二进制文件或文本文件D)文件由字符序列组成,其类型只能是文本文件二、填空题(每空2分,共30分)(1)某二叉树有5个度为2的结点以及3个度为1的结点,则该二叉树中共有【1】个结点。
2009年全国计算机等级考试二级C++笔试试题(4)

每小题2分,共70分第1题:以下关于虚函数的叙述中不正确的是()。
A.虚函数属于成员函数B.虚函数不允许说明成静态的C.凡是虚函数必须用virtual说明D.虚函数可以被继承【正确答案】:C【参考解析】:虚函数的引入是为了解决动态绑定问题.使类的实例表现出多态性,虚函数在继承后依然保持虚函数特性,此时不需要用virtual关键词修饰。
第2题:A【参考解析】:本题主要考察setfill的用法。
只用在设置了宽度的情况下,字符填充操作setfill才有意义。
另外要注意的是设置宽度setw是所有格式中惟一一个一次有效的设置。
第3题:下述说法错误的是()。
A.对象之间不可以相互赋值B.对象可以用作函数参数C.对象可以用作数组的元素D.对象可以用作另一对象的成员【正确答案】:A【参考解析】:如果重载了赋值运算符后,对象之间是可以赋值的,对象如C++中其他内置的数据类型一样,可以作为函数参数、数组元素,其他对象的成员存在。
第4题:假定AB为一个类,则执行AB x;语句时将自动调用该类的()。
A.有参构造函数B.无参构造函数C.拷贝构造函数D.赋值重载函数【正确答案】:B【参考解析】:当没有显式调用指定形式的构造函数。
系统自动调用无参构造函数,如果没有为类指定此构造函数,则系统自动为其生成一个最简单的无参构造函数。
)。
A)654321B)432156C)456123D)123456【正确答案】:A【参考解析】:本题采用递归函数的方式将数组中的元素进行倒置,只要能够看出函数fun的功能,即可以得出正确答案为A。
第6题:数据库概念设计中,由分散到集中的设计方法是()。
A.视图设计B.视图集成设计C.集中式模式设计D.分数式模式设计【参考解析】:数据库概念设计中,由分散到集中的设计方法是视图集成设计。
第7题:类的构造函数的作用是()。
A.一般成员函数B.类的初始化C.对象的初始化D.删除对象创建的所有对象【正确答案】:C【参考解析】:本题考查类的构造函数的作用,构造函数一般负责完成对象建立时的初始化工作,如资源的分配。
2009年秋江苏省二级考试C语言真题(答案)

2009年秋江苏省高等学校非计算机专业学生计算机基础知识和应用能力等级考试第二部分C语言程序设计参考答案一、选择题1、C2、C3、B4、D5、C6、C7、B8、A9、D 10、D二、填空题1、!2、8 解析:sizeof指数据或变量占的内存(字节),C编译系统将浮点型常量作为双精度来处理3、sqrt(abs(x))!=(4*a)/(b*c)4、1,25、auto阅读程序6、123,456解析:第一个fprintf将123作为一个整数写到文件中,第二个fprintf将456作为一个整数写到文件中7、2解析:本题switch中没有break,所以当i=1,case1,2,3依次执行,m初值为0,自增两次,值为28、15 232解析:本题的含义是当a数组元素下标为奇数而且元素值大于10,将元素值赋给数组b,x 用来记录b中数组元素个数,要注意的是打印b[i]时格式是\t制表符,要隔8位。
9、6解析:本题为递归,解决递归分两步递推+回推递推:fun(a,2)a[0]+fun(a+1,1)a[1]+fun(a+1+1,0) 注意此时指针的地址不a,而是a+1,返回的是a[1]+fun(a+1+1,0)而不是a[0]+fun(a+1+1,0) ,当n=0时fun(a+1+1,0)值为a[2],再依次回推a[2]+a[1]+a[0]=610、9解析:本题考点static,s为静态局部变量,函数调用结束后不消失保留原值,第一次f(1),s值为2,第二次f(2),s=3,第三次f(3),s=3,sum=2+3+4=911、4解析:f(a,b)为宏替换,b值为4,g(c,d)为函数调用,但是函数中没有返回值,所以d 保持原值012、 2 5 104 8 1213、4解析:本题功能是求一句英文中单词的个数。
当i=0,表示新单词开始,同时i变为1,n来统计单词个数,遇到空格表示单词结束,又表示下一个单词的开始,i置0。
2009年上海市高等学校计算机等级考试试卷二级C语言程序设计(-B-卷)

2009年上海市高等学校计算机等级考试试卷二级 C语言程序设计( B 卷)一、单选题1. 下列C语言的标识符中,不合法的标识符为____________A. starB. 1234C. _a100D. circuit92. 若已定义: int x=10;则表达式 x=(4*5,x*5,x+25) 的值是 ______ 。
A. 20B. 45C. 125D. 353. 若x是int类型变量,y是float类型变量,则为了将数据55和55.5分别赋给x和y,则执行语句: scanf(“%d, %f”,&x,&y,); 时,正确的键盘输入是 ______ 。
A. 55,55.5↙B. x=55, y=55.5↙C. 55↙55.5↙D. x=55↙y=55.5↙4. 若有说明语句:int x=25,y=20,z=30;则执行语句:if(x>y) {y=z; z=x;} x=y; printf(“%d,%d,%d”,x,y,z); 后,输出是____________A. 25,20,30B. 30,30,25C. 25,30,30D. 25,30,255. 程序段:int num=2;while(num)printf(“%d ,”,num--);的运行结果是_______________A. 2,1,B. 2,1C. 2,1,0D. 2,1,0,6. 若有说明:int a[3][4],s;则对数组a的元素引用正确的是____________A. s=0; for(i=0;i<=3;i++) for(j=0;j<4;j++) s+=a[i][j];B. s=0; for(j=0;j<=4;j++) for(i=0;i<3;i++) s+=a[i][j];C. s=0; for(i=0;i<4;i++) for(j=0;j<=3;j++) s+=a[j][i];D. s=0; for(i=0;i<3;i++) for(j=0;j<4;j++) s+=a[i][j];7. 如果形参获取实参的地址,则____________作为函数调用时的实参。
2009-2011年_江苏省计算机二级C语言历年真题及答案(笔试)
2009-2011年_江苏省计算机二级C语言历年真题及答案(笔试)2009年春季江苏省高校计算机等级考试考试试题第一部分计算机基础知识1. 在下列有关现代信息技术的一些叙述中,正确的是 1 。
A.集成电路是20世纪90年代初出现的,它的出现直接导致了微型计算机的诞生B.集成电路的集成度越来越高,目前集成度最高的已包含几百个电子元件C.目前所有数字通信均不再需要使用调制解调技术和载波技术D.光纤主要用于数字通信,它采用波分多路复用技术以增大信道容量‘.2. 最大的10位无符号二进制整数转换成八进制数是 2 .。
A.1023B.1777C.1000D.10243. 在下列有关目前PC机CPU的叙述中,错误的是 3 。
A.CPU芯片主要是由Intel公司和AMD公司提供的B."双核"是指PC机主板上含有两个独立的CPU芯片C.Pentium 4微处理器的指令系统由数百条指令组成D.Pentium 4微处理器中包含一定容量的Cache存储器4. 在下列有关当前PC机主板和内存的叙述中,正确的是 4 。
A.主板上的BIOS芯片是一种只读存储器,其内容不可在线改写B.绝大多数主板上仅有一个内存插座,因此PC机只能安装一根内存条C.内存条上的存储器芯片属于SRAM(静态随机存取存储器)D.目前内存的存取时间大多在几个到十几个ns(纳秒)之间5. 在下列有关PC机辅助存储器的叙述中,正确的是 5 。
A.硬盘的内部传输速率远远大于外部传输速率B.对于光盘刻录机来说,其刻录信息的速度一般小于读取信息的速度C.使用USB 2.0接口的移动硬盘,其数据传输速率大约为每秒数百兆字节D.CD-ROM的数据传输速率一般比USB 2.0还快6. 在下列PC机I/O接口中,数据传输速率最快的是 6 。
/doc/bc6384490.html,B 2.0B.IEEE-1394C.IrDA (红外)D.SATA7. 计算机软件可以分为商品软件、共享软件和自由软件等类型。
江苏省计算机二级考试真题(C++)2009秋
第一部分:计算机基础知识1.下列关于个人移动通信的叙述中,错误的是__A__A.第1代个人移动通信(简称1G)采用的通信技术是数字通信技术B.目前广泛使用的GSM手机采用的通信技术属于第2代移动通信技术(简称2G) c.第3代移动通信技术(简称3G)将无线通信与互联网、多媒体通信相结合D.3G有多个国际技术标准,其中也有我国自主制定的3G技术标准。
2.在下列有关集成电路的叙述中,正确的是2。
DA.现代集成电路所使用的半导体材料都是硅B.所有的集成电路都是数字集成电路C.Moore定律认为单块集成电路的集成度平均每年翻一番D.Intel公司微处理器产品Core 2 Duo,其集成度已高达数千万个电子元件3.与十六进制数AB等值的八进制数是3 。
AA. 253B.254C.171D.1724.在下列有关PC机CPU的叙述中,错误的是4B。
A.CPU中包含几十个甚至上百个寄存器,用来临时存放数据、指令和控制信息B.所有PC机的CPU都具有相同的指令系统,因而PC机可使用相同的软件C.一台计算机至少包含1个CPU,也可以包含2个、4个、8个甚至更多个CPUD.Intel公司是国际上研制和生产CPU的主要公司,我国也能生产CPU5.在下列有关PC机主板上部件的叙述中,错误的是5 D。
A.BIOS保存在主板上的一个闪存中,其内容在关机后通常不会改变B.CMOS中保存有用户设置的开机口令,关机后主板上的电池继续给CMOS供电C.启动CMOS设置程序可以重新设置CMOS中的数据,该程序是BIOS的组成部分D.网卡通常集成在主板上,由主板上独立的IC实现其功能,与芯片组无关6.从PC机存储器的层次结构来看,下列存储器中存取速度最快的是6A 。
CA.Cache存储器B.RAM和ROMC.寄存器D.硬盘和优盘7.在下列4种PC机常用I/O接口中,数据传输速率最高的是7。
BA.PS/2B.SATAC.IEEE-1394bB 2.08.在下列有关I/O操作、I/O总线和I/O接口的叙述中,错误的是8B。
2009年全国计算机等级考试二级C++笔试试题
2009年全国计算机等级考试二级C++笔试试题一十五一、选择题(每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是A)线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的B)线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构C)线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构D)上述三种说法都不对(2)下列叙述中正确的是A)在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化B)在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C)在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化D)上述三种说法都不对(3)软件测试的目的是A)评估软件可靠性B)发现并改正程序中的错误C)改正程序中的错误D)发现程序中的错误(4)下面描述中,不属于软件危机表现的是A)软件过程不规范B)软件开发生产率低C)软件质量难以控制D)软件成本不断提高(5)软件生命周期是指A)软件产品从提出、实现、使用维护到停止使用退役的过程B)软件从需求分析、设计、实现到测试完成的过程C)软件的开发过程D)软件的运行维护过程(6)面向对象方法中,继承是指A)一组对象所具有的相似性质B)一个对象具有另一个对象的性质C)各对象之间的共同性质D)类之间共享属性和操作的机制(7)层次型、网状型和关系型数据库划分原则是A)记录长度B)文件的大小C)联系的复杂程度D)数据之间的联系方式(8)一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员、与实体计算机之间的联系是A)一对一B)一对多C)多对多D)多对一(9)数据库设计中反映用户对数据要求的模式是A)内模式B)概念模式C)外模式D)设计模式(10)有三个关系R、S和T如下:则由关系R和S得到关系T的操作是A)自然连接B)交C)投影D)并(11)以下关于结构化程序设计的叙述中正确的是A)一个结构化程序必须同时由顺序、分支、循环三种结构组成B)结构化程序使用goto语句会很便捷C)在C语言中,程序的模块化是利用函数实现的D)由三种基本结构构成的程序只能解决小规模的问题(12)以下关于简单程序设计的步骤和顺序的说法中正确的是A)确定算法后,整理并写出文档,最后进行编码和上机调试B)首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档C)先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档D)先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构(13)以下叙述中错误的是A)C程序在运行过程中所有计算都以二进制方式进行B)C程序在运行过程中所有计算都以十进制方式进行C)所有C程序都需要编译链接无误后才能运行D)C程序中整型变量只能存放整数,实型变量只能存放浮点数(14)有以下定义:int a;long b;double x,y;则以下选项中正确的表达式是A)a%(int)(x-y)B)a=x!=y;C)(a*y)%bD)y=x+y=x(15)以下选项中能表示合法常量的是A)整数:1,200B)实数:1.5E2.0C )字符斜杠:…\‟D)字符串:"\007"(16)表达式a+=a-=a=9的值是A)9B)_9C)18D)0(17)若变量已正确定义,在if (W)printf(“%d\n,k”);中,以下不可替代W的是A)a<>b+cB)ch=getchar()C)a==b+cD)a++(18)有以下程序#include<stdio.h>main(){int a=1,b=0;if(!a)b++;else if(a==0)if(a)b+=2;else b+=3;printf(”%d\n”,b);}程序运行后的输出结果是A)0B)1C)2D)3(19)若有定义语句int a, b;double x;则下列选项中没有错误的是A)switch(x%2)B)switch((int)x/2.0{case 0: a++; break; {case 0: a++; break;case 1: b++; break; case 1: b++; break;default : a++; b++; default : a++; b++;} }C)switch((int)x%2)D)switch((int)(x)%2){case 0: a++; break; {case 0.0: a++; break;case 1: b++; break; case 1.0: b++; break;default : a++; b++; default : a++; b++;} }(20)有以下程序#include <stdio.h>main(){int a=1,b=2;while(a<6){b+=a;a+=2;b%二10;}printf(”%d,%d\n”,a,b);}程序运行后的输出结果是A)5,11B)7,1C)7,11D)6,1(21)有以下程序#include<stdio.h>main(){int y=10;while(y--);printf(”Y=%d\n”,Y);}程序执行后的输出结果是A)y=0B)y= -1C)y=1D)while构成无限循环(22)有以下程序#include<stdio .h>main(){char s[」=”rstuv";printf(”%c\n”,*s+2);}程序运行后的输出结果是A)tuvB)字符t的ASCII码值C)tD)出错(23)有以下程序#include<stdio.h>#include<string.h>main(){char x[]=”STRING”;x[0」=0;x[1]=‟\0‟;x[2」=‟0‟;printf(”%d %d\n”,sizeof(x),strlen(x));}程序运行后的输出结果是A)6 1B)7 0C)6 3D)7 1(24)有以下程序#include<stdio.h>Int f(int x);main(){int n=1,m;m=f(f(f(n)));printf(”%d\n”,m);}int f(int x){return x*2;}程序运行后的输出结果是A)1B)2C)4D)8(25)以下程序段完全正确的是A)int *p; scanf("%d",&p);B)int *p; scanf(“%d”,p);C)int k, *p=&k; scanf("%d",p);D)int k, *p:; *p= &k; scanf(“%d”,p);(26)有定义语句:int *p[4];以下选项中与此语句等价的是A)int p[4];B)int **p;C)int *(p「4」);D)int (*p)「4」;(27)下列定义数组的语句中,正确的是A)int N=10;B)#define N 10int x[N]; int x[N];C)int x[0..10]; D)int x[];(28)若要定义一个具有5个元素的整型数组,以下错误的定义语句是A)int a[5]=﹛0﹜;B)int b[]={0,0,0,0,0};C)int c[2+3];D)int i=5,d[i];(29)有以下程序#include<stdio.h>void f(int *p);main(){int a[5]={1,2,3,4,5},*r=a;f(r);printf(”%d\n”;*r);}void f(int *p){p=p+3;printf(”%d,”,*p);}程序运行后的输出结果是A)1,4B)4,4C)3,1D)4,1(30)有以下程序(函数fun只对下标为偶数的元素进行操作)# include<stdio.h>void fun(int*a;int n){int i、j、k、t;for (i=0;i<n一1;1+=2){k=i;…for(j=i;j<n;j+=2)if(a[j]>a〔k])k=j;t=a〔i];a〔i]=a[k];a〔k]=t;}}main(){int aa「10」={1、2、3、4、5、6、7},i;fun(aa、7);for(i=0,i<7; i++)printf(”%d,”,aa[i]));printf(”\n”);}程序运行后的输出结果是A)7,2,5,4,3,6,1B)1,6,3,4,5,2,7C)7,6,5,4,3,2,1D)1,7,3,5,6;2,1(31)下列选项中,能够满足“若字符串s1等于字符串s2,则执行ST"要求的是A)if(strcmp(s2,s1)==0)ST;B)if(sl==s2)ST;C)if(strcpy(s l ,s2)==1)ST;D)if(sl-s2==0)ST;(32)以下不能将s所指字符串正确复制到t所指存储空间的是A)while(*t=*s){t++;s++;}B)for(i=0;t[i]=s[i];i++);C)do{*t++=*s++;}while(*s);D)for(i=0,j=0;t[i++]=s[j++];);(33)有以下程序(strcat函数用以连接两个字符串)#include<stdio.h>#include<string .h>main(){char a[20]=”ABCD\OEFG\0”,b[]=”IJK”;strcat(a,b);printf(”%s\n”,a);}程序运行后的输出结果是A)ABCDE\OFG\OIJKB)ABCDIJKC)IJKD)EFGIJK(34)有以下程序,程序中库函数islower (ch)用以判断ch中的字母是否为小写字母#include<stdio.h>#include<ctype.h>void fun(char*p){int i=0;while (p[i]){if(p[i]==‟ ‟&&islower(p「i-1」))p[i-1]=p[i-1]-…a‟+…A‟; i++;}}main(){char s1[100]=”ab cd EFG!”;fun(s1);printf(”%s\n”,s1);}程序运行后的输出结果是A)ab cd EFG!B)Ab Cd EFg!C)aB cD EFG!D)ab cd EFg!(35)有以下程序#include<stdio.h>void fun(int x){if(x/2>1)fun(x/2);printf(”%d”,x);}main(){fun(7);printf(”\n”);}程序运行后的输出结果是A)1 3 7B)7 3 1C)7 3D)3 7(36)有以下程序#include<stdio.h>int fun(){static int x=1;x+=1;return x;}main(){int i;s=1;for(i=1;i<=5;i++)s+=fun();printf(”%d\n”,s);}程序运行后的输出结果是A)11B)21C)6D)120(37)有以下程序#inctude<stdio.h>#include<stdlib.h>Main(){int *a,*b,*c;a=b=c=(int*)malloc(sizeof(int));*a=1;*b=2,*c=3;a=b;printf(“%d,%d,%d\n”,*a,*b,*c);}程序运行后的输出结果是A)3,3,3 B)2,2,3 C)1,2,3 D)1,1,3(38)有以下程序#include<stdio.h>main(){int s,t,A=10;double B=6;s=sizeof(A);t=sizeof(B);printf(“%d,%d\n”,s,t);}在VC6平台上编译运行,程序运行后的输出结果是A)2,4 B)4,4 C)4,8 D)10,6(39)若有以下语句Typedef struct S{int g; char h;}T;以下叙述中正确的是A)可用S定义结构体变量B)可用T定义结构体变量C)S是struct类型的变量D)T是struct S类型的变量(40)有以下程序#include<stdio.h>main(){short c=124;c=c_______;printf(“%d\n”、C);}若要使程序的运行结果为248,应在下划线处填入的是A)>>2 B)|248 C)&0248 D)<<I二、填空题(每空2分,共30分)请将每空的正确答案写在答题卡【1】至【15】序号的横线上,答在试卷上不得分。
2009年9月计算机等级考试二级C++模拟试题(2)
矿产资源开发利用方案编写内容要求及审查大纲
矿产资源开发利用方案编写内容要求及《矿产资源开发利用方案》审查大纲一、概述
㈠矿区位置、隶属关系和企业性质。
如为改扩建矿山, 应说明矿山现状、
特点及存在的主要问题。
㈡编制依据
(1简述项目前期工作进展情况及与有关方面对项目的意向性协议情况。
(2 列出开发利用方案编制所依据的主要基础性资料的名称。
如经储量管理部门认定的矿区地质勘探报告、选矿试验报告、加工利用试验报告、工程地质初评资料、矿区水文资料和供水资料等。
对改、扩建矿山应有生产实际资料, 如矿山总平面现状图、矿床开拓系统图、采场现状图和主要采选设备清单等。
二、矿产品需求现状和预测
㈠该矿产在国内需求情况和市场供应情况
1、矿产品现状及加工利用趋向。
2、国内近、远期的需求量及主要销向预测。
㈡产品价格分析
1、国内矿产品价格现状。
2、矿产品价格稳定性及变化趋势。
三、矿产资源概况
㈠矿区总体概况
1、矿区总体规划情况。
2、矿区矿产资源概况。
3、该设计与矿区总体开发的关系。
㈡该设计项目的资源概况
1、矿床地质及构造特征。
2、矿床开采技术条件及水文地质条件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2009年9月全国计算机等级考试二级笔试考试 C语言程序设计考试 (考试时间90分钟,满分100分) 一、 选择题((1-10)、(21-40)每题2分,(11)-(20)每题1分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确填涂在答案卡相应位置上,答在试卷上不得分。 (1) 下列数据结构中,属于非线性结构的是 A)循环结构 B)带练队列 C)二叉树 D)带链栈
(2) 下列数据结构中,能够按照“先进后出”原则存取数据的是 A)循环队列 B)栈 C)队列 D)二叉树
(3) 对于循环队列,下列叙述中正确的 A)队头指针是固定不变的 B)队头指针一定不大于队尾指针 C)队头指针一定小于队尾指针 D)队头指针可以大于队尾指针,也可以小于队尾指针
(4) 算法的空间复杂度是指 A)算法在执行过程中所需要的计算机存储空间 B)算法所处理的数据量 C)算法程序中的语句或指令条数 D)算法在执行过程中所需要的临时工作单元数
(5) 软件设计中划分模块的一个准则是 A)低内聚低耦合 B)高内聚低耦合 C)低内聚高耦合 D)高内聚高耦合
(6)下列选项中不属于结构化程序设计原则的是 A)可封装 B)自顶向下 C)模块化 D)逐步求精
7、软件详细设计的图如下:
该图是: A) N-S图 B) PAD 图 C) 程序流程图 D) E-R图 8、数据库管理系统是: A)操作系统的一部分 B)在操作系统支持下的系统软件 C)一种编译系统 D)一种操作系统
9、在E-R图型中,用来表示两个实体联系的图型的是: A) 矩形 B) 椭圆 C)菱形 D)三角形
10、有三个关系R、S和T如下: R S T
A B C a 1 2 b 2 1 c 3 1
其中关系T由关系R和关系S通过某种操作得到:该操作为: A) 选择 B) 投影 C)交 D)并
11、一下叙述中正确的是: A) 程序设计的任务是编写程序代码并上机调试。 B) 程序设计的任务是确定所用的数据结构。 C)程序设计的任务是确定所用的算法。 D)以上三种说法都不完整。
12、以下选项中,能用作用户标识符的是: A) void B)8_8 C)_0_ D)unsigned
(13)阅读以下程序 #include main ( ) { int case ; float printF; printf(“请输入2个数:”); scanf(“%d %f”,&case,&printF); printf(“%d %f\n”,case,printF); } 该程序在编译时产生错误,其出错原因是 A) 定义语句出错,case是关键字,不能用作用户自定义标识符 B) 定义语句出错,printF不能用作用户自定义标识符 C) 定义语句无错,scanf不能作为输入函数使用 D) 定义语句无错,printf不能输出case的值
(14)表达式:(int)((double)9/2)-(9)%2的值是 A) 0 B) 3 C) 4 D) 5
A B C a 1 2 b 2 1 c 3 1 d 3 2
A B C d 3 2 (15)若有定义语句:int x=10;,则表达式x-=x+x的值为 A) -20 B) -10 C) 0 D) 10
(16) 有以下程序 #include main ( ) { int a=1,b=0; printf(“%d,”,b=a+b); printf(“%d\n”,a=2+b); } 程序运行后的输出结果是 A)0,0 B)1,0 C)3,2 D)1,2
(17)设有定义:int a=1,b=2,c=3;,以下语句中执行效果与其他三个不同的是 A) if (a>b)c=a,a=b,b=c; B)if(a>b){c=a,a=b,b=c;} C) if(a>b)c=a;a=b;b=c; D)if(a>b) {c=a;a=b;b=c;}
(18)有以下程序 #include main ( ) { int c=0,k; for (k=1;k<3;k++) switch (k) { default: c+=k; case 2:c++;break; case 4:c+=2;break; } printf{“%d\n”,c}; } 程序运行后的输出结果是 A) 3 B) 5 C) 7 D) 9
(19)以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是 A)if((a>b)&&(b>c))k=1; B)if((a>b)||(b>c))k=1; else k=0; else k=0; C)if(a<=b)k=0; D)if(a>b) k=1; else if(b<=c)k=1; else if(b>c) k=1; else k=0;
(20) 有以下程序 #include main( ) { char s[ ]={“012xy”}; int i,n=0; for(i=0;s[i]!=0;i++) if(s[i]>=‟a‟&&s[i]<=‟z‟) n++; printf(“%d\n”,n); } 程序运行后的输出结果是 A)0 B)2 C)3 D)5
(21)有以下程序 #include main ( ) { int n=2,k=0; while(k++&&n++>2); printf(“%d %d\n”,k,n); } 程序运行后的输出结果是 A)0 2 B) 1 3 C) 5 7 D) 1 2
(22)有以下定义语句,编译时会出现编译错误的是 A) char a=‟a‟; B)char a=‟\n‟; C) char a=‟aa‟; D)char a=‟\x2d‟;
23)有以下程序 #include main() { char c1,c2; c1=‟A‟+‟8‟-„4‟; c2=‟A‟+‟8‟-„5‟; printf {“%c,%d\n”c1,c2}; } 已知字母A的ASCII码为65,程序运行输出后的结果是: A)E,68 B)D,69 C)E,D D)输出无定值
24)有以下程序 #include void fun{int p} { int d=2; p=d+t; printf(“%d”,p);} main() {int a=1; fun(a); printf(“%d\n”,a); } 程序运行后的输出结果是 A)32 B)12 C)21 D)22
25)以下函数findmax拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能。 #define MIN -2147483647 int findmax {int x[],int n} { int i,max;; for {i=0;i{ max =MIN; if(maxreturn max; } 造成错误的原因是 A)定义语句int i,max:中max 未赋初值 B)赋值语句max=MIN;中,不应给max 赋MIN值 C)语句if(maxD)赋值语句max=MIN;放错了位置
(26)有以下程序 #include main() {int m=1,n=2,*p=&m,*q=&n,*r; r=p;p=q;q=r; printf(“%d,%d,%d\n”,m,n,*p,*q); } 程序运行后的输出结果为 A)1,2,1,2 B)1,2,2,1 C)2,1,2,1 D)2,1,1,2
(27)若有定义语句:int a[4][10],*p,*q[4];且0<=i<4,则错误的赋值是: A)p=a B)q[i]=a[i] C)p=a[i] D)p=&a[2][1]
(28)有以下程序: #include #include main() {char str[][20]={“One*World”,”One*Dream”},*p=str[1]; printf(“%d”,strlen(p));printf(“%s\n”,p); } 程序运行后的输出结果是: A)9,One*World B)9,One*Dream C)10,One*Dream D)10,One*World
(29)有以下程序: #include main() {int a[]={1,2,3,5,4},i; for(i=0;i<4;i++) switch(i%2)