《2022年计算机二C语言9月试题 .pdf》由会员分享,可在线阅读,更多相关《2022年计算机二C语言9月试题 .pdf(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 / 22 9 月全国计算机等级考试二级笔试试卷C 语言程序设计-(10每题 2 分,(11-(50每题 1 分.共 60分下列各题 A、B、C、D四个选项中,只有一个是正确的,请将正确选项涂写在答题卡上,答在试卷上不得分。1)软件是指A)程序 B)程序和文档C)算法加数据结构 D)程序、数据和相关文档的集合2)软件调试的目的是A)发现错误 B)改正错误C)改善软件的性能 D)验证软件的正确性3)在面向对象方法中,实现信息隐蔽是依靠A)对象的继承 B)对象的多态C)对象的封装 D)对象的分类4)下列叙述中,不符合良好程序设计风格的是A)程序的效率第一,清晰第二 B)程序的可读性好C)程序中有
2、必要的注释 D)输入数据前要有提示信息5)下列叙述中正确的是A)程序执行的效率与数据的存储结构密切相关B)程序执行的效率只取决于程序的控制结构C)程序执行的效率只取决于所处理的数据量精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 22 页2 / 22 D)以上三种说法都不对6)下列叙述中正确的是A)数据的逻辑结构与存储结构必定是一一对应的B)由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构C)程序设计语言中的数组一般是顺序存储结构,因此,利用数组只能处理线线结构D)以上三种说法都不对7)冒泡排序在最坏情况下的比较
3、次数是A)nn+1)/2 B)nlog2n C)nn-1)/2 D)n/28)一棵二叉树中共有70个叶子结点与 80 个度为 1 的结点,则该二叉树中的总结点数为A)219 B)221 C)229 D)2319)下列叙述中正确的是A)数据库系统是一个独立的系统,不需要操作系统的支持B)数据库技术的根本目标是要解决数据的共享问题C)数据库管理系统就是数据库系统D)以上三种说法都不对10)下列叙述中正确的是A)为了建立一个关系,首先要构造数据的逻辑关系B)表示关系的二维表中各元组的每一个分量还可以分成若干数据项精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - -
4、-第 2 页,共 22 页3 / 22 C)一个关系的属性名表称为关系模式D)一个关系可以包括多个二维表.C C.obj D.cp以下选项中,合法的一组C 语言数值常量是A028 B12. C.177 D0 x8A . 5e-3 OXa23 4c1.5 10,000 -0 xf 4.5e0 Oabc 3.e514)以下叙述中正确的是A)C语言程序将从源程序中第一个函数开始执行B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C)C语言规定必须用 main 作为主函数名,程序将从此开始执行,在此结束D)main可作为用户标识符,用以命名任意一个函数作为主函数。 Bscanf(%
5、d%d%d,a,b,c 。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 22 页4 / 22 Cscanf(%d,p。 Dscanf(%d,&p。(16以下关于 long、int 和 short类型数据占用内存大小的叙述中正确的是A均占 4 个字节 B)根据数据的大小来决定所占内存的字节数C)由用户自己定义 D)由 C语言编译系统决定 (17若变量均已正确定义并赋值,以下合法的C 语言赋值语句是A)x=y=5。 Bx=n%2.5。 Cx+n=I。 Dx=5=4+1。 。当执行上述程序段,从键盘上输入55566 7777abc后,y 的
6、值为A)55566.0 B)566.0 C)7777.0 D)566777.0 。while(i+ 。printf(%dn,i其输出结果是A)0,0 B)0,1 C)1,1 D)程序进入无限循环精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 22 页5 / 22 (x若程序前面已在命令中包含math.h文件,不能够正确计算上述公式的程序段是 A)if(x=0 y=sqrt(x 。 By=sqrt(xelse y=sqrt(-x。 if(x y=sqrt(-x。Cif(x=0y=sqrt(x 。 Dy=sqrt(x=0?x:-x。 If(
7、xy=sqrt(-x 。(21设有条件表达式: (EXP?i+。j-,则以下表达式中 (EXP完全等价的是 A)EXP= =0) B)EXP!=0) C)EXP= =1) D)有以下程序#includemain(int y=9 。for( 。 y0。y-if(y%3= =0 printf(%d,-y 。程序的运行结果是A)741 B)963 C)852 D)875421精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 22 页6 / 22 isupper(c BA=cA=c&cc&(a-32有以下程序 #include main( int
8、 i,j,m=55 。for(i=1 。ifor(j=3。j m=m%j。printf(%dn,m 。程序的运行结果是A)0 B)1 C)2 D)325)若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是 A)函数的实参和其对应的形参共占同一存储单元B)形参只是形式上的存在,不占用具体存储单元C)同名的实参和形参占同一存储单元D)函数的形参和实参分别占用不同的存储单元 。后,输出结果是精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 22 页7 / 22 A)A,B B)A,68 C )65,66 D)65,6827)以下
9、叙述中错误的是A)改变函数形参的值,不会改变对应实参的值B)函数可以返回地址值C)可以给指针变量赋一个整数作为地址值D)当在程序的开头包含文件stdio.h时,可以给指针变量赋NULLabc COlympicGames D(29设有定义: char p=1, 2, 3,*q=p。 ,以下不能计算出一个char型数据所占字节数的表达式是A)sizeof(p Bsizeof(char C sizeof(*q Dsizeof(p0(30有以下函数 int aaa(char *s char *t=s。while(*t+ 。t-。return(t-s。以下关于 aaa函数的功能叙述正确的是A)求字符串
10、s的长度 B)比较两个串的大小精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 22 页8 / 22 C)将串 s复制到串 t D)求字符串 s所占字节数a13 Ca03 Da14(32有以下程序#includevoid fun(char *p+p。 printf(%sn,*p 。main(char *a=Morning,Afternoon,Evening,Night。fun(a。程序的运行结果是A)Afternoon B)fternoon C)Morning D)orningp0=a。 C p0=&a12 。 Dp1=&a 。(34有以
11、下程序 #include void fun(int *a,int n/*fun 函数的功能是将 a所指数组元素从大到小排序*/ int t,i,j 。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 22 页9 / 22 for(i=0 。ifor(j=i+1 。jif (ai t=ai。ai=aj 。aj=t。main(int c10=1,2,3,4,5,6,7,8,9,0,i 。fun(c+4,6。for (i=0。i printf(%d,ci 。printf(n 。程序运行的结果是A)1,2,3,4,5,6,7,8,9,0, B0,
12、9,8,7,6,5,1,2,3,4,C 0,9,8,7,6,5,4,3,2,1, D1,2,3,4,9,8,7,6,5,0,(35有以下程序 #include int fun(char sint n=0 。while(*s=0 n=10*n+*s- 0。s+。return(n。main(char s10=6, 1, *, 4, *, 9, *, 0, *。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 22 页10 / 22 printf(%dn,fun(s 。程序运行的结果是A)9 B)61490 C)61 D)5scanf( Bge
13、tchar( Cgets( Dgetc(37以下关于字符串的叙述中正确的是A)C语言中有字符串类型的常量和变量B)两个字符串中的字符个数相同时才能进行字符串大小的比较C)可以用关系运算符对字符串的大小进行比较D)空串一定比空格打头的字符串小* 第 38 题到 41 题目暂缺 *(42有以下程序#include void fun(int n,int *p int f1,f2。if(n=1|n=2 *p=1 。else精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 10 页,共 22 页11 / 22 fun(n-1,&f1。 fun(n-2,&f2。
14、 *p=f1+f2 。main( int s 。 fun(3,&s 。 printf(%dn,s。程序的运行结果是A2 B3 C4 D5(43若程序中有宏定义行 :#define N 100 则以下叙述中正确的是A宏定义行中定义了标识符N的值为整数 100B在编译程序对 C源程序进行预处理时用100 替换标识符 NC 对 C源程序进行编译时用100替换标识符 ND 在运行时用 100 替换标识符 N(44以下关于 typedef 的叙述错误的是A用 typedef 可以增加新类型Btypedef 只是将已存在的类型用一个新的名字来代表C 用 typedef 可以为各种类型说明一个新名, 但不能
15、用来为变量说明一个新名精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 11 页,共 22 页12 / 22 D 用 typedef 为类型说明一个新名 , 通常可以增加程序的可读性(45有以下程序#includestruct tt int x。struct tt *y。 *p 。struct tt a4=20,a+1,15,a+2,30,a+3,17,a。main( int i。 p=a。 for(i=1。i printf(%d,p-x。 p=p-y。程序的运行结果是A20,30, B30,17 C15,30, D20,15,(46有以下程序#in
16、clude #include typedef struct char name9 。char sex 。float score2。 STU。STU f(STU a精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 22 页13 / 22 STU b=Zhao,m,85.0,90.0。 int i 。strcpy(a.name,b.name 。a. sex=b.sex 。for(i=0。i a.scorei=b.scorei。return a 。main(STU c=Qian,f,95.0,92.0,d。d=f(c 。printf(%s,%
17、c,%2.0f,%2.0fn,d.name,d.sex,d.score0,d.score1 。程序的运行结果是AQian,f,95,92 BQian,m,85,90 CZhao,m,85,90 DZhao,f,95,92(47设有以下定义union data int d1 。 float d2 。 demo。则下面叙述中错误的是A变量 demo与成员 d2 所占的内存字节数相同B变量 demo中各成员的地址相同精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 22 页14 / 22 C 变量 demo和各成员的地址相同D 若给 demo
18、.d1赋 99后, demo.d2 中的值是 99.0(48有以下程序#include main( int a=1,b=2,c=3,x。 x=(ab&c 。 printf(%dn,x。程序的运行结果是A0 B1 C2 D3(49读取二进制文件的函数调用形式为:fread(buffer,size,count,fp。 , 其中 buffer代表的是A一个文件指针 ,指向待读取的文件B一个整型变量 ,代表待读取的数据的字节数C 一个内存块的首地址 , 代表读入数据存放的地址D 一个内存块的字节数(50有以下程序#include main(FILE *fp 。 int a10=1,2,3,0,0,i。
19、fp=fopen(d2.dat,wb。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 22 页15 / 22 fwrite(a,sizeof(int,5,fp。fwrite(a,sizeof(int,5,fp。fclose(fp。fp=fopen(d2.dat,rb。fread(a,sizeof(int,10,fp。fclose(fp。for(i=0。i printf(%d,ai。程序的运行结果是A1,2,3,0,0,0,0,0,0,0, B1,2,3,1,2,3,0,0,0,0,C123,0,0,0,0,123,0,0,0,0, D
20、1,2,3,0,0,1,2,3,0,0,二、填空题 (每空 2 分, 共 40 分请将每一个空的正确答案写在答题卡1 至20 序号的横线上 ,答在试卷上不得分 .(1软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重要的_1_.(2在两种基本测试方法中 , _2_测试的原则之一是保证所测模块中每一个独立路径至少要执行一次.(3线性表的存储结构主要分为顺序存储结构和链式存储结构. 队列是一种特殊的线性表, 循环队列是队列的 _3_ 存储结构 .精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 22 页16
21、 / 22 (4对下列二叉树进行中序遍历的结果为_4_(5在 E-R图中距形表示 _5_(6执行以下程序时输入1234567, 则输出结果是_6_.#include main( int a=1,b 。scanf(%2d%2d,&a&b。printf(%d %dn,a,b 。(7以下程序的功能是 : 输出 a、b、c 三个变量中的最小值 . 请填空。#includemain( int a,b,c,t1,t2。scanf(%d%d%d,&a,&b,&c。t1=ab? _7_ 。t2=c。(8以下程序的输出结果是 _9_.#include main( int n=12345,d 。while(n!=
22、0 d=n%10 。 printf(%d,d。n/=10。(9有以下程序段 , 且变量已正确定义和赋值for(s=1.0,k=1。k s=s+1.0/(k*(k+1。printf(s=%fnn,s。请填空 , 使下面程序段的功能为完全相同s=1.0。k=1。while(_10_ s=s+1.0/(k*(k+1。 _11_ 。printf(s=%fnn,s。(10以下程序的输出结果是 _12_.#include main( int i 。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 17 页,共 22 页18 / 22 for(i=a。i prin
23、tf(%c,i-a+A。 printf(n。(11以下程序的输出结果是 _13_.#include #include char *fun(char *t char *p=t 。 return(p+strlen(t/2。main( char *str=abcdefgh。 str=fun(str。 puts(str。(12以下程序中函数 f 的功能是在数组 x 的 n 个数( 假定 n 个数互不相同中找出最大最小数 , 将其中最小的数与第一个数对换,把最大的数与最后一个数对换 . 请填空.#include viod f(int x,int n int p0,p1,i,j,t,m。精选学习资料 -
24、- - - - - - - - 名师归纳总结 - - - - - - -第 18 页,共 22 页19 / 22 i=j=x0。 p0=p1=0。 for(m=0 。m if(xmi i=xm。 p0=m。 else if(xm j=xm。 p1=m。t=xp0 。 xp0=xn-1。 xn-1=t。t=xp1 。xp1= _14_。 _15_=t 。main( int a10,u。 for(u=0。u scanf(%d,&au。f(a,10 。for(u=0 。u printf(%d,au。printf(n。(13以下程序统计从终端输入的字符中大写字母的个数,num0 中统计字母 A的个数
25、,num1 中统计字母 B的个数, 其它依次类推 . 用#号结束输入 , 请填空 .#include #include main( int num26=0,i。 char c 。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 19 页,共 22 页20 / 22 while(_16_!=# if(isupper(c numc- A+= _17_ 。 for(i=0。i Printf(%c:%dn,i+A,numi。 (14执行以下程序的输出结果是_18_.#include main( int i,n4=1。 for(i=1。i ni=ni-1*2+
26、1 。 printf(%d,ni。 (15 以下程序的输出结果是 _19_.#include #define M 5#define N M+Mmain( int k 。 k=N*N*5。 printf(%dn,k。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 20 页,共 22 页21 / 22 (16函数 main(的功能是 : 在带头结点的单链表中查找数据域中值最小的结点 . 请填空#include struct node int data 。struct node *next 。int min(struct node *first/*指针
27、first为链表头指针 */ strct node *p 。 int m。 p=first-next。 m=p-data 。p=p-next 。 for(。p!=NULL 。p=_20_ if(p-data m=p-data 。 return m。2007 年 9 月全国计算机等级考试二级C语言参考答案一、选择题1-5 DBCAA 6-10 CCABA 11-15 BABCC 16-20 DABBB 21-25 BCBBD 26-30 CCDAA 31-35 BACDC 36-37 CD 42-45 ABAD 46-50 CDDCD 二、填空题1、无歧义性精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 21 页,共 22 页22 / 22 2、白盒测试3、顺序4、ACBDFEHGP 5、实体集6、12 34 7、a:b 8、c:t1 9、54321 10、k 17、1 18、3 7 15 19、55 20、p-next 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 22 页,共 22 页
限制150内