2007年上海市高等学校计算机等级考试(C语言)试卷答案
- 格式:doc
- 大小:307.00 KB
- 文档页数:7
单选题1、在Windows 中,回收站的作用是存放____________ 。
A :文件的碎片B :已破坏的文件C :被删除的文件*D :剪切的文本2、 _________ 是流媒体技术的基础。
A :数据传输和存储B :数据存储和运算C :数据压缩和传输*?D :数据运算和压缩3、以下叙述中错误的是 ____________ 。
A :位图图像由数字阵列信息组成,阵列中的各项数字用来描述构成图像的各个点(称为像素)的亮度和颜色等信息B :位图图像放大后,表示图像内容和颜色的像素数量相应增加*C :矢量图中用于描述图形内容的指令可描述构成该图形的所有直线、圆、圆弧、矩形、曲线等图元的位置、维数和形状等D :矢量图不会因为放大而产生马赛克现象4、在因特网域名中,edu 通常表示________ 。
A :商业组织B :军事部门C :政府部门D :教育机构*5、常用的网络拓朴结构应该包括 _________ 。
A :总线、环型和网状B :总线、星型、环型和网状*C:星型和网状D:环型和网状6、目前,一般的IP 地址的二进制位数为____________ 位。
A: 64 B: 128 C: 32* D: 487、计算机病毒主要是造成对 _______ 的破坏。
A :程序和数据*B :磁盘C:主机D:光盘驱动器8、通常信息技术主体中的"3C 技术"是指通讯技术、计算机技术和A :激光技术B :控制技术C:感测技术D:微电子技术*9、计算机网络中实现互联的计算机本身是可以进行__________ 工作的。
A :关机B :独立* C:串行 D :互相制约10、在OSI 七层结构模型中,处于数据链路层和传送层之间的是____________A :会话层B :物理层C:网络层* D :表示层11、在因特网域名中,com 通常表示_________ 。
A :教育机构B:军事部门C:商业组织* D:政府部门12、以下台式计算机的扩展总线中,目前主要使用 ______________ 总线。
2007年9月全国计算机等级考试二级C笔试答案选择1~10 DBCAA DCABA 11~20 BABCC DABBB 21~30 BCBBD CCDAA31~40 BACDC CDDDD 41~50 AABAD CDDCD填空:1,正确性2,白盒3,链式4,ACBDFEHGP 5,实体6,12 34 7.a:b 8.c:t1 9.54321 10.k<=n11.k++ 12.ACE 13.efgh 14.x[0] 15.x[0]16.c=getchar() 17.1 18.3 7 15 19.55 20.p->next2008年4月全国计算机等级考试二级C笔试答案选择:1-10 CAbBA DBCDC 11-20 CCBCB DBBBD 21-30 DADCA DDDAB31-40 CCACC ABAAB填空::1、输出2、16 3、24 4、关系5、数据定义语言6、0 7、3 8、##2##49、2 10、2468 11、3 5 12、4 13、13 14、person[i].sex 15、"filea.dat","r" 2008年9月全国计算机等级考试二级C笔试答案选择题:1-5 :B D C A D 6-10: B A B C D 11-15: C D A C D 16-20: A D C B A21-25: C A B A B 26-30: C D D A B 31-35: C A C D B 36-40: C D D C B填空题1、DBXEAYFZC2、单元3、过程4、逻辑设计5、分量6、a=-b7、a=%d\nb=%d\n8、19、9 9 11 10、3 11、15 12、i-- 13、n 14、func() 15、m++ 2009年9月计算机二级考试C语言真题答案一、选择题: 1-10:CBDABACBCD 11-20:DCABBDCAAB21-30:DCACDBACCB 31-40:DAACABADCC二、填空题:(1)14(2)逻辑条件(3)需求分析(4)多对多(5) 身份证号(6) 5 (7) 1(8) 1 0 (9) 5 (10) 0 1 123 (11) 3025 (12) &p.ID (13) How are you? How(14) 16 (15) 1 3 62010年3月计算机二级考试C语言真题答案一、选择题01~05:ADBAC 06~10 :BADCA 11~15 :BADCC 16~20:DABCA21~25 :DDABD 26~30:ADBCC 31~35:ACBCC 36~40 :BADAC二、填空题:1、A、B、C、D、E、F、5、4、3、2、1 2、153、EDBGHFCA4、程序5、课号6、x%3==0&&x%7==07、48、79、12356910、135 11、101418 12、fabcde 13、x%10 14、‘\0'或者填写0 15、p2010年9月计算机二级考试C语言真题答案一:选择题:1-5:BCDAA 6-10 DDCCA 11-15:CBBBD 16-20: DAACB21-25:BCBDC 26-30: CBDDA 31-35: ACBCD 36-40:BACBD填空题:01):1DCBA2345 02):1 03):25 04):结构化05):物理设计06):2008 07):15 08):非0 09):1 4 13 40 10):i 11):2 12):a[row][col] 13):3 14):*s 15):FILE2011年3月计算机二级考试C语言真题答案一、选择题:1-5 ABDDB 6-10 ACDCB11-15 ADAAA 16-20 ADCAD21-25 BDBCD 26-30 CDCCC31-35 BBBDB 36-40 CDDCB二、填空题:【1】有序【2】DEBFCA 【3】单元【4】主键【5】D 【6】3【7】1217 【8】09 【9】4【10】20 0 【11】i-1【12】double avg(double,double);或double avg(double a,double b); 【13】13715 【14】emoclew 【15】123456。
2007年上海市高等学校计算机等级考试试卷二级(C程序设计)(本试卷答卷时间为120分钟)试题一(28分,每小题4分)解答下列各小题,把解答写在答卷纸的对应栏内。
⑴设有int x=3,y=2,z=1;分别写出下面表达式求值后变量x和y的值。
(注:对每小题求值时,变量的初值都为x=3,y=2,z=1)① y=(y=3,2*x++) ② (x=5)||(y=6*x)⑵写出下列程序的输出结果。
#include <stdio.h>void main(){ int n; float x=2.7181;n=100*x;x=(int)(x*100+0.5)/100.0;printf(“n=%d\n”,n);printf(“x=%f\n”,x);}⑶写出变量x的绝对值小于20为真的C语言表达式。
⑷描述学生信息的结构变量定义为:struct student{ int no; /* 学号*/char *name; /* 姓名*/char sex; /* 性别*/struct /* 出生年月*/{ int year;int month;int day;} birthdate;};struct student s;写出能完成结构体变量s的部分成员赋值,使姓名为”Li_ping”,出生年份为1985的C语句。
⑸在C语言中,函数random (int num) 的功能是生成一个0到(num-1)之间的随机整数,经过下列赋值语句的执行后,m和x的取值范围是多少?int m;float x;m=50 + random(50);x= m + random(100)/100.0;⑹ 用文字描述以下程序所完成的功能: #include <stdio.h> void main(){ FILE *in, *out; char ch;in=fopen(“a.c ”,”r ”); out=fopen(“b.c ”,”w ”);while(!eof(in)) /* 函数ferof ()用来检测是否到达文件尾 *//* 如到达文件尾返回非0,否则返回0 */{ ch=fgetc(in); Fputc(ch); }fclose(in); fclose(out); }⑺ 假定建立了以下链表结构,如下图所示:指针p 、q 分别指向如图所示的结点,写出将q 所指结点从链表中删除并释放该结点的C 程序段。
2007年4月全国计算机等级考试笔试试卷二级公共基础知识和C 语言程序设计(考试时间120 分钟,满分100 分)一、选择题((1)-(10)每小题2 分,(11)-(50)每小题1 分,共60 分)(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)DYBEAFCZX B)YDEBFZXCAC)ABDYECFXZ D)ABCDEFXYZ(7)某二叉树中有n 个度为2 的结点,则该二叉树中的叶子结点数为()。
A)n+1 B)n-1C)2n D)n/2(8)在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是()。
A)并B)交C)投影D)笛卡儿乘积(9)在E-R 图中,用来表示实体之间联系的图形是()。
A)矩形B)椭圆形C)菱形D)平行四边形(10)下列叙述中错误的是()。
A)在数据库系统中,数据的物理结构必须与逻辑结构一致B)数据库技术的根本目标是要解决数据的共享问题C)数据库设计是指在已有数据库管理系统的基础上建立数据库D)数据库系统需要操作系统的支持(11)在算法中,对需要执行的每一步操作,必须给出清楚、严格的规定。
2007年9月全国计算机等级考试二级C语言笔试试题(附答案)本卷共分为3大题66小题,作答时间为120分钟,总分100 分,60 分及格。
选择题一:(1)-(10)每题2分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(n+1)/2B.nlog2nC.n(n-1)/2D.n/28 一颗二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为()。
A.219B.221C.229D.2319 下列叙述中正确的是()。
A.数据库系统是一个独立的系统,不需要操作系统的支持B.数据库技术的根本目标是要解决数据的共享问题C.数据库管理系统就是数据库系统D.以上三种说法都不对10 下列叙述中正确的是()。
A.为了建立一个关系,首先要构造数据的逻辑关系B.表示关系的二维表中各元组的每一个分量还可以分成若干数据项C.一个关系的属性名表称为关系模式D.一个关系可以包括多个二维表选择题二:(11)-(50)每题1分11 C语言源程序名的后缀是()。
全国计算机等级考试二级C语言真题2007年4月(总分:88.00,做题时间:90分钟)一、{{B}}选择题{{/B}}(总题数:50,分数:50.00)1.下列叙述中正确的是(分数:1.00)A.算法的效率只与问题的规模有关,而与数据的存储结构无关B.算法的时间复杂度是指执行算法所需要的计算工作量√C.数据的逻辑结构与存储结构是一一对应的D.算法的时间复杂度与空间复杂度一定相关解析:[解析] 根据时间复杂度和空间复杂度的定义可知,算法的时间复杂度与空间复杂度并不相关。
数据的逻辑结构就是数据元素之间的逻辑关系,它是从逻辑上描述数据元素之间关系的,是独立于计算机中的,数据的存储结构是研究数据元素和数据元素之间的关系如何在计算机中表示,它们并非一一对应。
算法的执行效率不仅与问题的规模有关,还与数据的存储结构有关。
2.在结构化程序设计中,模块划分的原则是(分数:1.00)A.各模块应包括尽量多的功能B.各模块的规模应尽量大C.各模块之间的联系应尽量紧密D.模块内具有高内聚度、模块间具有低耦合度√解析:[解析] 在结构化程序设计中,一般较优秀的软件设计尽量做到高内聚、低耦合,这样有利于提高软件模块的独立性,这也是模块划分的原则。
3.下列叙述中正确的是(分数:1.00)A.软件测试的主要目的是发现程序中的错误√B.软件测试的主要目的是确定程序中错误的位置C.为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作D.软件测试是证明软件没有错误解析:[解析] 软件测试是为了发现错误而执行程序的过程,且为了达到好的测试效果,应该由独立的第三方来构造测试,程序员应尽量避免检查自己的程序。
4.下面选项中不属于面向对象程序设计特征的是(分数:1.00)A.继承性B.多态性C.类比性√D.封装性解析:[解析] 面向对象程序设计的3个主要特征是:封装性、继承性和多态性。
5.下列对队列的叙述正确的是(分数:1.00)A.队列属于非线性表B.队列按“先进后出”原则组织数据C.队列在队尾删除数据D.队列按“先进先出”原则组织数据√解析:[解析] 队列是一种操作受限的线性表。
机密★启用前2007 年9 月全国计算机等级考试二级笔试试卷C++语言程序设计61注意事项一、考生应严格遵守考场规则,得到监考人员指令后方可作答。
二、考生拿到试卷后应首先将自己的姓名、准考证号等内容涂写在答题卡的相应位置上。
三、选择题答案必须用铅笔填涂在答题卡的相应位置上,填空题的答案必须用蓝、黑色钢笔或圆珠笔写在答题卡的相应位置上,答案写在试卷上无效。
四、注意字迹清楚,保持卷面整洁。
五、考试结束将试卷和答题卡放在桌上,不得带走。
待监考人员收毕清点后,方可离场。
* * * 版权所有,任何单位或个人不得保留、复制和出版,违者必究* * *教育部考试中心二00 七年七月制全国计算机等级考试二级C++语言程序设计2007 年9 月笔试试卷(考试时间90 分钟,满分100 分)一、选择题(每小题2分,共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)数据的逻辑结构与存储结构必定是一一对应的B)由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构C)程序设计语言中的数据一般是顺序存储结构,因此,利用数组只能处理线性结构D)以上三种说法都不对(7)冒泡排序在最坏情况下的比较次数是A)n(n+1)/2 B)n log2nC)n(n-1)/2 D)n/2(8)一棵二叉树中共有70 个叶子结点与80 个度为1 的结点,则该二叉树中的总结点数为A)219 B)221C)229 D)231(9)下列叙述中正确的是A)数据库系统是一个独立的系统,不需要操作系统的支持B)数据库技术的根本目标是要解决数据的共享问题C)数据库管理系统就是数据库系统D)以上三种说法都不对(10)下列叙述中正确的是A)为了建立一个关系,首先要构造数据的逻辑关系B)表示关系的二维表中各元组的每一个分量还可以分成若干数据项C)一个关系的属性名表称为关系模式D)一个关系可以包括多个二维表(11)在函数中,可以用auto、extern、register 和static 这四个关键字中的一个来说明变量的存储类型,如果不说明存储类型,则默认的存储类型是A)auto B)externC)register D)static(12)对于一个类定义,下列叙述中错误的是A)如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数B)如果没有定义缺省的构造函数,编译器将一定生成一个缺省的构造函数C)如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数D)如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数(13)如果派生类以protected 方式继承基类,则原基类的protected 成员和public 成员在派生类中的访问属性分别是A)public 和public B)public 和protectedC)protected 和public D)protected 和protected(14)下列运算符函数中肯定不属于类FunNumber 的成员函数的是A)int operator-(FunNumber); B)FunNumber operator-();C)FunNumber operator-(int); D)int operator-(FunNumber,FunNumber);(15)C++中的模板包括A)对象模板和函数模板B)对象模板和类模板C)函数模板和类模板D)变量模板和对象模板(16)如果利用C++流进行输入输出,下面的叙述中正确的是A)只能借助于流对象进行输入输出B)只能进行格式化输入输出C)只能借助于cin 和cout 进行输入输出D)只能使用运算符>>和<<进行输入输出(17)下列符号中不属于C++关键字的是A)friend B)namespaceC)continue D)byte(18)下列各组类型声明符中,含义相同的一组是A)unsigned long int 和long B)signed short int 和shortC)unsigned short 和short D)short int 和int(19)必须用一对大括号括起来的程序段是A)switch 语句中的case 标号语句B)if 语句的分支C)循环语句的循环体D)函数的函数体(20)语句int *p=&k;定义了指针p,与这个语句等效的语句序列是A)int *p;p=&k; B)int *p;p=k;C)int *p;*p=&k; D)int *p;*p=k(21)关于函数重载,下列叙述中错误的是A)重载函数的函数名必须相同B)重载函数必须在参数个数或类型上有所不同C)重载函数的返回值类型必须相同D)重载函数的函数体可以有所不同(22)有如下头文件:int fl();static int f2();class MA{public:int f3();static int f4();};在所描述的函数中,具有隐含的this 指针的是A)f1 B)f2C)f3 D)f4(23)派生类的成员函数不能访问基类的A)公有成员和保护成员B)公有成员C)私有成员D)保护成员(24)下列关于运算符重载的描述中,正确的是A)运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符B)一元运算符只能作为成员函数重载C)二元运算符重载为非成员函数时,参数表中有一个参数D)C++中可以重载所有的运算符(25)下列关于类模板的模板参数的叙述中,错误的是A)模板参数可以作为数据成员的类型B)模板参数可以作为成员函数的返回类型C)模板参数可以作为成员函数的参数类型D)模板参数不能作为成员函数的局部变量的类型(26)已知一程序运行后执行的第一个输出操作是cout<<setw(10)<<setfill('*')<<1234;则此操作的输出结果是A)1234 B)******1234C)**********1234 D)1234******(27)有如下程序:#include<iostream>using namespace std;class MyClass{public:MyClass(){++count;}~MyClass(){--count;}static int getCount(){return count;}private:static int count;};int MyClass::count=0;int main(){MyClass obj;cout<<obj.getCount();MyClass*ptr=new MyClass;cout<<MyClass::getCount();delete ptr;cout<<MyClass::getCount();return 0;}程序的输出结果是A)121 B)232C)221 D)122(28)有如下程序:#include<iostream>using namespace std;class MyClass{public:MyClass(int x):val(x) {}void Print() const {cout<<"const:val="<<val<<'\t';} void Print(){cout<<"val="<<val<<'t';}private:int val;};int main(){const MyClass obj1(10);MyClass obj2(20);obj1.Print();obj2.Print();return 0;}程序的输出结果是A)val=10 const:val=20 B)const:val=10 const:val=20C)const:val=10 val=20 D)val=10 val=20(29)有如下程序:#include<iostream>using namespace std;class Part{public:Part(int x=0):val(x) {cout<<val;}~Part(){cout<<val;}private:int val;};class Whole{public:Whole(int x ,int y, int z=0):p2(x),p1(y),val(z){cout<<val;} ~Whole(){cout<<val;}private:Part p1,p2;int val;};int main(){Whole obj(1,2,3);return 0;}程序的输出结果是A)123321 B)213312C)213 D)123123(30)有如下程序:#include<iostream>using namespace std;class Base{public:Base(int x=0){cout<<x;}};class Derived:public Base{public:Derived(int x=0){cout<<x;}private:Base val;};int main(){Derived d(1);return 0;}程序的输出结果是A)0 B)1C)01 D)001(31)若有如下类定义:class B{void fun1(){}protected:double varl;public:void fun2(){}};class D:public B{protected:void fun3(){}};已知obj 是类D 的对象,下列句中不违反类成员访问控制权限的是A)obj.funl(); B)obj.varl;C)obj.fun2(); D)obj.fun3();(32)有如下程序;#include<iostream>using namespace std;class Base{public:void output(){cout<<1;}virtual void Print(){cout<<'B';}};class Derived:public Base{public:void output(){cout<<2;}void Print(){cout<<'D';}};int main(){Base *ptr=new Derived;ptr->output();ptr->Print();delete ptr;return 0;}程序的输出结果是A)1B B)1DC)2B D)2D(33)下列是重载乘法运算符的函数原型声明,其中错误的是A)MyClass operator*(double,double); B)MyClass operator*(double,MyClass); C)MyClass operator*(MyClass,double); D)MyClass operator*(MyClass,MyClass); (34)如下函数的作用是以双倍行距输出文件:void double_space(ifstream&f,ofstream&t){char c;whilc( ){;if(c=='\n')t.put(c);}}画线处缺失的部分是A)f.get(c)与t.put(c) B)f.put(c)与t.get(c)C)t.get(c)与f.put(c) D)t.put(c)与f.get(c)(35)有如下程序;#include<iostream>using namespace std;class B{public:virtual void show(){cout<<"B";}};class D:public B{public:void show() {cout<<"D";}};void fun1(B *ptr){ptr->show();}void fun2(B &ref){ref.show();}void fun3(B b){b.show();}int main(){B b,*p=new D;D d;fun1(p);fun2(b);fun3(d);return 0;}程序的输出结果是A)BBB B)BBDC)DBB D)DBD二、填空题(每空2分,共30分)(1)软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重要的是___________。
机密★启用前2007年9月全国计算机等级考试二级笔试试卷C语言程序设计24注意事项一、考生应严格遵守考场规则,得到监考人员指令后方可作答。
二、考生拿到试卷后应首先将自己的姓名、准考证号等内容涂写在答题卡的相应位置上。
三、选择题答案必须用铅笔填涂在答题卡的相应位置上,填空题的答案必须用蓝、黑色钢笔或圆珠笔写在答题卡的相应位置上,答案写在试卷上无效。
四、注意字迹清楚,保持卷面整洁。
五、考试结束将试卷和答题卡放在桌上,不得带走。
待监考人员收毕清点后,方可离场。
* * * 版权所有,任何单位或个人不得保留、复制和出版,违者必究* * *教育部考试中心二00七年七月制2007年9月全国计算机等级考试笔试试卷二级公共基础知识和C语言程序设计(考试时间120分钟,满分100分)一、选择题((1)-(10)每小题2分,(11)-(50)每小题1分,共60分)(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(n+1)/2 B)n log2n C)n(n-1)/2 D)n/2(8)一棵二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为A)219 B)221 C)229 D)231(9)下列叙述中正确的是()。
2007年上海市高等学校计算机等级考试(一级)基础题(A卷)一、选择题1、计算机网络中实现互联的计算机本身是可以进行_____工作的。
A)独立B)关机C)互相制约D)串行2、__________是流媒体技术的基础。
A)数据压缩与传输B)数据运算与压缩C)数据存储与运算D)数据传输与存储 3、在Windows的“录音机”窗口中,要提高放音音量,应用__________菜单中的命令。
A)文件B)编辑C)效果D)选项4、在因特网域名中,com通常表示__________。
A)商业组织B)军事部门C)教育机构D)政府部门5、在Word的文件存盘操作中,“另存为”是指__________。
A)不退出编辑,只能以老文件名保存在原来位置B)退出编辑,但不退出word,并只能以老文件名保存在原来位置C)退出编辑,退出word,并只能以老文件名保存在原来位置D)不退出编辑,可以以老文件名保存在原来位置,也可以改变文件名或保存在其他位置6、目前,一般的IP地址的二进制位数为__________位。
A)64 B)128 C)32 D)487、以下台式计算机的扩展总线中,目前主要使用_________总线。
A)PCI B)MAC C)ISA D)EISA8、在因特网域名中,edu 通常表示_______。
A)军事部门B)教育机构C)政府部门D)商业组织9、打印机的传输线要和主机的打印端口相连,最常用的主机并行端口是________。
A)LPT2 B)LPT1 C)COM1 D)COM210、在Excel中,如果用$D7来引用工作表D列第7行的单元格,称为对单元格的_________。
A)相对引用B)绝对引用C)混合引用D)交叉引用11、__________是利用有线电视网进行数据传输的宽带接入设备。
A)ADSL Modem B)56K Modem C)Cable Modem D)ISDN Modem 12、对于声音的描述,以下正确的是_________。
2007年上海市高等学校计算机等级考试试卷二级(C语言程序设计)(本试卷答卷时间120分钟)试题一(28 分,每小题4分)解答下列各小题,把解答写在答卷纸的对应栏里.设有int x=3,y=2,z=1; 分别写出下列表达式求值后的变量x和y的值. (注:对每小题求值时,变量的初值都为x=3,y=2,z=1)①y=(y=3,2*x++)②(x=5)||(y=6*x)写出下列程序的输出结果.#include <stdio.h>void main(){ int n; float x=2.7181;n=100*x;x=(int)(x*100+0.5)/100.0;printf("n=%d\n",n);printf("x=%f\n",x);}(3)写出变量x的绝对值小于20为真的c语言表达式(4)描述学生信息的结构变量定义为:struct student{ int no;char *name;char sex;struct /*出生年月日*/{ int year;int month;int day;} birthday;}struct student s;写出能完成结构体变量s的部分成员赋值,使姓名为"Li-ping",出生年份为1985的c语句s. birthday. name=” Li-ping”;s. birthday. year=1985;(5)在c语言中,函数random (int num)的功能是生成一个0到(num-1)之间的随机整数,经过下列赋值语句的执行后, m和x的取值范围是多少int m;float x;m=50+random(50);x=m+random(100)/100.0;M: 50 99X : 50 99.99(6) 用文字描述以下程序所完成的功能;#includevoid main(){FILE *in, *out ;char ch;in=fopen("a.c", "r ");out=fopen("b.c", "w");while(!feof(in)) /*函数feof()用来检测是否到达文件尾*//*如到达文件尾则返回非0,否则返回0 */{ch=fgetc(in);fputc(ch) ;}fclose(in);fclose(out);}答:将a.c 文件拷贝到 b.c文件(7) 假定建立了以下链表结构,如下图所示:指针p ,q分别指向如图所示的结点,写出将q所指结点从链表中删除并释放该结点的c程序段.data nexthead……..p q …试题二(12分,每小题6)阅读下列程序,把程序的输出结果写在答卷纸的对应栏里.(1)【程序2.1】#includevoid main(){int x=0,y=0,z;while(y<6) x+=++y;printf("output1:%d%d\n",x,y);for(y=1;y<6;y++) x=y;printf("output2:%d%d\n",x,y);for(y=1;y<6;){x=y++;}printf("output3:%d%d%d\n",x,y,z); }(2) 【程序2.2】#includeint f(int b[ ],int n){int i, r;r=1;for(i=0;ireturn r;}void main(){int x, a[ ]={1,2,3,4,5,6,7,8,9}printf("x=%d\n", x);x=f(a+1,3);printf("x=%d\n",x);}试题三(12分,每小题6分)改错. 下列每个程序都有三个错误,按题中的功能要求,纠正错误,并以"将#XX"行改为"YYYY"的形式进行解答,把解答写在答卷纸的对应栏内.代码左边的#01,#02………是附加的行号.【程序3.3】下面程序的功能是统计一个字符串中各个字母出现的次数,该字符串从键盘输入,统计时不分大小写.对数字,空格及其他字符不予统计.最后在屏幕上显示统计结果.例如字符串:"abcdefgh23 ABCDEF abc"的统计结果与输出格式为:a b c d e f g h j k l m n o p q r s t u v w x y z出现的次数为:3 3 3 2 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0#01 #include#02 #include#03 void main()#04 {#05 int i , a[26];#06 char ch, str[80],*p=str;#07 gets(&str); /*获取字符串*/#08 for(i=0;i='A'&&ch<='Z' ch+'a'-'A' : ch; /*大小写字符转换*/#12 if ('a'<=ch<='z') a[ch-'a']++;#13 }#14 for(i=0; i<=26;i++) printf("%2c",'a'+1); /*输出26个字母*/#15 printf("出现的次数为:\n");#16 for(i=0 ;i<26;i++) printf("%2d",a[i]); /*输出各字母出现次数*/#17 printf("\n");#18 }【程序3.2】以下程序求e=1+1/1!+1/2!+……….+1/n!+…..的值, 直到最后一项的值不超过10的-6次方为止.#01 #include#02 void main()#03 { double e, a; /* a为通项,e为和*/#04 int i=1;#05 e=1.0;#06 a=0.0;#07 do {#08 a*=i;#09 e+=a;#11 } while (a<=1e-6); /* 计算到最后一项的值小于等于10的-6次方*/#12 printf("%f/n",e);#13 }试题四(18分,每小题9分)按指定的要求编写程序段,把解答写在答卷纸的对应栏内.编写函数f(int n)用来统计正整数n 的位数(例如, n=123时函数返回3)写出一个函数int lower_ave(float s[ ], int n, float *aver),它能从存放学生分数的一维数组s中求出平均分和低于平均分的学生人数;其中数组s [ ] 存放学生分数,参数n为学生人数,参数aver是指向平均分的指针变量.(要求平均分通过指针参数传递,人数通过函数值返回)试题五(15 分, 每个空格3分)【问题描述】以下程序输入10行字符串,要求按字典顺序从小到大排序.【程序5】#include#define N 10int biggerthan(char *str1,char *str2){ for ( ; *str1|| *str2; __(1)___){ if (*str1>*str2)return ___(2)___;else if (*str1<*str2)return 0;}return 0; /* 两个字符串相等*/}void main(){ char ls[N][100];char *ps[N], *t;int i, j;for (i=0;i<N;I++){ gets( ls[i]);ps[i]=ls[i];}for(i=0;i<N-1;I++)for(j=0;j<N-I-1;J++)if(biggerthan(____(3)_____)){ t=ps[j];____(4)_____;____(5)_____;}for(i=0; iprintf("%s\n",ps[i]);}试题六(15分,每个空格3分)【问题描述】下列程序的功能是:计算机给出10个不大于31的正整数让人猜,并根据猜中的情况统计总得分后输出.具体规则如下:(1)计算机每给出一个要猜的数最多允许猜5次,第一次猜对得10分,第二次猜对得8分,第三次猜对得6分,第四次猜对得4分,最后一次猜对得2分,否则不得分.(2)若试猜的数太小,计算机给出提示"too small";若试猜的数太大,计算机给出提示"too large";若猜对这个数,计算机给出提示"right!"并给出下一个数继续让人猜;若这个数已经猜了5次都猜错,计算机给出提示"out of time!"也给出下一个数继续让人猜.直到猜完10个数.下面是猜某个数的过程,有下划线的部分是试猜的数(假设机器产生的随机数是9)请输入你的猜测y=_16_too large !请输入你的猜测y=_4_too small!请输入你的猜测y=_9_right! (本例是第三次猜对,得6分)#include#includevoid main(){ int i , c, x, y, score, right;_____(1)_____; /* 变量赋初值*/for(i=1;i<=10;i++){ x=random(32); /* 随机产生一个不大于31的要猜的数*/c=0;do{c++;printf("\n 请输入你的猜测y=");scanf("%d",&y):right=(y==x); /* 猜对时right 为1,否则为0 */if(right==1)printf("_____(2)_____");elseprintf("%s\n", (_____(3)____) "too small !" :"too large!");}while(right==0&&____(4)_____);if (right)score+=(____(5)____); /* 统计成绩*/elseprintf("out of time !\n");}printf("\n total score:%d\n",score);}843。