版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2022年福建省莆田市全国计算机等级考试C语言程序设计真题二卷(含答案)学校:________班级:________姓名:________考号:________
一、单选题(20题)1.若变量c为char类型,能正确判断出c为小写字母的表达式是_______。A.′a′<=c<=′z′
B.(c>=′a′)||(c<=′z′)
C.(′a′=C)
D.(c>=′a′)&&(c<=′z′)
2.以下叙述中正确的是()。
A.构成C程序的基本单位是函数
B.可以在一个函数中定义另一个函数
C.main函数必须放在其他函数之前
D.C函数定义的格式是K&R格式
3.下面叙述正确的是______。A.算法的执行效率与数据的存储结构无关
B.算法的空间复杂度是指算法程序中指令(或语句)的条数
C.算法的有穷性是指算法必须能在执行有限个步骤之后终止
D.以上三种描述都不对
4.在结构化程序设计中,模块划分的原则是()。
A.各模块应包括尽量多的功能
B.各模块的规模应尽量大
C.各模块之间的联系应尽量紧密
D.模块内具有高内聚度,模块间具有低耦合度
5.下列有关格式输入函数scanf的叙述中正确的是()
A.输入项可以是C语言中规定的任何变量,并且在任何变量前必须加地址符号“&”
B.可以只有格式控制项,没有地址列表项
C.在输入数据时,必须规定精度。如:scanf("%4.2f",&d);
D.当输入数据时,必须指明变量地址
6.有以下程序:#include<stdio.h>main(){chars[]=“012xy\08s34f4w2”;inti,n=0;for(i=0;s[i]|=0;i++) if(s[i]>=‘0’&&s[i]<=“9”)n++;printf(“%d\n”,n);}程序运行后的输出结果是()。
A.7B.0C.3D.8
7.
有以下程序
#include<stdio.h>
#include<string.h>
typedefstrlIct{charname[9];charsex;floatscore[2];}STU;
STUf(STUa)
{STUb={"Zhao",m,85.0,90.0);inti;
strcpy(aname,b.name);
sex:b.sex;
for(i=0;i<2;i++)a.score[i]=b.score[i];
returna;
}
main
{STUc="Qian",f,95.0,92.0},d;
d=f(c).printf("%s,%c,%2.0f,%2.0f",d.Name,d.sex,d.score[0],d.score[1]);
}
程序的运行结果是()。
A.Qian,f,95,92
B.Qian,m,85,90
C.Zhao,m,85,90
D.Zhao,f,95,92
8.已知字符A的ASCⅡ代码值是65,字符变量c1的直是A,c2的值是D。执行语句printf("%d,%d",c1,c2-2);后,输出结果是()。
A.A,BB.A,68C.65,66D.65,68
9.以下不合法的字符常量是()。
A.‘\\’B.‘\”’C.‘\018’D.‘\xcc’
10.
11.下列关于信息系统的叙述中,错误的是()。
A.广播电视是一种双向的、点到多点的信息交互系自
B.网络聊天是一种双向的,以信息交互为主要目的系统
C.电话是一种双向的、点对点的、以信息交互为主要的的系统
D.雷达是一种以感测和识别为主要目的的系统
12.若有定义“inta=5,b=7;”,则表达式a%-(b%2)运算后,a的值为()。
A.0B.1C.11D.3
13.关于数组和指针,以下说法错误的是()。
A.数组名本身就是一个指针,指向数组内存的起始位置
B.既可以读入数据到数组中,也可以读入数据到未賦初值的指针中
C.可以将指针指向一个同类型的数组
D.指针可以指向同类型的数组中的任意一个元素
14.在数据流图(DFD)中,带有名字的箭头表示
A.模块之间的调用关系B.程序的组成成分C.控制程序的执行顺序D.数据的流向
15.以下程序的运行结果是______。#include<stdio.h>main(){inta[]:{1,2,3,4,5,6,7,8,9,10,11,12):int*p=a+5,*q=NULL:*q=*(p+5):printf("%d%d\n",*p,*q);}
A.运行后报错B.66C.612D.55
16.数据的存储结构是指______。
A.数据所占的存储空间量B.数据的逻辑结构在计算机中的表示C.数据在计算机中的顺序存储方式D.存储在外存中的数据
17.有以下程序intfun(intx,inty){return(x+y);}main{inta=1,b=2,C=3,sum;sum=fun((a++,b++,a+b),c++printf("%d\n",sum);)执行后的输出结果是()。A.6B.7C.8D.9
18.对于哈希函数H(key)=key%13,被称为同义词的关键字是_______
A.35和41B.23和39C.15和44D.25和51
19.若有定义:int*p[3];,则以下叙述中正确的是()。
A.定义了一个基类型为int的指针变量p,该变量具有三个指针
B.定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针
C.定义了一个名为*p的整型数组,该数组含有三个int类型元素
D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素
20.有以下程序:#include<stdio.h>intfun(intX,inty){if(X!=y)return((x+y)/2);elsereturn(x);}main(){inta=4,b=5,c=6;printf("%d/n",fun(2*a,fun(b,c)));}程序运行后的输入结果是()。A.3B.6C.8D.12
二、2.填空题(20题)21.以下程序的定义语句中,x[1]的初值是【】,程序运行后输出的内容是【】。
#include<stdio.h>
main()
{intx[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,161},*p[4],i;
for(i=0;i<4;i++)
{p[i]=&x[2*i+1];
printf("%d",p[i][0]);
}
printf("\n");
}
22.对于软件测试,从是否需要执行被测软件的角度,可以分为静态测试和动态测试。代码检查属于______测试。
23.关系模型的数据操纵即是建立在关系上的数据操纵,一般有______、增加、删除和修改四种操作。
24.下面的程序可列指定字符串中的字符串进行从大到小排序,请将程序填完整。(注:程序采用了冒泡排序算法)
#include<stdio.h>
#include<string.h>
main()
{char*str="ABCDabcd",temp;
intn,i;
n=strlen(str);
while(n->1)
for(i=0;i<n;i++
if(str[i]<str[i+1])
{temp=【】;
str[i]=str[i+1];
【】=temp;
}
printf(【】);
}
25.设有下列的程序段;
charstr[]="Hello";
char*ptr;
ptr=str;
执行上面的程序段后,*(ptr+5)的值为______。
26.下面rotate函数的功能:将n行n列的矩阵A转置为A',请填空。
#defineN4
voidrotate(inta[][N])
{inti,j,t;
for{i=0;i<N;j++}
for{j=0;【】;j++}
{t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;
}
}
27."print("%d\n",strlen("\t\"\023\xABC\n"));”语句的输出结果是______。
28.与结构化需求分析方法相对应的是【】方法。
29.以下isprime函数的功能是判断形参a是否为素数,是素数,函数返回1,
否则返回0。请填空。
intisprime(inta)
{inti;
for(i=2;i<=a/2;i++)
if(a%i==0)【】;
【】;
}
30.软件生命周期包括8个阶段。为使各时期的任务更明确,又可以分为以下3个时期:软件定义期、软件开发期、软件维护期。编码和测试属于【】期。
31.以下程序运行后的输出结果是______。
main()
{
inti,n[]={0,0,0,0,0};
for(i=1;i<=4;i++)
n[i]=n[i-1]*2+1;
printf("%d",n[i]);
}
}
32.模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块。其中【】的作用是模拟被测试模块的下层模块。
33.以下程序的输出结果是【】。
#include<stdio.h>
voidswap(int*a,int*b)
{int*t;
t=a;a=b;b=t;
}
main()
{inti=3,j=5,*p=&i,*q=&j;
swap(p,q);printf("%d%d\n",*p,*q);
}
34.关系模型的数据操作即是建立在关系上的数据操作,一般有【】、增加、删除和修改四种操作。
35.Jackson方法是一种面向【】的结构化方法。
36.树中度为零的结点称为______。
37.以下函数rotate的功能是:将a所指N行N列的二维数组中的最后一行放到b所指二维数组的第0列中,把a所指二维数组中的第0行放到b所指二维数组的最后一列中,b所指二维数组中其他数据不变。
#defineN4
voidrotade(inta[][N],intb[][N])
{intI,j;
for(I=0;I<N;I++)
{b[I][N-1]=【】;【】=a[N-1][I];}}
38.下列程序的运行结果是【】。
main()
{inti;
for(i=1;i<=5;i++)
f(i);}
f(j)
{intj;
staticinta=1000;
autointk=1;
++k;
printf("%d+%d+%d=%d\n",a,k,j,a+k+j);
a+=10;}
39.在面向对象的方法中,______描述的是具有相似属性与操作的一组对象。
40.数据模型按不同应用层次分成3种类型,它们是概念数据模型、【】和物理数据模型。
三、1.选择题(20题)41.下列叙述中正确的是()。A.用E-R图能够表示实体集之间一对一的联系、一对多的联系、多对多的联系
B.用E-R图只能表示实体集之间一对一的联系
C.用E-R图只能表示实体集之间一对多的联系
D.用E-R图表示的概念数据模型只能转换为关系数据模型
42.若有下列说明和语句,则对结构体变量st中成员i的引用方式不正确的是()。Structstu{inti;intname;}st,*p;p=&st;
A.st.iB.*p.iC.(*p).iD.p->i
43.设有程序段:intk=12:while(k=1)k=k-1:则下列描述中正确的是()。
A.while循环执行10次B.循环是无限循环C.循环体语句一次也不执行D.循环体语句执行一次
44.关系数据库的数据及更新操作必须遵循______等完整性规则。
A.实体完整性和参照完整性
B.参照完整性和用户定义的完整性
C.实体完整性和用户定义的完整性
D.实体完整性、参照完整性和用户定义的完整性
45.在软件设计中,不属于过程设计工具的是()。
A.PDL(过程设计语言)B.PAD图C.N-S图D.DFD图
46.以下程序中函数sort的功能是对a所指数组中的数据进行由大到小的排序voidsort(inta[],intn){inti,j,t;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(&aa[3],5);for(i=0;i<10;i++)printf(“%d”,aa[i]);pfintf(“\n”);}程序运行后的输出结果是
A.1,2,3,4,5,6,7,8,9,10
B.10,9,8:7,6,5,4,3,2,1
C.1,2,3,8,7,6,5,4,9,10
D.1,2,10,9,8,7,6,5,4,3
47.若一个外部变量的定义形式为staticintx;,那么,其中static的作用应该是______。
A.将变量存储在静态存储区B.使变量x可以由系统自动初始化C.使x只能在文本文件内引用D.使x的值可以永久保留
48.下列程序的输出结果是
#include"stdio.h"
main()
{inti,a=0,b=0;
for(i=1;i<10;i++)
{if(i%2==0)
{a++;
continue;}
b++;}
printf("a=%d,b=%d",a,b);}
A.a=4,b=4B.a=4,b=5C.a=5,b=4D.a=5,b=5
49.下列数据中,不合法的C语言实型数据是
A.0.123B.123e3C.2.1e3.5D.789.0
50.设变量已正确定义并赋值,以下正确的表达式是()。
A.x=y*5=x+z
B.int(15.8%5.
C.x=y+z+5,++y
D.x=25%5.0
51.以下能正确定义一维数组的选项是
A.inta[5]={0,1,2,3,4,5};
B.chara[]={′0′,′1′,′2′,′3′,′4′,′5′,′\0′};
C.chara={′A′,′B′,′C′};
D.inta[5]="0123";
52.#define能作简单的替代,用宏来替代计算多项式5*x*x+5*x+5的值的函数f,正确的宏定义语句为()。
A.#definef(x)5*x*x+5*x+5
B.#definef5*X*x+5*x+5
C.#definef(a)(5*a*a+5*a+5)
D.#define(5*x*x+5*x+5)f(x)
53.有以下程序
#include<stdio.h>
#include<string.h>
typedefstmct{charname[9];charsex;floatscore[2];}STU;
voidf(STUa)
{STUb={"Zhao",'m',85.0,90.0};inti;
strcpy(,);
a.sex=b.sex;
for(i=0;i<2;i++)a.score[i]=b.score[i];
main()
{STUc={"Qian",'f',95.0,92.0};
f(c);printf("%s,%c,%2.0f,%2.0f\n",,c.sex,c.score[0],c.score[1]);
}
程序的运行结果是
A.Qian,f,95,92B.Qian,m,85,90C.Zhao,f,95,92D.Zhao,m,85,90
54.若希望下列的程序运行后输出25,程序空白处的正确选项是()。
main()
{inti,j=50,a[]={7,4,10,5,8};
for()
j+=a[i];
primf("%d,j-40);
}
A.i=1;i<4;++iB.i=1;i<3;++iC.i=4;i>2;i--D.i=2;i<4;++i
55.下列描述中正确的是()。
A.程序就是软件
B.软件开发不受计算机系统的限制
C.软件既是逻辑实体,又是物理实体
D.软件是程序、数据与相关文档的集合
56.在关系数据库中,用来表示实体之间联系的是
A.树结构B.网结构C.线性表D.二维表
57.在下列定义中的共用体所占内存字节数是()。union{chark[6];struct{intm;floarf;}a;doubled;}b;
A.8B.14C.18D.10
58.线性表的链式存储结构是一种______的存储结构。
A.随机存储B.顺序存储C.索引结构D.散列结构
59.以下四组用户自定义标识符中,全部合法的一组是()。
A._mainencludesin
B.If-maxturbo
C.txtREAL3COM
D.intk_2_001
60.下列函数定义中,会出现编译错误的是______。
A.max(intx,inty,int*z)
B.intmax(intx,y){*z=x>y?x:y;}{intz;z=x>y?X:y;returnz;}
C.max(intx,inty)
D.intmax(intx,inty){intz;{returnx>y?x:y;}z=x>y?x:y;return(z);}
四、选择题(20题)61.有下列程序:
main()
{inti,j,x=0;
for(i=0,i<2;i++)
{x++;
for(j=0;j<=3;j++)
{if(j%2)continue;
x++:
}
x++:
}
printf("x=%d\n"x);
}
程序执行后的输出结果是()。
A.x=4B.x=8C.x=6D.x=12
62.
63.(59)SQL语言又称为()
A.结构化定义语言
B.结构化控制语言
C.结构化查询语言
D.结构化操纵语言
64.有以下程序程序输出()。
A.编译有错B.0,0,0,3C.1,1,2,0D.0,l,2,0
65.
有以下程序
#include<stdio.h>
voidfun(char**p)
{++p;printf("%s",*p);}
main
{char*a[]={"Morning","Afternoon","Evening","Night");
fun(a);
}
程序的运行结果是()。
A.AfternoonB.fternoonC.MorningD.orning
66.
67.有以下程序程序运行后的输出结果是()。
A.123456B.14C.1234D.12
68.
69.某系统总体结构图如下图所示:
该系统总体结构图的深度是()。
A.7B.6C.3D.2
70.
71.以下程序的输出结果是()。main{inta[3][3]=“l,2),{3,4),{5,6)},i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf(”%d\n”,s);}A.18B.19C.20D.21
72.下列函数的功能是()。
A.将a所指字符串赋给b所指空间
B.使指针b指向a所指字符串
C.将a所指字符串和b所指字符串进行比较
D.检查a和b所指字符串中是否有’\0
73.
74.设有定义:charpE]={’1’,‘2’,’3’},*q=p;,以下不能计算出一个char型数据所占字节数的表达式是()。
A.sizeof(p)B.sizeof(char)C.sizeof(*q)D.sizeof(p[0])
75.下列能正确进行字符串赋值的是()。A.A.chars[5]={”ABCI)E”);
B.chars[5]={'A','B','C','D','E'};
C.char*s;s="ABCDE";
D.char*s;printf("%S",s);
76.如果要在表单中创建一个普通文本框,下列标记中正确的是()。
A.<inputtype=”text”>
B.<inputtype=”password”>
C.<inputtype=”CheCkbox”>
D.<inputtype=”radio”>
77.
78.
79.有以下程序
voidfunc(int*a,intb[])
{b[0]=*a+6;}
main()
{inta,b[5]={0};
a=0;b[0]=3;
func(&a,b);
rintf("%d\n",b[0]);
}
程序的运行结果是
A.6B.7
C.8D.9
80.下列排序方法中,最坏情况下比较次数最少的是()。
A.简单选择排序B.冒泡排序C.堆排序D.直接插入排序
五、程序改错题(1题)81.下列给定的程序中,函数proc()的功能是:计算并输出k以内最大的10个能被15或18整除的自然数之和,k的值由主函数传人。若k的值为800,则函数的值为7605。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
六、程序设计题(1题)82.编写函数fun,其功能是:实现两个字符串的连接(不要使用库函数strcat),即把p2所指的字符串连接到
pl所指的字符串的后面。
例如,分别输入下面两个字符串:
程序输出:
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
参考答案
1.D
2.A解析:本题考查C语言的综合基础知识。构成C程序的基本单位是函数,一个C程序总是从main函数开始执行,而不论main函数在整个程序中的位置如何。C语言的函数定义都是互相平行、独立的,在定义函数时,一个函数内不能定义另一个函数。C函数定义的一般格式有两种:传统格式和现代格式。传统格式也称K&R格式,是早期编译系统使用的格式;现代格式又称ANSI格式,是现代编译系统使用的格式。
3.C解析:算法的执行效率与数据的逻辑结构和存储结构都有很紧密的关系。算法的空间复杂度是指执行该算法需要的内存空间,并非算法程序中指令的条数。算法一般应该具有以下4个特征:可行性、确定性、有穷性和拥有足够情报。其中,有穷性是指算法必须能在执行有限个步骤之后终止,否则可能失去实际意义。
4.D解析:本题考查软件工程中软件设计的概念和原理。人们在开发计算机软件的长期实践中积累了丰富的经验,总结这些经验得到如下的启发式规则:
(1)改进软件结构,提高模块独立性;通过模块的分解或合并,力求降低耦合提高内聚。低耦合也就是降低不同模块间相互依赖的紧密程度,高内聚是提高一个模块内各元素彼此结合的紧密程度。
(2)模块的规模应适中。一个模块的规模不应过大,过大的模块往往是由于分解不够充分:过小的模块开销大于有益操作,而且模块过多将使系统接口复杂。因此过小的模块有时不值得单独存在。
(3)模块的功能应该可以预测,但也要防止模块功能过分局限。如果模块包含的功能太多,则不能体现模块化设计的特点:如果模块的功能过分的局限,使用范围就过分狭窄。
经过上述分析,本题的正确答案是选项D。
5.D解析:如果是指针型变量或数组名,则变量前不加地址符号&,所以选项A的说法有误。必须有地址列表项才能实现正确输入,所以选项B的说法有误。在输入数据时,不可以指定实型数据的精度,所以选项C的说法有误。只有选项D的说法正确。
6.C根据题意,要求统计字符数组s中阿拉伯数字的个数。“chars[]=“012xy\\08s34f4w2”;”,其元素是字符型。字符‘0的ASCII值是48,字符‘\\0’的ASCII值是0,因此可以计算出‘\\0’之前阿拉伯数字的个数,由字符数组s可知,有3个阿拉伯数字。故本题答案为C选项。
7.Cf函数的功能是对形参a的各个成员用结构体变量b的各个成员进行赋值后,然后返回变量a。
8.C在C语言中,用整型格式输出字符时,输出的是其ASCII码值。
9.C转义字符中,八进制的表示形式为\\ddd,但是八进制中不能包含数字8,所以C选项不合法。故本题答案为C选项。
10.A
11.A广播/电视是一种单向的、点对多点(面)的以信息传递为主要目的的系统。
12.A本题考查“%”运算符的使用。运算符“%”是整数除法的余数。本题中表达式a%=(b%2)等价于a=a%(b%2)=5%(7%2)=5%1=0。
13.BC语言中,数组名本身就是一个指针,指向数组内存的起始位置,选项A正确;已经定义的数组被分配了内存空间,所以可以读入数据到数组中,未赋初值的指针没有分配内存空间,不可以读入数据,选项B错误;可以将指针指向一个同类型的数组,选项C正确;指针指向一个数组后,可以通过移动指针,指向该数组中的任意一个元素,选项D正确。故本题答案为B选项。
14.D解析:数据流相当于一条管道,并有一级数据(信息)流经它。在数据流图中,用标有名字的箭头表示数据流。数据流可以从加工流向加工,也可以从加工流向文件或从文件流向加工,并且可以从外部实体流向系统或从系统流向外部实体。
15.A
16.B解析:数据元素在计算机存储空间中的位置关系与它们的逻辑关系不一定是相同的,而且一般不可能相同。数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构,也称数据的物理结构。
17.Csum=fun((a++,b++,a+b),c++)中a++,b++,a+b为逗号表达式,运算后取a+b的值为5,c++为3,故函数调用后输出结果为8。
18.D
19.B解析:当一个数组中的元素均为指针类型数据时,该数组就称为指针数组。int*p[3]表示此数组是指针类型的,每个数组元素(指针变量)都是指向一个整型的指针变量。
20.B此题考查的是函数fun,fun(b,c)=5,然后fun(2*a,5)=fun(8,5)=6。
21.224682\r\n2468解析:在主函数中根据整型数组x[]的定义可知,x[1]的初值等于2。在for循环语句中,当i=0时,p[0]=&x[1],p[0][0]=2;当i=1时,p[1==&x[3],p[1][0]=4;当i=2时,p[2]=&x[5],p[2][0]=6;当i=3时,p[3]=&x[7],p[3][0]=8,所以程序输出的结果为2、4、6、8。
22.静态静态解析:静态测试包括代码检查、静态结构分析,代码质量度量等。静态测试不实际运行软件。
23.查询查询
24.str[i]str[i+1]"%s"strstr[i]\r\nstr[i+1]\r\n'%s',str解析:本题要求将字符串str中的字符用冒泡排序算法从大到小排列,其实现过程是将相邻两个字符进行比较,如果当前字符小于下一个字符,则通过中间变量temp将字符两两交换,所以第一空应填:str[i],第二空应填:str[i+l]。最终打印输出得到的字符串str,所以第三空应填:'%s',str。
25.'\0''\\0'解析:本题涉及字符数组和指针的两个知识点:①在C语言中,字符型数组在存放字符串时会自动在末尾加上字符串结束标识符'\\0'所以题中数组str有6个元素。②ptr指向数组str的首地址,ptr+5是指向str[5],*(ptr+5)是引用str[5]的值,即'\\0'。
26.j<=ij<=i解析:由题意可知第一个空应填入j<=i,第二个空应填入a[i][j]=a[j][i]。
27.66解析:strlen()函数的作用是计算字符串的长度并作为函数的返回值,这里的长度不包括串尾的结束标志,\'\\0\'。
\'\\t\',是转义字符,代表横向跳若干格;\'\\\''是转义字符,代表双引号;\'\\023\'只代表一个字符,而不管转义字符后面有几个字符:\'\\xAB\'是以两位十六进制数AB表示的ASCII码字符,只代表一个字符:\'\\n\'是转义字符,代表回车换行。’
5个子符常量各代表一个字符,再加上字母C,所以返回的长度是6。
28.结构化设计结构化设计解析:与结构化需求分析方法相对应的是结构化设计方法。结构化设计就是采用最佳的可能方法设计系统的各个组成部分以及各个成分之间的内部联系的技术。
29.return0return1return0,return1解析:如果a能被i整除,则a是素数,返回值为0。如果a不能被i整除,则a不是素数,返回值为1。
30.软件开发。软件开发。解析:通常,软件生命周期包括8个阶段:问题定义、可行性研究、需求分析、系统设计、详细设计、编码、测试、运行维护。还分为3个时期,软件定义期:包括问题定义、可行性研究和需求分析3个阶段;软件开发期:包括系统设计、详细设计、编码和测试4个阶段;软件维护期:即运行维护阶段。
31.1371513715解析:本题中,定义了一个整型数组n并初始化,在for循环语句中,再对数组中各元素重新赋值。循环执行第一次时,n[1]=n[0]*2+1=0+1=1,pnntf函数输出1,然后i的值加1,比较i<4成立,继续执行循环体语句,相应输出3、7、15,直至i<=4不成立,退出循环。所以最后输出为1、3、7、15。
32.承接模块承接模块解析:进行模块测试时,应为每个被测试的模块另外设计两类模块:驱动模块和承接模块。其中驱动模块的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果;承接模块的作用是模拟被测试模块的下层模块。
33.3535解析:函数swap(int*a,int*b)的功能是实现*a和*b中两个数据的交换,在主函数中调用swap(p,q)后,形参指针变量a和b分别指向i和j,在swap(int*a,int*b)执行完后,指针变量a和b分别指向j和i,而指针变量p,q所指向变量的值没有发生变化,所以输出结果为35。
34.查询查询解析:关系模型的数据操作即是建立在关系上的数据操作,一般有查询、增加、删除和修改四种操作。数据查询是指用户可以查询关系数据库中的数据,它包括一个关系内的查询以及多个关系间的查询。数据删除的基本单位是一个关系内的元组,它的功能是将指定关系内的指定元组删除。数据增加仅对一个关系而言,在指定关系中插入一个或多个元组。数据修改是在一个关系中修改指定的元组和属性。
35.数据结构数据结构解析:Jackson方法是—‘种面向数据结构的结构化方法。
36.叶子结点叶子结点解析:树中度为零的结点,也就是没有后件的结点,称为叶子结点。
37.a[0][I]b[I][0]a[0][I],b[I][0]解析:b[i][N-1]=a[0][i]实现把a所指二维数组中的第0行放到b所指二维数组的最后一列中,\ue008b[I][0]=a[N-1][I]实现将a所指N行N列的二维数组中的最后一行放到b所指二维数组中的第0列。
38.100+2+1=103110+2+2=114120+2+3=125130+2+4=136140+2+5=147100+2+1=103\r\n110+2+2=114\r\n120+2+3=125\r\n130+2+4=136\r\n140+2+5=147解析:静态局部变量的生存期为整个程序的运行期间,而作用域为定义该变量的函数或局部范围。自动变量的建立和撤销都是由系统自动进行的,所以称为自动变量。自动变量的作用域和生存期都为定义它的局部范围内。对同一函数的两次调用之间,自动变量的值是不保留的。而静态变量则保留。注意:局部变量和全局变量的定义及其作用范围。
39.类类解析:在面向对象的方法中,把具有相同属性和方法的对象称为类,类是对象的抽象,对象是类的实例。
40.逻辑数据模型逻辑数据模型解析:数据是现实世界符号的抽象,而数据模型(datamodel)则是数据特征的抽象,它从抽象层次上描述了系统的静态特征、动态行为和约束行为,为数据库系统的信息表示与操作提供一个抽象的框架。数据模型按不同的应用层次分成3种类型,它们是概念数据模型(conceptualdatamodel)、逻辑数据模型(logicdatamodel)、物理数据模型(physicaldatamodel)。
41.A解析:用E-R图可以简单明了地描述实体及其相互之间的联系,用E-R图还可以方便地描述多个实体集之间的联系和一个实体集内部实体之间的联系。因此,选项A中的说法是正确的,而选项B与C中的说法都是错误的。
为了建立用户所要求的数据库.必须把概念结构(用E-R图表示的概念数据模型)转换为某个具体的数据库管理系统所支持的数据模型,这就是逻辑结构设计所要完成的任务。
在已给定数据库管理系统的情况下,数据库的逻辑设计可以分两步来进行:
①将概念模型转换成一般的数据模型;
②将一般的数据模型转换为特定的数据库管理系统所支持的数据模型。
由此可知,用E-R图表示的概念数据模型不仅能转换为关系数据模型,还可以转换为其他数据模型,如网状模型和层次模型等。因此,选项D中的说法也是错误的。
42.B解析:本题主要考查结构指针:p=&st,访问结构体的成员,可以通过结构变量访问,即st.i,也可以用等价的指针形式,即(*p).i和p->i。
43.C本题考查while,while循环表达式k-1是个赋值表达式而不是逻辑表达式,k的初值为l2不符合循环条件,所以循环体语句一次也不执行。
44.D解析:关系模型中包括关系的数据结构、关系的操纵和关系中的数据约束。关系完整性约束即数据完整性,包括实体完整性、参照完整性和用户自定义完整性。
45.D解析:PDL一种设计性语言,用于书写软件设计规约。它是软件设计中广泛使用的语言之一。N-S图是无线的流程图,是算法描述工具;PAD图是问题分析图,它用二维树状结构的图表示程序的控制流,将这种图转换为程序代码比较容易。此3类均是过程设计工具,数据流图(DataFunctionDiagram):又名数据功能图表,简称DFD,是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
46.C解析:本题中首先定义一个长度为10的一个整型数组,并初始化为“l,2,3,4,5,6,7,8,9,10”,然后调用排序函数sort(),通过分析不难看出,sort()函数是对具有n个元素的a数组进行从大到小排序。由于函数的第一个参数是数组名,其对应的实参可以是函数名或地址。本题在调用该函数时,实参是&aa[3]的地址,即把aa[3]的地址传给了形参数组名a,函数也就是对aa[3]开始的5个元素进行从大到小的排序,aa[0]、aa[1]、aa[2]、aa[8]、aa[9]并没有变化。sort()执行完毕后,接着执行后面的for语句输出数组aa中各个元素的值,由于函数sort()只是对aa[3]开始的5个元素进行从大到小的排序,aa[0]、aa[1]、aa[2]、aa[8]、aa[9]并没有变化,所以输出为“1,2,3,8,7,6,5,4,9,10”。
47.C解析:事实上,无论有无static修饰,外部变量都具有A、B和C三种特性。作为—种修饰,static仅是限制此类型外部变量的引用范围:只能在定义它的文件范围内使用。
48.B解析:continue语句的作用是跳过本次循环体中余下尚未执行的语句,接着再一次进行循环条件的判定。当能被2整除时,a就会增1,之后执行continue语句,直接执行到for循环体的结尾,进行i++,判断循环条件。
49.C解析:在C语言中,实数有两种形式表示,即十进制数形式和指数形式,在指数形式中,e3、2.le3.5、.e3、e等都是不合法的指数形式。再如123e3或123E3都代表123乘以10的3次方。注意,字母e的前面必须有数字,且e的后面必须是整数。
50.C解析:求余运算符'%'两边的运算对象必须是整型,而选项B)和D)中'%'两边的运算对象有浮点整数据,所以选项B)和D)是错误的表达式。在选项A)中赋值表达式的两边出现相同的变量x,也是错误的。选项C)是一个逗号表达式,所以正确答案为C)。
51.B解析:选项A)中,定义的初值个数大于数组的长度;选项C)中,数组名后少了中括号;选项D)中,整型数组不能赋予字符串。
52.C解析:带参数宏的格式为:#define标识符(形参表)形参表达式。其功能是:在预处理程序中将程序中出现的所有带实参的宏名,展开成由实参组成的表达式。
53.A解析:本题考查的是函数调用时的参数传递问题。程序在调用函数f时,传给函数f的参数只是结构变量c在栈中的一个副本,函数f的所有操作只是针对这个数据副本进行的修改,这些都不会影响变量c的值。
54.D解析:要想使程序输出是25,则j-40=25,j=65,而j初值是50,所以填入for循环中的语句,使引用的数组元素累加为65-50=15即可。
55.D\r\n软件是与计算机操作相关的计算机程序、规程、规则,以及可能有的文件、文档及数据;软件开发要受到计算机系统的限制;软件是一个逻辑实体,不是物理实体,软件具有抽象性。因此选项D正确。
56.D解析:在关系模型中,把数据看成一个二维表,每一个二维表称为一个关系。即关系模型是用表格数据来表示实体本身及其相互之间的联系。本题的正确答案是D。
57.A解析:结构体变量所占的存储空间是各个分量所占空间的总和。共用体变量中的所有成员占有同一个存储空间,其字节数与成员中占字节数最多的那个成员相等。m占2个字节,f占4个字节,因此结构体变量a所占的存储空间为6字节。k[6]占6个字节,d占8个字节。共用体变量b所占的存储空间与占存储空间最多的d所占存储空间的字节数相同。所以,A选项为所选。
58.B解析:线性表的链式存储结构中的每一个存储结点不仅含有一个数据元素,还包括指针,每一个指针指向一个与本结点有逻辑关系的结点。此类存储方式属于顺序存储。
59.A解析:C语言规定标识符只能由字母、数字和下划线三种符号组成,而且第一个字符必须是字母或下划线。D)中的-max不合法,'-'既不是字母、数字,也不是下划线;C)中的3COM第一个字符为数字,不合法;D)中的int和C语言的关键字重名,不合法。
60.B解析:在C语言中,不
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 施工现场材料购销合同
- 高校家长委员会沟通方案
- 基坑支护期间消防安全保障方案
- 2023年日用化工专用设备项目评估分析报告
- 2024年红外光学石英玻璃项目成效分析报告
- 2024年煤焦油深加工产品项目综合评估报告
- 2024年聚氨酯泡沫稳定剂项目评估分析报告
- 2024至2030年绞股蓝片项目投资价值分析报告
- 2024至2030年中国换气阀数据监测研究报告
- 2024至2030年中国女性集尿器行业投资前景及策略咨询研究报告
- 2024年新课标高考生物试卷(适用黑龙江、辽宁、吉林地区 真题+答案)
- 委托第三方公司代付款协议模板
- 幼儿园中班语言课件:《秋天的颜色》
- 护理敏感质量指标
- DZ∕T 0153-2014 物化探工程测量规范(正式版)
- 西方思想经典导读智慧树知到期末考试答案章节答案2024年湖南师范大学
- 小鲤鱼跳龙门阅读题(答案)
- SLT 533-2021 灌溉排水工程项目初步设计报告编制规程-PDF解密
- MOOC 数据结构与算法-北京大学 中国大学慕课答案
- 初一上期历史试卷及答案
- 蓝天彩墨商业计划书
评论
0/150
提交评论