




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2022年甘肃省天水市全国计算机等级考试C语言程序设计测试卷(含答案)学校:________班级:________姓名:________考号:________
一、单选题(20题)1.有下列程序:
程序执行后的输出结果是()。
A.3,7,8,9,10,6,5,4,2,1,
B.10,9,8,7,3,1,2,4,5,6,
C.10,9,8,7,6,1,2,3,4,5,
D.1,2,3,4,5,10,9,8,7,6,
2.针对简单程序设计,以下叙述的实施步骤顺序正确的是()。
A.确定算法和数据结构、编码、调试、整理文档
B.编码、确定算法和数据结构、调试、整理文档
C.整理文档、确定算法和数据结构、编码、调试
D.确定算法和数据结构、调试、编码、整理文档
3.对于一个正常运行的C程序,下列叙述中正确的是()。A.A.程序的执行总是从main函数开始,在main函数结束
B.程序的执行总是从程序的第一个函数开始,在main函数结束
C.程序的执行总是从main函数开始,在程序的最后一个函数中结束
D.程序的执行总是从程序中的第一个函数开始,在程序的最后一个函数中结束
4.以下对C语言函数的有关描述中,正确的是
A.在C语言中调用函数时,只能把实参的值传给形参,形参的值不能传送给实参
B.C函数既可以嵌套定义又可以递归调用
C.函数必须有返回值,否则不能使用函数
D.函数必须有返回值,返回值类型不定
5.设intx=7,则~x的值是()。
A.-8B.7C.-1D.1
6.有以下程序:#include<stdi0.h>#defineS(x)(x)"x"2main(){intk一5,j=2;Drintf("%printf,",S(k+j));printf("%printf\n",S((k—j)));}程序运行后的输出结果是()。A.98,18B.39,11C.39,18D.98,11
7.若已定义:“inta[9],*p=a;”,并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是______。
A.p+1B.a+1C.a++D.++p
8.设有如下定义:intx=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y));的输出结果是()。
A.1B.0C.4D.3
9.表示关系a≤b≤c的C语言表达式为()。
A.(a<=B)&&(b<=C)
B.(a<=B)and(b<=C)
C.(a<=b<=C)
D.(a<=B)&(b<=C)
10.能正确表示x>=3或者x<1的关系表达式是()。
A.x>=3orx<1B.x>=3|x<1C..x>=3||x<1D.x>=3||x<1
11.
12.算法的空间复杂度是指()。
A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.执行算法需要的内存空间
13.下列关于AOE网的叙述中,不正确的是()。
A.关键活动不按期完成就会影响整个工程的完成时间
B.任何一个关键活动提前完成,那么整个工程将会提前完成
C.所有的关键活动提前完成,那么整个工程将会提前完成
D.某些关键活动提前完成,那么整个工程将会提前完成
14.为非法的字符串常量()。A.“case”B.“”C.”056”D.‘123’
15.若有定义“inta[2][3],*p[3];”,则以下语句中正确的是()。
A.p=a;B.p[0]=a;C.p[0]=&a[1][2];D.p[1]=&a;
16.下列叙述中错误的是()。
A.在C语言中,函数中的自动变量可以赋初值,每调用一次赋一次初值
B.在C语言中,在调用函数时,实参和对应形参在类型上只需赋值兼容
C.在C语言中,外部变量的隐含类型是自动存储类别
D.在C语言中,函数形参的存储类型是自动(auto)类型的变量
17.数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和______。A.编码设计B.测试阶段C.运行阶段D.物理设计
18.设单链表中结点的结构为已知指针p所指结点不是尾结点,若在*p之后插入结点*s,则应执行下列哪一个操作______。A.s->link=p;p->link=s;
B.s->link=p->link;p->link=s;
C.s->link=p->link;p=s;
D.p->link=s;s->link=p;
19.若整型变量a、b、c、d中的值依次为2、2、3、4,则条件表达式a<b?a:c<d?c:d的值是()。A.1B.2C.3D.4
20.将10阶对称矩阵压缩存储到一维数组A中,则数组A的长度最少为()
A.100B.40C.55D.80
二、2.填空题(20题)21.下列程序段的输出结果是______。
intn='c':
switch(n++)
{default:printf("error");break;
case'a':printf("good");break;
case'c':printf("moming");
case'd':printf("class");
}
22.以下程序运行后输出结果是______。
voidswap(intx,inty)
{
intt;
t=x;x=y;y=t;printf("%d%d",x,y");
}
main()
{
inta=3,b=4;
swap(a,b);printf("%d%d\n",a,b);
}
23.以下程序运行后的输出结果是______。
voidfun(intx,inty)
{
x=x+y;y=x-y;x=x-y;
printf("%d,%d,",x,y);
}
main()
{
intx=2,y=3;
fun(x,y);
printf("%d,%d\n",x,y);
}
24.软件定义时期主要包括______和需求分析两个阶段。
25.执行以下程序后的输出结果是()。
main()
{inta=10;
a=(3*5,a+4);printf("a=%d\n",A);
26.执行下列语句段后,x的值是______。
int*p,x;
x=100;
p=&x;
x=*p+50;
27.x和y都是double型变量,x的初值为4.0,y的初值为2.0,则表达式pow(y,fabs(x))的值为______。
28.开发软件所需要的高成本和产品的低质量之间有着尖锐的矛盾,这种现象被人们称之为【】。
29.下面的程序可对指定字符串中的字符串进行从大到小排序,请将程序填完整。(注:程序采用了冒泡排序算法)
#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(【】);
}
30.下列程序的运行结果是______。
main()
{inta=1,b=10;
do
{b-=a;a++;}while(b--<0);
printf("%d,%d\n",a,b);
}
31.以下程序运行后的输出结果是______。
main()
{
inta,b,c;
a=25;
b=025;
c=0x25;
printf("%d%d%d\n",a,b,C);
}
32.有以下程序段:
inta[l0]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b;
b=p[5];
b中的值是【】。
33.数据库技术的主要特点为数据的集成性、数据的高【】和低冗余性、数据独立性和数据统一管理与控。
34.下列程序段的输出结果是【】。
main()
{charb[]="Hello,you";
b[5]=0;
printf("%s\n",B);
}
35.按照“先进先出”的原则组织数据的结构是______。
36.为建立如下图所示的存储结构(即每个结点两个域,p是指向结点的指针域,data用以存放整型数),请将定义补充完整。
pdata
a
structlist
{【】;intdata;}a;
37.实现算法所需的存储单元多少和算法的工作量大小分别称为为算法的【】。
38.常用的黑箱测试有等价分类法、【】、因果图法和错误推测法4种。
39.以下程序的输出结果是【】。
#include<stdio.h>
voidfun()
{staticinta=0;
a+=2;printf("%d",a);
}
main()
{intcc;
for(cc=1;cc<4;cc++)fun();
printf("\n");
}
40.以下程序运行后的输出结果是【】。
main()
{charCl,c2;
for(c1='0''c2='9';c1<c2;c1++,c2--)printf("%c%c",c1,c2);
printf("\n");
}
三、1.选择题(20题)41.如果需要打开一个已经存在的非空文件“Demo”进行修改,下面选项中正确的是
A.fp=fopen("Demo","r");
B.fp=fopen("Demo","ab+");
C.fp=fopen("Demo","w+");
D.fp=fopen("Demo","r+");
42.已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是A.A.堆排序B.直接插入排序C.快速排序D.B和C
43.执行以下语句段后,xy的值是()。int*pt,xy;xy=200;pt=&xy;xy=*pt+30;
A.200B.170C.260D.230
44.内聚性是对模块功能强度的衡量,下列选项中,内聚性较弱的是()
A.顺序内聚B.偶然内聚C.时间内聚D.逻辑内聚
45.下面程序段的运行结果是()。char*p="abcdefgh";p+=3;printf("%d\n",stfien(strcpy(p,"ABCD")));
A.8B.12C.4D.7
46.以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是()。
A.chars[10]=="abcdefg";
B.chart[]="abcdefg",*s=t;
C.chars[10];s="abcdefg";
D.chars[10];strcpy(s,"abcdefg");
47.下面程序的输出是______。main(){intx=3,y=6,a=0;,while(x++!=(y=1)){a+=1;if(y<x)break;}printf("x=%d,y=%d,a=%d\n,x,y,a);}
A.x=4,y=4,a=1B.x=5,y=5,a=1C.x=5,y=4,a=3D.x=5,y=4,a=1
48.阅读下面程序段,则执行后的结果为#inclide"stdio.h"main(){intm=4,n=2,k;k=fun(m,n);printf("%d\n",k);}fun(intm,intn){return(m*m*m-n*n*n);}
A.64B.8C.56D.0
49.若w、x、y、z、m均为int型变量,则执行下列的语句后m的值是()。w=2,x=3,y=4,z=5;m=(w<x)?w:x;m=(m<z)?m:z;m=(m<y)?m:y;
A.2B.3C.5D.4
50.若有以下定义语句:doublea[5],*p=a;inti=0;对a数组元素错误的引用是()
A.a[i]B.a[5]C.p[4]D.p[i]
51.有以下程序,其中函数f的功能是将多个字符串按字典顺序排序:#include<stdio,h>#inelude<string,h>voidf(char*p[],intn)char*t;inti,j;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(strcmp(p[i],p[j])>0){t=p[i];p[i]=p[j];p[j]=t;}}main(){char*p[5]={"abe"."aabdfg"."abbd","dcdbe","cd"};f(P,5);printf("%d\n",strlen(p[1]));}程序运行后的输出结果是()。
A.2B.3C.60D.4
52.线性表若采用链式存储结构时,要求内存中可用存储单元的地址()
A.必须是连续的B.部分地址必须是连续的C.一定是不连续的D.连续不连续都可以
53.若x是整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是______。
A.pb=&x;B.pb=x;C.*pb=&x;D.*pb=*x
54.下述关于数据库系统的叙述中正确的是______。
A.数据库系统减少了数据冗余
B.数据库系统避免了一切冗余
C.数据库系统中数据的一致性是指数据类型的一致
D.数据库系统比文件系统能管理更多的数据
55.数据独立性是数据库技术的重要特点之一。所谓数据独立性是指()
A.数据与程序独立存放
B.不同的数据被存放在不同的文件中
C.不同的数据只能被对应的应用程序所使用
D.以上三种说法都不对
56.下列正确的转义字符是()。
A.\1234B.57C.\'D.\\060
57.在微机中,bit的中文含义是()。
A.二进制位B.字节C.字D.双字
58.以下不能定义为用户标识符的是()。
A.scanfB.VoidC.3comD.int
59.设有定义语句:charb='\123';则变量b包括()。
A.4个字符B.3个字符C.2个字符D.一个字符
60.有以下程序main(){intc=35;printf("%d\n",c&c);}程序运行后的输出结果是______。
A.0B.70C.35D.1
四、选择题(20题)61.
有以下程序:
main
{union
{charch[2];
intd;
}s;
d=0x4321;
printf("%x,%x\n",S.ch[0],S.ch[l]);
}
在16位编译系统上,程序执行后的输出结果是()
A.21,43B.43,21C.43,00D.21,00
62.
63.
64.有定义如下:
structsk
{inta;
floatb;
}data,*p;
如果p=&data;则对于结构变量data的成员a的正确引用时()
A)(*).data.aB)(*p).a
C)p->data.aD)p.data.a
65.有以下程序
66.
67.
68.设有二元关系R和三元关系s,下列运算合法的是()。
A.R∩SB.R∪SC.R-SD.R×S
69.有以下程序段程序的输出结果是()。
A.a=10b=50c=10
B.a=10b=50c=30
C.a=10b=30c=lO
D.a=50b=30c=50
70.以下选项中,不合法的c语言用户标识符是()。
A.a_bB.AaBcC.f1一一bD.一1
71.设有以下语句:
其中0≤k<5。以下不是对字符串的正确引用的是()。
A.*strpB.strp[k]C.str[k]D.strp
72.下列叙述中正确的是()。
A.软件测试的目的是确定程序中错误的位置
B.软件测试的目的是发现程序中的错误
C.软件调试的目的是发现程序中的错误
D.软件调试后一般不需要再测试
73.有下列程序:main{inty=10;do{y--;}while(--y);printf("%d\n",--y);)当执行程序时,输出的结果是()。A.-1B.1C.4D.0
74.有以下程序:
#include<stdio.h>
#defineS(x)4*(x)*x+1
main()
{intk=5,j=2;
printf("%d\n",S(k+j));
}
程序运行后的输出结果是()。
A.197B.143C.33D.28
75.
76.下面不属于软件工程三要素的是()。
A.方法B.环境C.工具D.过程
77.有以下程序
78.软件是指()。A.程序B.程序和文档C.算法加数据结构D.程序、数据与相关文档的完整集合
79.有以下程序:
程序运行后的输出结果是()。
A.33B.197C.143D.28
80.在“文件包含,预处理语句的使用形式中,当#include后面的文件名用(双引号)括时,寻找被包含文件的方式是()。
A.直接按系统设定的标准方式搜索目录
B.先在源程序所在的目录搜索,如没找到,再按系统设定的标准方式搜索
C.仅仅搜索源程序所在目录
D.仅仅搜索当前目录
五、程序改错题(1题)81.下列给定的程序中,函数proc()的功能是:计算并输出k以内最大的10个能被13或17整除的自然数之和。k的值由主函数传人,若k的值为600,则函数的值为5671。请修改程序中的错误,使它能得出正确的结果。注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。试题程序:
六、程序设计题(1题)82.请编写函数proc(),它的功能是:求出1~1000中能被5或13整除,但不能同时被5和13整除的所有整数,并将它们放在arr所指的数组中,通过n返回这些数。注意:部分源程序给H{如下。请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。试题程序:
参考答案
1.B程序中函数fun的功能是将数组a的n个元素,按照flag的值进行排序:当flag为0时,升序排列;当flag为1时,降序排列。main函数中定义数组c,初始化10个元素的值。第1次调用函数fun,\nflag为1,即将c的下标为0开始的5个元素降序排列。第2次调用函数fun\n,flag为0,将c的下标为5开始的5个元素升序排列。所以输出数组e的元素为10,9,8,7,3,1,2,4,5,6。本题答案为B选项。
2.A\nC语言中程序中的步骤实现为:先确定程序中的算法和数据结构,然后进行程序的编码,再进行对程序的调试,最后进行文档的整理和记录。使用这种步骤可以方便程序的编写以及在完成后提高代码的重用性。
\n
3.A解析:一个C语言源程序无论包括了多少函数,总是从main函数开始执行,从main函数结束。
4.A解析:C语言中的函数可以进行递归调用,但不能在函数中定义函数,即函数不能嵌套定义。函数可以没有返回值,若有返回值,则返回值类型必须确定。
5.A本题主要考查按位求反运算和C语言正负数的表示,“O”代表正数,“1”代表负数;x=7的二进制为00111,第一个0代表正数,~x为11000,第一个l代表负数,值为8。
6.BS(k+j)=(k+j)*k+j*2=(5+2)*5+2*2=39,同理S(k-1)=(k+j)*k+j*2=\r\n(5-2)*5-2*2=11,所以答案选择B。
7.C
8.D
9.A解析:本题考查逻辑与运算符&&。在C语言中使用运算符“&&”连接两个表达式,也可以表示逻辑与运算符。在C语言中不允许出现a<=b<=c这种格式。
10.C
11.D
12.D解析:算法的复杂度主要包括算法的时间复杂度和算法的空间复杂度。所谓算法的时间复杂度是指执行算法所需要的计算工作量;算法的空间复杂度一般是指执行这个算法所需要的内存空间。
13.B
14.D
15.CA选项错误,因为p是指向一个指针数组,而数组名相当于常量,不能重新赋值。B选项错误,因为p[0]是一个int指针,也就是int*,而a是一个指向指针的指针int**。C选项正确,因为p[0]是int*,a[1][2]是int,&a[1][2]是int*,类型吻合。D选项错误,因为a作为数组名,不能取地址,即使能取,P[1]是int*,&a是int***,类型不吻合。故本题答案为C选项。
16.C解析:外部变量在编译时由系统分配永久的内存空间,所以外部变量的类型不是自动存储类别。
17.DD)【解析】数据库设计目前一段采用生命周期法.即将整个数据库应用系统的开分解成目标独立的若干阶段,它们是:需要分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段。在数据库设计中采用上面几个阶段中的前四个阶段,并且重点以数据结构和模型设计为主线。
18.B
19.C本题考查三目运算符a<b?a:c<d?c:d也可写成a<b?a:(c<d?c:d),所以根据优先级,先算括号内的,c小于d为真取C的值,再看a小于b为假,所以取C的值。
20.C
21.morningclassmorningclass解析:本题考查了两个知识点:①“++、--”运算后缀形式是先使用变量原来的值,使用完后再使其增1或减1;②在switch语句中,当n=\'c\'时,执行“case\'c\':”,输出morning;因为此句中没有break语句,因此接着执行'case\'d\':”,输出class,最终输出结果为morningclass。
22.43344334解析:本题考查的是函数的传值调用。在C语宫中函数是传值调用的,印在函数中修改形参变量的内容,不会影响传给函数的实参变量的内容。题目中首先让a=3,b=4,然后调用swap()函数,该函数首先交换两个参数的值,然后输出交换后的值,即输出4和3,然后在主函数中再次输出a和b的值,由于传值调用不会影响实参的值,所以最后输出的是3和4。
23.32233,2,2,3解析:主函数中首先定义了整型变量x和y,并分别给它们赋初值为2和3,接着调用fun()函数,fun()函数把实参x和y的值传给形式参数x和y,实参和形参不再有联系.在fun()函数中通过运算使x和y的值交换过来,所以fun()函数中的输出结果是“3,2”。fun()函数调用返回输出x和y依旧是原来的x和y,为“2,3”原因是变量作为形参传值的,对形参的修改并不影响对应的实参。所以最后输出为3,2,2,3。
24.可行性研究可行性研究解析:软件生命周期一般包括可行性研究与需求分析、设计、实现、测试、交付使用及维护等,还可以将软件生命周期分为三个阶段:①软件定义阶段:可行性研究和需求分析;②软件开发阶段:设计、实现和测试;③软件运行维护阶段:交付使用和维护。
25.a=14a=14解析:在“逗号表达式(表达式1,表达式2)”中,其运算方法是先求表达式1的值,然后求表达式2的值,整个逗号表达式的值是表达式2的值。首先3*5=15,a=10,a+4=14,最后输出的运算结果为14。
26.150150解析:本题先给变量x赋初始值100,然后将指针p指向变量x,*p是取指针p所指地址的内容,即100,所以x=100+50=150。
27.1616解析:函数运算不改变数据类型,所以结果也是double型,fabs(x)是对x取绝对值,pow(y,fabs(x))是y的labs(x)次幂,即2.04。0=16.000000(注意;结果为double型)。
28.软件危机软件危机
29.str[i]str[i+1]"%s"strstr[i]\r\nstr[i+1]\r\n'%s',str解析:本题要求将字符串str中的字符用冒泡排序算法从大到小排列,其实现过程是将相邻两个字符进行比较,如果当前字符小于下—个字符,则通过中间变量temp将字符两两交换,所以第一空应填:str[i],第二空应填:str[i+1]。最终打印输出得到的字符串str,所以第三空应填:'%s',str。
30.282,8解析:do…while语句的功能是:首先执行循环体语句,然后检测循环控制条件表达式的值,若为真,则重复执行循环体语句,否则退出循环。这里程序初始时a=1,b=10,经过操作b-=a;a++后b=9,a=2,判断条件b--<O不成立,退出循环,但b的值被减1,因此结果为:a=2,b=8。
31.252137252137解析:本题中先定义了整型变量a、b和c,然后分别给赋值a为25,b为八进制的025,c为十六进制0x25。然后调用pruntf()函数将a、b和c分别用十进制输出,且中间用空格隔开,八进制025转换为十进制的值为21,十六进制的0x25转换为十进制的值为37,故最后的输出结果为252137。
32.99解析:p是一个指针变量,指向数组a的元素a[3],所以b=p[5]=a[5+3]=a[8]=9。
33.共享性共享性解析:数据库技术的主要特点有以下几个方面:数据的集成性,数据的高共享性与低冗余性,数据的独立性,数据统一管理与控制。
34.HelloHello解析:字符串中,数值0或符号'/0'表示字符串的结束。本题中,b[5]被赋了0值,表明字符串b的第六个字符就是结束标志。因此,只输出前五个字符,即Hello。
35.队列队列解析:队列是一种特殊的线性表,只允许在表的一端插入元素,在表的另一端删除元素,插入元素的一端叫做“队尾”,删除元素的一端叫做“队头”,先插入的元素先被删除,是按先进先出的原则组织数据的。
36.structlist*nextstructlist*next解析:定义的指针类型变量next也应该是结构体类型的。
37.空间复杂度和时间复杂度空间复杂度和时间复杂度解析:算法的复杂性是指对—个在有限步骤内终止算法和所需存储空间大小的估计。算法所需存储空间大小是算法的空间复杂性,算法的计算量是算法的时间复杂性。
38.边值分析法边值分析法解析:本题考查了黑箱测试的方法。黑箱测试方法完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例。常用的黑箱测试有等价分类法、边值分析法、因果图法和错误推测法。
39.246246解析:本题考查静态(static)局部变量的使用。fun函数中的静态局部变量a所占用的存储单元在程序运行过程中始终不释放,即当下一次调用该函数时,该变量仍然保留上一次函数调用结束时已有的值,3次调用fun函数分别得到2,4,6。
40.9.18274e+0089.18274e+008解析:本题考查的循环条件是c1<c2,当c1>=c2时,退出循环。所以,第一次循环输出09,第二次循环输出18,如此循环直到输出45,之后c1=5,c2=4,不满足循环条件,退出循环。
41.D
42.B解析:堆排序的比较次数为nlog2n;直接插入排序的比较次数为n(n-1)/2;快速排序的比较次数为nlog2n。当数据表A中每个元素
43.D解析:本题考查指针的运用。通过pt=&xy,将pt指向xy所占有的内存地址,而*pt是指针pt所指向内存单元中的内容,即200,所以最后xy的值为230。
44.BB)【解析】内聚是从功能角度来衡量模块的联系,它描述的是模块内的功能联系。内聚有如下种类,它们之间的内聚度由弱到强排列:
偶然内聚——模块中的代码无法定义其不同功能的调用。但它使该模块能执行不同的功能,这种模块为巧合强度模块。
逻辑内聚——这种模块把几种相关的功能组合在一起,每次被调用时,由传送给模块的参数来确定该模块应完成哪一种功能。
时间内聚——这种模块顺序完成一类相关功能,比如初始化模块,它顺序地为变量置初值。
过程内聚——如果一个模块内的处理元素是相关的,而且必须以特定次序执行,则称为过程内聚。
通信内聚——这种模块除了具有过程内聚的特点外,还有另外一种关系,即它的所有功能都通过使用公用数据而发生关系。
顺序内聚——如果一个模块内各个处理元素和同一个功能密切相关,而且这些处理必须顺序执行,处理元素的输出数据作为下一个处理元素的输入数据,则称为顺序内聚。
功能内聚——如果一个模块包括为完成某一具体任务所必需的所有成分,或者说模块中所有成分结合起来是为了完成一个具体的任务,此模块则为功能内聚模块。
45.C解析:p+=3使指针p指向字符'd',函数strcpy的功能是把后面的字符串复制到p指针指向的空间;strlen函数的功能是求字符串的长度,并返回字符个数,不计最后的'\\0'。本题结果为4,即字符串“ABCD”的长度。
46.C解析:选项A中定义了一个字符型数组并使用字符串常量给它赋初值,故选项A正确。选项B定义了一个字符型数组t并初始化,然后定义了一个指针变量s并让它指向t,故选项B正确。选项C先定义了一个长度为10的字符型数组,然后再给它赋值,这时应该分别给数组中的每个元素赋值,故选项C不正确;选项D中先定义了一个长度为10的字符型数组s,然后通过字符串复制函数将字符串“abcdefg”赋值给它,选项D正确。所以,4个选项中选项C符合题意。
47.D解析:注意的是x++中x值的引用时,这里应当是先引用,后自加,具体抽打过程如下:
第一次while循环:条件为真,执行a=a+1=1此时,x的值已为4,判断y<x不成立,继续执行循环;
第二次while循环:条件为假,此时x的值已为5,退出while循环,执行printf。
48.C
49.A解析:条件表达式“a?b:c”的含义是:当a为真时,其值等于表达式b的值;当a为假时,其值等于表达式c的值。
表达式运算过程:第1个表达式:w=2<x=3为真,所以返回w的值,即m=w=2;第2个表达式:m=2<z=5为真,所以返回m的值,即m=2;第3个表达式:w=2<y=4为真,所以返回m的值,即m=2。
50.B
51.D解析:本题经过排序后,第二个字符串是'abbd',所以输出结果是4。
52.D解析:在链式存储结构中,存储数据结构的存储空间可以不连续,各数据接点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。
53.A解析:选项A将变量x的地址赋绐指针变量pb,使pb指向x‘选项B是烙x的值当作地址赋给指针pb,pb指向一个地址等于x值的内存单元;选项c将x的地址赋给指针pb指向的地址等于x的内存单元。
54.A解析:由于数据的集成性使得数据可为多个应用所共享,特别是在网络发达的今天,数据库与网络的结合扩大了数据关系的应用范围。数据的共享自身又可极大地减少数据冗余性,不仅减少了不必要的存储空间,更为重要的是可以避免数据的不一致性。这里所谓数据的一致性是指在系统中同一数据的不同出现应保持相同的值,而数据的不一致性指的是同一个数据在系统的不同拷贝处有不同的值。
55.D解析:在数据库系统中,通过系统提供的映象功能,使数据具有两方面的独立性:一是物理独立性。即由于数据的存储结构与逻辑结构之间由系统提供映象,使得当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改。二是逻辑独立性。即由于数据的局部逻辑结构(它是总体逻辑结构的一个子集,由具体的应用程序所确定,并且根据具体的需要可以作一定的修改)与总体逻辑结构之间也由系统提供映象,使得当总体逻辑结构改变时,其局部逻辑结构可以不变,从而根据局部逻辑结构编写的应用程序也可以不必修改。由此可知,选项A.B与C中的说法都是错误的。
56.C解析:转义字符是要用\\开头的,所以选项B不是转义字符。开头的斜杠为单斜杠,所以选项D不是转义字符。斜杠后面可跟1至3位八进制数,可以由0开头:或以x开头的1至2位十六进制数,因此选项A是错误的。\\为转义字符,为单引号字符,所以选项C符合题意。
57.A在微机中,信息的最小单位为二进制位,用bit来表示;8位二进制构成一个字节,用Byte来表示;一个或一个以上字节可组成一个二进制表示的字,字长可以是8位、16位、32位或64位;两个字长的字,称为双字。故本题正确答案是A\n【考点】科技\n学科专题(物理、化学、生物医学、计算机)\n计算机数据存储
58.D解析:标识符是C语言中用来表示变量名、数组名、函数名、指针名、结构名、联合名、枚举常数名、用户定义的数据类型名、语句标号等用途的字符序列。标识符由1~32个字符组成,第一个字符必须是字母或下划线,后面的字符可以是字母、数字或下划线。标识符不能与C关键字相同,并区分大小写。选项D)错误,因为int是C语言中的关键字。
59.D解析:\\123为转义字符,是一个字符常量,斜线后面的是八进制数,可以由0开头,最多由3个八进制数组成。它只代表一个字符,此八进制数就是这个字符的代码。语句charb='\\123'是给字符变量赋初值
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年医院护理工作计划实施方案
- 电子商务部门年中总结
- 小古文原创课件
- 木工坊课程分享会
- 《顾客抱怨处理》课程
- 江苏省无锡市洛社高级中学2024-2025学年高考物理试题模拟题及解析(全国卷I:)含解析
- 石家庄信息工程职业学院《形体与舞蹈》2023-2024学年第一学期期末试卷
- 潮安县2025年数学四年级第二学期期末综合测试模拟试题含解析
- 场地调查技术规范
- 赤峰学院《生物统计学模型》2023-2024学年第二学期期末试卷
- 广东省茂名市电白区人民法院
- Q∕SY 1815-2015 排水采气用起泡剂技术规范
- 矿山环境保护ppt课件(完整版)
- 《我不能失信》PPT【名师课件】
- CCEA GC 11-2019 工程造价咨询企业服务清单
- DB11_T1630-2019 城市综合管廊工程施工及质量验收规范
- X-Y数控工作台机电系统设计说明书
- 轮胎式装载机检测报告
- 部编版四年级语文下册《亲爱的汉修先生》整本书导读课件(共38张PPT)
- 世界地理之欧洲西部
- 民办教师人员花名册
评论
0/150
提交评论