版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2021-2022年安徽省淮北市全国计算机等级考试C语言程序设计重点汇总测试卷(含答案)学校:________班级:________姓名:________考号:________
一、单选题(20题)1.某堆栈的输入序列为a,b,c,d,下面的四个序列中,不可能是它的输出序列的是()。
A.a,c,b,dB.b,c,d,aC.c,d,b,aD.d,c,a,b
2.有以下程序:#include<stdio.h>main(){charch[]=“uvwxyz”,*pc;pc=ch;printf(“%c\n”,*(pc+5));}程序的运行结果是()
A.zB.0C.元素ch[5]的地址D.字符y的地址
3.以下叙述中错误的是()。
A.C语言编写的函数源程序,其文件名后缀可以是C
B.C语言编写的函数都可以作为一个独立的源程序文件
C.C语言编写的每个函数都可以进行独立的编译并执行
D.一个C语言程序只能有一个主函数
4.以下程序的输出结果是()。main{charch[3][4]={"123","456","78"),*p[3];inti;for(i=0;i<3;i++)p[i]=ch[i];for(i=0;i<3;i++)printf("%s",p[i]);}A.123456780B.123456780C.12345678D.147
5.若有定义和语句:int**pp),*P,a=20,b=10;pp=&p;p=&a;p=&b;printf("%d,%d\n",*P,*PP);则输出结果是()。A.20,10B.20,20C.10,20D.10,10
6.有以下程序#include<stdio.h>#include<string.h>main(){chara[10]=”abcd”;printf("%d,%d\n",strlen(a),sizeof(a));}程序运行后的输出结果是()。A.7,4B.4,10C.8,8D.10,10
7.若有说明语句:double*P,a;则能通过scanf语句正确给输入项读入数据的程序段是()。
A.*p=&a;scanf("%lf",p);
B.*p=&a;scanf("%f",p);
C.p=&a;scanf("%lf",*p);
D.p=&a;scanf("%lf",p);
8.以下选项中不能用做C程序合法常量的是()。
A.1,234B.‘\123’C.123D.“\x7G”
9.下列程序的输出结果是()
main()
{inta,b,d=25;
a=d/10%9;
b=a&&(-1);
printf("%d,%d\n",a,b);}
A.6,1B.2,1C.6,0D.2,0
10.有以下程序:#includedstdi0.h>#definef(x)X*x*xmain(){inta=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
11.
12.设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为()。
A.20B.0或35C.15D.16
13.下述程序的输出结果是()。#include<stdio.h>voidmain{intb[6]={2,4,6,8,10,12);int*p=b,**q=&p;printf("%d,",*(p++));printf("%d,",**q);}A.4,4B.2,2C.4,5D.2,4
14.有以下程序:#include<stdio.h>structS{inta,b;)data[2]=10,100,20,200);main(){structSp=data[l];printf("%d\n",++(p.a));}程序运行后的输出结果是()。A.10B.11C.20D.21
15.对线性表进行折半查找最方便的存储结构是()。
A.顺序表B.有序顺序表C.链表D.有序链表
16.有n个结点的二叉树链表共有__________个空指针域。
A.n-1B.nC.n+1D.n+2
17.下列叙述中正确的是()。
A.数据库系统是一个独立的系统,不需要操作系统的支持
B.数据库技术的根本目标是要解决数据的共享问题
C.数据库管理系统就是数据库系统
D.以上3种说法都不对
18.考虑一个特殊的hash函数h,能将任一字符串hash成一个整数k,其概率P(k)=2^(-k),k=1,2,…,∞。对一个未知大小的字符串集合S中的每一个元素取hash值所组成的集合为h(S)。若h(S)中最大的元素Maxh(S)=10,那么S的大小的期望是()
A.1024B.512C.5D.10
19.下列关于线性表的叙述中,不正确的是()
A.线性表可以是空表
B.线性表是一种线性结构
C.线性表的所有结点有且仅有一个前件和后件
D.线性表是由n个元素组成的一个有限序列
20.表达式:(int)((double)9/2)-(9)%2.的值是A.0B.3C.4D.5
二、2.填空题(20题)21.在计算机软件系统的体系结构中,数据库管理系统位于用户和【】之间。
22.若有说明chars1[]="Thatgirl",s2[]="isbeautiful";则使用函数strcmp(s1,s2)g,结果是______。
23.若变量x、y已定义为int类型且X的值为33,y的值为3,请将输出语句printf((),x/y);补充完整,使其输出的计算结果形式为:x/y=11。
24.若有如下程序:
sub(int*y)
{while(--(*y));
printf("%d",(*y)--);}
main()
{intx=10;
sub(&x);
}
则程序运行后的输出结果是【】。
25.以下程序的输出结果是【】。
#include<stdio.h>
main()
{inti;
for(i-'a';i<'f';i++,i++)printf("%c",i-'a'+'A');
printf("\n");
}
26.以下程序的运行结果是【】。
#include<stdio.h>
longfib(intg)
{switch(g)
{case0:return0;
case1:
case2:return1;}
return(fib(g-1)+fib(g-2));}
main()
{longk;
k=fib(5);
printf("k=%5ld\n",k);}
27.数据库技术的主要特点为数据的集成性、数据的高【】和低冗余性、数据独立性和数据统—管理与控制。
28.下列语句的输出结果是______。
chars[20]="aaaa",*sp=s;
puts(strcat(sp,"AAAAA"));
29.下面程序的输出结果是()。#include<stdio.h>main(){staticchara[]="china";char*ptr=a;while(*ptr){printf("%c",*ptr-32);ptr++;}}
30.若fp已下确定义为一个文件指针,d1.dat为二进制文件,请填空,以便为“读”而打开此文件:fp=fopen(【】);。
31.下面程序的功能是根据公式e=1+1/1!+1/2!+1/3!+1/4!+...计算e的近似值,精度要求为10-5。请填空。
main()
{intn;
doublee=1.0,t=1.0;
for(n=1;【】n++);
{【】e+=t;}
printf("%f\n",e);}
32.下面程序的输出结果是()。#include<stdio.h>main(){staticchara[]="zhao",b[]="juan";char*ptr1=a,*ptr2=b;intk;for(k=0;k<4;k++)if(*(ptr1+k)==*(ptr2+k))printf("%c",*(ptr1+k));}
33.以下程序的输出结果是【】。
main()
{inty=9;
for(;y>0;y--)
if(y%3==0)
{printf("%d",--y);continue;}}
34.设Y是int型变量,请写出判断Y为奇数的关系表达式【】。
35.下列程序段的运行结果是______。
charstr[]="ABCD",*p=str;
printf("%d\n",*(p+3));
36.下面程序的输出结果是【】。
charb[]="ABCD";
main()
{char*chp;
for(chp=b;*chp;chp+=2)printf("%s",chp);
printf("\n");
}
37.以下函数的功能是删除字符串s中的所有数字字符。请填空。
voiddele(char*s)
{
intn=0,i;
for(i=0,s[i];i++)
if(【】)
s[n++]=s[i];
s[n]=【】;
}
38.以下程序中,fun函数的功能是求3行4列二维数组每行元素中的最大值,请填空。
voidfun(int,int,int(*)[4],int*);
main()
{inta[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i;
fun(3,4,a,b);
for(1=0;i<3;i++)printf("%4d",b[i]);
printf("\n");
}
voidfun(intm,intn,intar[][4],int*bar)
{inti,j,x;
for(i=0;i<m;i++)
{x=ar[i][0];
for(j=0;j<n;j++)if(x<ar[i][j])x=ar[i][j];
【】=x;
}
}
39.数据结构分为逻辑结构和存储结构,循环队列属于______结构。
40.下列程序的功能是计算数的阶乘。
main()
{ihti,n;
nlongnp;
scanf("%d",&n);
np=【】;
for(i=2;i<=n;i++)
【】;
printf("n=%dn!=%ld\n",n,np);
}
三、1.选择题(20题)41.有如下程序:main(){ints=0,a=1,n;scanf("%d",&n);do{s+=1;a=a-2;}while(a!=n)printf("%d\n",s);}若要使程序输出2,则应该从键盘输入的值是______。
A.-1B.-3C.-5D.0
42.以下程序的输出结果是_______。main(){intx=-1,a=1:if(x+=A)printf("YES!\n");elseprintf("NO!\n");}
A.有语法错,不能通过编译B.通过编译,但运行程序造成死机C.输出YES!D.输出N0!
43.下列正确的实型常量是()。
A.E3.4B.-12345C.2.2eO.8D.4
44.若有说明语句"inta;floatb;”,以下输入语句正确的是()
A.scanf("%f%f",&a,&b);
B.scanf("%f%d",&a;&b);
C.scanf("%d,%f",&a,&b);
D.scanf("%6.2f%6.2f",&a,&b);
45.在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的()
A.连接码B.关系码C.外码D.候选码
46.若有下列说明语句int(*p)();则标识符p代表的是()
A.一个用于指向函数的指针变量,函数返回值的类型为int型
B.一个带回值类型为整型的函数名
C.一个用于指向整型数据的指针变量
D.一个带回值类型为指针类型的函数名
47.下面的程序执行后,文件test.t中内容是______。#include<stdio.h>voidfun(clar*fname,char*st){FILE*myf;inti;myf=fopen(fname,"w");for(i=0;i<stden(st);i++)fputc(st[i],myf);fclose(myf);}main(){fun("test.t","newworld");fur("test.t","hello,";}
A.hello,B.newworldhelloC.newworldD.hello,rld
48.下列选项中不会引起二义性的宏定义是()。
A.#defineS(x)x*x
B.#defineS(x)(x)*(x)
C.#defineS(x)(x*x)
D.#defineS(x)((x)*(x))
49.在“文件包含”预处理语句的使用形式中,当#include后面的文件名用"",(双撇号)括起时,寻找被包含文件的方式是()。
A.直接按系统设定的标准方式搜索目录
B.先在源程序所在的目录搜索,如没找到,再按系统设定的标准方式搜索
C.仅仅搜索源程序所在目录
D.仅仅搜索当前目录
50.有以下程序:main(){inta[4][4]={{1,4,3,2,},{8,6,5,7,},{3,7,2,5,},{4,8,6,1,)},i,j,k,t;for(i=0;i<4;i++)for(j=0;j<3;j++)for(k=j+1;k<4;k++)if(a[j][i]>a[k][i]){t=a[j][i];a[j][i]=a[k][i];a[k][i]=t;}/*按列排序*/for(i=0;i<4;i++)printf("%d,",a[i][i]);}程序运行后的输出结果是()。
A.1,6,5,7,B.8,7,3,1,C.4,7,5,2,D.1,6,2,1,
51.C语言结构体类型变量在程序运行期间
A.TC环境在内存中仅仅开辟一个存放结构体变量地址的单元
B.所有的成员一直驻留在内存中
C.只有最开始的成员驻留在内存中
D.部分成员驻留在内存中
52.现有格式化输入语句,scanf("x=%d,sumy=%d,linez=%dL",&x,&y,&z),现在已知在输入数据后,x,y,z的值分别是12,34,45则下列的数据是正确的输入格式的是
A.12,34,45<Enter>
B.x=12,y=34,z=45<Enter>
C.x=12C,sumy=34,z=45<Enter>
D.x=12,sumy=34,linez=45<Enter>
53.以下能正确定义一维数组的选项是A.intnum[];
B.#defineN100intnum[N];
C.intnum[0..100];
D.intN=100;intnum[N];
54.有下列程序:#include"stdio.h"main(){intx=0;inty=0;while(x<7&&++y){y--;x++;}printf("%d,%d",y,x);}程序的输出结果是()。
A.0,7B.7,7C.0,6D.1,6
55.以下与函数fseek(fp,OL,SEEK_SET)有相同作用的是______。A.feof(fp)B.ftell(fp)C.fgetc(fp)D.rewind(fp)
56.按照“先进后出”原则组织数据的数据结构是()。
A.队列B.栈C.双向链表D.二叉树
57.以下对C语言函数的有关描述中,正确的是______。
A.在C程序中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B.函数既可以嵌套定义又可以递归调用
C.函数必须有返回值,否则不能使用函数
D.C程序中有调用关系的所有函数必须放在同一个源程序文件中
58.设有以下宏定义:#defineN3#defineY(n)((N+1)*n)则执行以下语句后,z的值为______。z=2*(N+Y(3+2));
A.出错B.34C.46D.54
59.以下选项中,不能正确赋值的是______。
A.chars1[10];s1="chest";
B.chars2[]={'C','t','e','s','t'};
C.chars3[20]="Chest";
D.char*s4="Cest\n"
60.数据库、数据库系统和数据库管理系统之间的关系是()。
A.数据库包括数据库系统和数据库管理系统
B.数据库系统包括数据库和数据库管理系统
C.数据库管理系统包括数据库和数据库系统
D.三者没有明显的包含关系
四、选择题(20题)61.
62.下列哪个属性是用来定义内联样式的?()
A.fontB.classC.stylesD.style.
63.在面向对象方法中,不属于“对象’’基本特点的是()。A.一致性B.分类性C.多态性D.标识唯一性
64.数据字典(DD)所定义的对象都包含于()。
A.软件结构图B.方框图C.数据流图(DFD图)D.程序流程图
65.
66.
67.
68.
69.有以下程序:
程序运行后的输出结果是()。
A.7B.5C.3D.9
70.
71.有如下说明inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是()
A.*p+9B.*(p+8)C.*p+=9D.p+8
72.
73.以下选项中非法的字符常量是()。
A.\101B.\65C.\xffD.\019
74.若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为()。
A.4B.16C.32D.52
75.下面函数的功能是()。
intfunc(char*x)
{char*y=x;
while(*y++);
return(y-x-1);
}
A.求字符串的长度
B.比较两个字符串的大小
C.将字符串x复制到字符串y
D.将字符串x连接到字符串y后面
76.有以下程序:
程序运行后的输出结果是()。
77.
78.以下选项中不属于c语言的类型的是()。
A.unsignedlongint
B.longshort
C.unsignedint
D.signedshortint
79.当用户要求输入的字符串中含有空格时,应使用的输入函数是()。
A.scanfB.getcharC.getsD.getc
80.设变量x和y均已正确定义并赋值,以下if语句中,在编译时将产生错误信息的是
五、程序改错题(1题)81.下列给定程序、中,函数proc()的功能是:先将字符串s中的字符按顺序存放到t中,然后把s中的字符按正序连接到t的后面。例如,当s中的字符串为WXYZ时,则t中的字符串应为WXYZWXYZ。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。试题程序:
六、程序设计题(1题)82.使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写函数fun(),其功能是将两个两位数的正整数a、b合并成一个整数放在c中。合并的方式是将a中的十位数和个位数依次放在c的个位和百位上,b中的十位数和个位数依次放在c的十位和千位上。例如,当a=45,b=12时,调用该函数后c=2514。注意:部分源程序给出如下。请勿改动主函数main()和其他函数中的任何内容,仅在函数fun()的花括号中填入你编写的若干语句。试题程序:#include<conio.h>#include<stdio.h>voidfun(inta,intb,long*c){}main(){ inta,b; longc; printf(“Inputa,b:”); scanf(“%d%d”,&a,&b); fun(a,b,&c); printf(“Theresultis:%ld\n”,c);}
参考答案
1.D
2.A语句“pc=ch;”使得指针变量pc指向字符数组ch的首地址,即指向字符‘u’。而“pc+5”指向的是指针向后移动5位所指的字符,即指向字符‘z’,所以输出的“*(pc+5)”的值为‘z’。故本题答案为A选项。
3.C函数是指预先定义功能块,其目的是提高程序的重用性。在C语言中函数的源程序,后缀名可以为C。C语言所编写的函数都可以是一个独立的源文件。一个C语言程序只能有一个主函数。C语言中编写的函数不是每个都可以独立地编译和执行的,因为C语言中程序的开始为主函数,如果程序中没有主函数则无法进行编译和执行。
4.B第一个for循环的作用是让p指向每行的首地址,第二个for循环的作用是把它指向的字符串输出,故选择B选项。
5.D本题考查指针变量的赋值。**PP是定义一个指针变量,语句pp=&p是将pp指向指针P,*P和**PP都是指针P所指的内存空间的内容,即b的值。
6.Bstrlen是求字符串的长度,结果为4,sizeof是求数组的长度,而数据在定义时已给出长度为10。
7.D解析:*p间接引用指针指向的变量,因此“(*p)=&a”不对。scanf()的输入变量必须为地址,因此C是错误的。
8.AA选项中逗号是一个操作符。
9.B解析:算术运行符“/”、“%”的优先级处于同一级,并且两者的结合性都是从左到右。所以算术表达式运算过程为:a=25/10%9=2%9=2:当逻辑运算符“&&”两边的值都是非零时,逻辑表达式的值才为真(即为1)。所以b=2&&(-1)=1。
10.A本题考查带参数的宏定义。第一次函数调用求S的值,x=a+1,所以X*X*X应写成a+1*a+1*a+1,没有括号优先级,结果为l0,第二次函数调用x*X*X可写成(a+1)*(a+1)*(a+1),所以结果为43=64。
11.D
12.BQ(1:35)则队列的存储空间为35;对空条件:front=rear(初始化时:front=rear),队满时:(rear+1)%n==front,n为队列长度(所用数组大小),因此当执行一系列的出队与入队操作,front=rear.则队列要么为空,要么为满。
13.D首先定义了一个指向一维数组b的指针P,一个指向指针P的指针变量q;输出*(p++)是先输出*p,即b[O]的值,再将指针P指向数组的下一个元素b[1];输出**q是输出指针P所指单元的内容。
14.D考查结构体的应用,答案为21。
15.B
16.C
17.B解析:数据库系统除了数据库管理软件之外,还必须有其他相关软件的支持。这些软件包括操作系统、编译系统、应用软件开发工具等,选项A的说法是错误的。数据库具有为各种用户所共享的特点,选项B的说法是正确的。通常将引入数据库技术的计算机系统称为数据库系统。一个数据库系统通常由5个部分组成,包括相关计算机的硬件、数据库集合、数据库管理系统、相关软件和人员。因此,选项C的说法是错误的。
18.A
19.CC)【解析】线性表是一种线性结构,由n(n≥O)个元素组成,所以线性表可以是空表。但是性表中,第一个结点没有前件,最后一个结点没有后件,其他结点有且只有一个前件和后件,所以选项C)是错误的。
20.B\n本题考查了强制类型转换。9/2为double型,所以结果为4.5,又强制转换为整型,所以结果为4。9%2为取余运算,结果为1。最终结果4-1=3。
\n
21.操作系统或OS操作系统或OS解析:数据库管理系统是数据库的机构,它是一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务。位于用户和操作系统之间。
22.-1-1解析:strcmp(s1,s2)函数的作用是:对字符数组s2和字符数组s1进行比较。如果s1<s2,则返回负数;如果s1==s2,则返回0;如果s1>s2,则返回正数。
23.x/y=%dx/y=%d解析:本题考查prinff语句的输出格式。printf()函数是格式化输出函数,一般用于向标准输出设备按规定格式输出信息。在编写程序时经常会用到此函数。printf()函数的调用格式为:printf('<格式化字符串>”,<参最表>)其中,格式化字符串包括两部分内容。一部分足正常字符,这些字符将按原样输出;另一部分是格式化规定字符,以“%”开始,后跟一个或几个规定字符,用来确定输出内容格式。参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出参数个数一样多,各参数之间用“,”分开,且顺序一一
24.00解析:while循环的条件为即当*y非零时执行循环,-(*y)先对*y的值减1,再使用*y的值,不再执行while循环时最后*y的值为0,输出函数中的(*y)--,是先使用*y的值再对*y减1,就是先输出0。
25.ACEACE解析:题目中for循环的循环变量i从字符'a'变到字符'e',但由于每次循环后都连续执行了两次i++,所以for循环将执行3次,循环变量i的值依次为'a'、'c'、'e'。循环体中是一条输出语句,按字符输出表达式i-'a'+'A'。因为大小写字母的ASCII码是连续的,例如'b'+1='c'、'W'-1='V',而且小写字母的ASCII码比大写字母的大。所以,同一个字母的大小写字符之差是一个固定值。由此可见,将一个字符从小写转换为大写,只需将其减去这个固定值,而将大写转为小写可以加上这个固定值。固定值可以通过任一字符的小写减去大写来得到。所以本题的i-'a'+'A'=i-('a'-'A'),即让i减去了此固定值,从而使整个表达式的值为i所代表的小写字母的大写形式。故本题的输出结果是ACE。
26.k=5k=5解析:本题主要考查了函数的递归调用方法。g=0或\ue008g=1\ue009或g=2是递归的终止条件,然后用回代的方法从一个已知值推出下一个值,直到计算出最终结果。
27.共享性共享性解析:数据库技术的主要特点有以下几个方面:数据的集成性,数据的高共享性与低冗余性,数据的独立性,数据统—管理与控制。
28.aaaaAAAAAaaaaAAAAA解析:函数strcat(sp,'AAAAA')的作用是将字符中“AAAAA”连接到字符串sp的末尾,并自动覆盖字符数组sp末尾的\'\\0\'。
29.CHINA
30.“d1.dat”“rb”或“d1.dat”“r+b”或“d1.dat”“rb+”“d1.dat”,“rb”,或“d1.dat”,“r+b”,或“d1.dat”,“rb+”,解析:打开文件的函数为fopen(”文件名”,“mode”),其中“mode”表示文件的打开方式。如果打开的是二进制文件,其mode字符串可以是:“rb”、“wb”、“ab”、“rb+”、“wb+”、“ab+”。“r”表示以只读方式打开。“w”表示以写方式打开,如果已存在该文件名的文件,文件中的内容将被清空。若文件名不存在,则将创建该文件。“a”为追加方式打开。若文件存在时;将打开这个文件并且在文件的末尾进行追加。当文件不存在,将创建新文件。“r+”打开一个已存在文件用于更新(可读可写)。“w+”创建个新文件用于更新,如果文件存在,文件被重写(可读可写)。“a+”打开用于追加,当文件不存在时,创建新文件,并在文件末尾进行追加(可读可写)。根据题意,应该填“d1.dst”,“rb”或其他等价的表达法。
31.t>=le-5;t=t/n;
32.aa解析:本程序先将指针ptr1和ptr2分别指向字符数组a和b,然后通过指针的移动比较a和b中是否有相同的字符。若有相同的字符则将其输出。
33.852852解析:循环前,变量y的值为9,其中,循环语句在y大于0情况下循环,每次循环后y的值都减1。循环体是当y能被3整除时输出表达式--y,输出的是减1后的y值。这样,第一次循环因y为9,能被3整除,输出8,y也变成8。又经两次循环,y的值变为6,又让y减1变成5,并输出5;又经两次循环,y的值变成3,让y减1变成2,输出2;再经两次循环后,y的值变成0,结束循环,所以程序输出852。
34.Y%2=1或Y%2!=0Y%2=1或Y%2!=0解析:判断变量是否为奇数可以用变量与2取模,判断结果是为1或下为0。本题具体做法如下:Y%2=1或Y%2!=0。
35.6868解析:本题考查如何用指针引用数组元素。本题先定义了一个指向字符型数组str的指针p,指针p指向数组str的首地址,p+3将指针指向str[3],*(p+3)指的是字符“D”,输出时是以“%d”格式输出的,即输出其相应ASCII码值68。
36.ABCDCD
37.s[i]<'0'||s[i]>'9'或!(s[i]>='0'&&s[i]<='9')或!(isdigit(s[i]))或isdigit(s[i])==0或s[i]>'9'||s[i>'0'或!(s[i]<='9'&&s[i]>='0')或*(s+i)<'0'||*(s+i)>'9'或!(*(s+i)>='0'&&*(s+i)<=9或!(isdigit(*(s+i)))或*(s+i)>='9'&&*(s+i)<='0'或!(*(s+i)<='9'&&*(s+i)>='0'或isdigis[i]<'0'||s[i]>'9'或!(s[i]>='0'&&s[i]<='9')或!(isdigit(s[i]))或isdigit(s[i])==0或s[i]>'9'||s[i>'0'或!(s[i]<='9'&&s[i]>='0')或*(s+i)<'0'||*(s+i)>'9'或!(*(s+i)>='0'&&*(s+i)<=9或!(isdigit(*(s+i)))或*(s+i)>='9'&&*(s+i)<='0'或!(*(s+i)<='9'&&*(s+i)>='0'或isdigi解析:从一个字符串中删除某字符的力‘法是从字符串的第一个字符开始一一判断该字符是否是要被删除,若不是则把它放到结果字符串中,若是则不放入结果字符串中。本题的第一个空应判断s[i]是否为数字字符,只有在不是数字字符的情况下才存入结果字符串,所以应填入s[i]<'0'||s[i]>'9'。最后应在结果字符串的末尾填上字符串结束标志\\0。
38.bar[i]bar[i]解析:fun函数中的内层for循环,求出了每一行中的最大值x,内循环结束后就需要把最大值放在存储每行最大值的数组bar[i]中,因此应填bar[i]。
39.存储或物理或存储结构或物理结构存储或物理或存储结构或物理结构解析:数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构(也称数据的物理结构)。所谓循环队列,就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间。供队列循环使用。可知,循环队列应当是物理结构。
40.1np*=i或np=np*i1\r\nnp*=i或np=np*i
41.B解析:本题中如果printf函数输出为2,需要执行两次s+=1语句,第一次执行完循环语句后得s=1、a=1-2=-1,第二次执行完循环语句后得s=1+1=2、a=-1-2=-3,所以正确答案为-3。
42.D解析:if语句中条件表达式的值是赋值表达式x+=a的值,x+=a相当于x=x+a,值为0。
43.B解析:实型常量有两种书写形式:①小数形式,它由符号、整数部分、小数点及小数部分组成;②指数形式,由十进制小数形式加上指数部分组成,其形式为十进制小数e指数或十进制小数E指数。注:e或E后面的指数必须是整数,并且在e或E的前面必须有数字。本题中,选项A)中E的前面没有数字,因此错误。选项C)中0.8不是整数,因此错误。选项D)中4是整型常量而不是实型常量。
44.C解析:说明语句中变量a为整型,变量b为实型。选项A、B和D的格式控制中变量a的格式描述符为f,与定义的变量类型不符,故选项A、B和D错误。
45.DD)【解析】在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的候选码或候选键。从二维表的所有候选键中选取一个作为用户使用的键称为主键或主码。
46.A
47.A解析:C语言中文件有文本文件与二进制文件,对文件的使用前必须先打开,打开方式有只读、写入、读写等方式。
48.D本题考查参数的宏替换。为避免二义性有些参数表达式必须加括号,否则在实参表达式替换时,会出现错误。例如x为(m+n)时替换A:m+n*m+n,所以选项D最符合条件。
49.B解析:本题考查库函数调用的知识点。格式1:#include<文件名>,预处理程序在标准目录下查找指定的文件;格式2:#include'文件名',预处理程序首先在引用被包含文件的源文件所在的目录下搜索指定的文件,如没找到,再按系统指定的标准目录搜索。
50.A解析:本题首先定义了一个4行4列的二维数组,并用了三层for循环来进行由小到大的排序。外层循环变量i表示数组的列.第二层循环变量j表示数组的行,第三层循环用于求第i列第j行的最小值,其中通过if语句对相关数值进行比较和交换。最后通过for循环对排序后数组对角线上的元素输出。
51.B解析:结构体类型的变量在程序运行期间要作为一个整体占用连续的内存单元。
52.D解析:若在scarf的格式化控制串中插入了其他字符,则在输入时要求按一一对应的位置原样输入这些字符。格式化输入函数必须严格按照双引号里面的格式进行输入。在格式化输出函数中,格式控制串中除了合法的格式说明外,可以包含任意的合法字符。
53.B解析:选项A定义数组时省略了长度,而C语言中规定,只有在定义并同时进行初始化时,数组的长度才可以省略,数组的长度为初始化时候的成员个数,故选项A错误;在C语言中规定,数组的长度必须是一个整数或整型常量表达式,故选项C不正确:定义时数组的长度不能使用变量表示,故选项D不正确,所以,4个选项中选项B符合题意。
54.A解析:本题考查while循环.y的值在while循环的控制表达式中加1,在循环体内减1,所以总的y值不变,且控制条件++y永远非零。当x加到7时不满足循环条件,结束循环。
55.D解析:feof函数的功能是判断文件指针是否已指到了文件末尾,是则返回非零值,否则返回零;ftell函数的功能是得到流式文件中文件指针的当前位置,用相对于文件开头的位移量来表示;fgetc函数的功能是从指定文件读人一个字符;rewind函数的功能是使文件指针重新返回文件的开头。fseek函数用于改变文件的位置指针,调用形式为:fseek(文件类型指针,位移量,起始点),“起始点”取值0(SEEK_SET)、1(SEEK_CUR)、2(SEEK_END)分别表示文件开始、文件当前位置、文件末尾。“位移量”是以“起始点”为基点,向前移动的字节数。函数fseek(fp,OL,SEEK_SET)的作用是将位置指针移到文件头,所以选项D)正确。
56.BB.【解析】栈是一种特殊的线性表,其插入和删除运算都只在线性表的一端进行,而另一端是封闭的。进行插入、删除的一端称为栈顶,封闭的一端称为栈底。栈顶元索是最后被插入的元素,也是最后被删除的元素。栈是按先进后出的原则组织数据的。
【知识拓展】“栈”的形式如手枪的弹匣,最后压入的子弹总是最先被弹出,而最先压人的子弹最后才被弹出,也就是“先进后出”。
57.A解析:在C语言中,提供了许多库函数供用户使用,因此选项D错误。
58.B解析:注意C语言中宏定义是先替换再参与运算,因此:z=2*(N+(N+1)*3+2)=2*(3+(3+1)*3+2)=34。
59.A解析:C语言中不能将字符串常量直接赋给数组。但在赋初值时可以。
60.B数据库可以看成是长期存储在计算机内的、大量的、有结构的和可共享的数据集合。数据库可以被直观地理解为存放数据的仓库,只不过这个仓库在计算机的大容量存储器上,例如,硬盘就是一种最常见的计算机大容量存储设备。数据必须按一定的格式存放,因为它不仅需要存放,而且还要便于查找和使用。
数据库管理系统(DBMS)是位于用户与操作系统之间的完成数据管理的系统软件。它是用户与数据库的接口。应用程序一般要通过DBMS才能访问数据库。在数据库建立、运用和维护时对数据库进行统一控制。
数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。数据库是整个数据库系统最基本的成分。数据库管理系统是数据库系统的核心。数据库管理员是数据库系统的责任维护者,负责对数据库系统的整体维护。
综上所述,本题中只有B选项的描述是正确的。
61.C
62.D
63.A在面向对象方法中,对象的基本特点包括:标识唯一性、分类性、多态性、封装性、模块独立性好。一致性不属于对象的基本特点,因此本题答案为A)。
64.C数据字典(DD)是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。
65.C
66.A
67.D
68.D
69.C向switch语句块传送参数后,编译器会1先寻找匹配的csse语句块,找到后就执行该语句块。遇到break跳出;如果没有匹配的语句块,则执行default语句块。ca∞与default没有顺序之分。所以第2次循环k的值为l,执行c+:k,c的值为1,再执行case2后的语句c++,c的值为2,遇到break语句跳出循环;第二次循环k的值为2,执行case2后面的语句c++,C的值为3,跳出循环。
70.D
71.B解析:在C语言的数组元素的引用方法,我们在前面已经讲过了,比如数组元素a[0],可以用表达式*(p+0),即*p来引用,对于数组元素a[1],可以用表达式*(p+1)来引用,在这里,p+1的值就是数组元素a[1]的地址,对此地址使用“间接访问运算符”:*(p+1)就代表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025广东广州市海珠区新港街道第二次招聘雇员补充建设考试备考题库及答案解析
- 2026西安高新区第四初级中学招聘(3人)建设考试备考试题及答案解析
- 2026云南怒江州泸水市交通运输局招聘公益性岗位工作人员2人建设考试备考题库及答案解析
- 2026江苏徐州市教育局直属学校招聘高层次人才18人建设笔试参考题库及答案解析
- 2026江苏南京大学现代工程与应用科学学院博士后招聘1人建设考试备考试题及答案解析
- 2026广东深圳市第一职业技术学校招聘后勤岗购买教育服务人员2人建设笔试参考题库及答案解析
- 2026江苏南京大学环境学院准聘长聘岗位(事业编制)招聘建设考试备考试题及答案解析
- 2026年中国科学技术大学附属中学实验学校教师招聘4名建设考试备考试题及答案解析
- 2026浙江省粮油产品质量检验中心编外聘用人员招聘1人建设笔试备考题库及答案解析
- 2026浙江宁波前湾新区招聘部分专业卫技人员6人建设笔试备考题库及答案解析
- 2026年河南机电职业学院单招职业技能笔试备考试题带答案解析
- 2025人教版三年级数学上册 第六单元 分数的初步认识 单元分层作业
- 止水钢板施工人员配置
- 职场课课件教学课件
- 2025深圳南山半程马拉松竞赛组织方案
- 无人吊装施工方案(3篇)
- 2026年新疆生产建设兵团兴新职业技术学院单招职业技能测试题库及答案详解一套
- 八上12短文二篇《记承天寺夜游》公开课一等奖创新教学设计
- 会计伦理规范与法规体系的协同机制
- 防水工程施工流程
- 铁路接触网工(高级技师)理论考试题(附答案)
评论
0/150
提交评论