




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
2022年廣東省深圳市全國計算機等級考試C語言程序設計測試卷(含答案)學校:________班級:________姓名:________考號:________
一、單選題(20題)1.下列寫法正確的是()。
A.main(){inti=3,j;j=5}
B.main(){inti=3;
C.main()
D.main(){;}
2.有如下程序main(){inty=3,x=3,z=1;printf("%d%d\n",(++x,y++),z+2);}運行該程序的輸出結(jié)果是______。
A.34B.42C.43D.33
3.有下列程序:fun(intx,inty){staticintm=0,i=2;i+=m+1;m=i+x+y;returnm;}main(){intj=1,m=1,k;k=fun(j,m);printf("%d,",k);k=fun(j,m);printf("%d\n",k);}執(zhí)行后的輸出結(jié)果是()。
A.5,5B.5,11C.11,11D.11,5
4.以下選項中不屬于字符常量的是
A.′C′B.′′C′′C.′\xCC′D.′\072′
5.以下敘述中正確的是()。A.A.break語句只能用在循環(huán)體內(nèi)和switch’語句體內(nèi)
B.continue語句的作用是:使程序的執(zhí)行流程跳出包含它的所有循環(huán)
C.在循環(huán)體內(nèi)使用break語句和continue語句的作用相同
D.break語句只能用于switch語句體中
6.在一個雙向鏈表中,q的前一個節(jié)點為p,q的后一個節(jié)點為n,刪除q所指向節(jié)點,則執(zhí)行()
A.deleteq;
B.q->prev->next=q->prev;q->next->prev=q->next;deleteq;
C.q->prev=p->next;p->next=p->prev;deleteq;
D.q->next=q->prev->next;q->prev=q->next->prev;deleteq;
E.q->prev->next=q->next;q->next->prev=q->prev;deleteq;
F.p->prev->next=p->next;p->next->prev=p->prev;deleteq->next;
7.下面程序的運行結(jié)果是()。
A.gaeB.gaC.LanguageD.有語法錯
8.下列程序的運行結(jié)果為()。#include<stdio.h>main{structdate{intyear,month,day;}today;printf("%d\n",sizeof(structdate));}A.8B.6C.10D.12
9.公司中有多個部門和多名職員,每個職員只能屬于一個部門,一個部門可以有多名職員。則實體部門和職員間的聯(lián)系是()。
A.1:m聯(lián)系B.m:n聯(lián)系C.1:1聯(lián)系D.m:1聯(lián)系
10.以下能正確定義一維數(shù)組的選項是()。
A.inta[5]={0,1,2,3,4,5};
B.chara[]={0,1,2,3,4,5};
C.chara={'A','B','C'};
D.inta[5]="0123";
11.若有如下程序:intsub(){staticintn=1;intx=1;x*=n;n++;returnx;}main(){intn,t=1;for(n=1;n<6;n++)t*=sub();printf("%d\n",t);}則程序運行后的輸出結(jié)果是()
A.15B.120C.34560D.-30976
12.以下程序的輸出結(jié)果是______。charcchar(charch){if(ch>='A'&&ch<='z')ch=ch-'A'+'a';returnch;}main(){chars[]="ABC+abc=defDEF",*p=s;while(*p){*p=cchar(*p);p++;}printf("%s\n",s);}
A.abe+ABC=DEFdef
B.abc+abe=defdef
C.abcaABCDEFdef
D.abcabcdefdef
13.對稱數(shù)組A中,每個元素的長度為4個字節(jié),行下標i從1到8,列下標j從1到8。將其下三角中的元素連續(xù)存儲在從首地址SA開始的存儲器內(nèi),該數(shù)組按行存放是,則元素A[5][8]的起始地址為()。
A.SA+124B.SA+128C.SA+132D.136
14.以下敘述中正確的是()。
A.無論指針變量P具有何種基類型,表達式“p=p+1”都代表指針P移動1個字節(jié)
B.指針變量具有基類型,基類型不同的指針變量不能直接相互賦值
C.指針變量的賦值操作“p=0;”是非法的
D.通過指針變量存取某個變量值的方式稱為“直接存取”方式
15.一個優(yōu)化的程序可以生成n個元素集合的所有子集,那么該程序的時間復雜度是()
A.O(n!)B.O(nlogn)C.O(n^2)D.O(2^n)
16.
17.下列敘述中正確的是()。
A.數(shù)據(jù)庫系統(tǒng)是一個獨立的系統(tǒng),不需要操作系統(tǒng)的支持
B.數(shù)據(jù)庫技術(shù)的根本目標是要解決數(shù)據(jù)的共享問題
C.數(shù)據(jù)庫管理系統(tǒng)就是數(shù)據(jù)庫系統(tǒng)
D.以上三種說法都不對
18.
19.設二維數(shù)組A[1...m,1...n]按行存儲在數(shù)組B中,則二維數(shù)組元素A[i,j]在一維數(shù)組B中的下標為()。A.A.n*(i-1)+jB.n*(i-1)+j-1C.i*(j-1)D.j*m+i-1
20.以下有關(guān)scanf函數(shù)的敘述中錯誤的是()。
A.在scanf函數(shù)的格式字符前既可以加入正整數(shù)指定輸入數(shù)據(jù)所占的寬度,也可以對實數(shù)指定小數(shù)位的寬度
B.scanf函數(shù)有返回值,其值就是本次調(diào)用scanf函數(shù)時正確讀入的數(shù)據(jù)項個數(shù)
C.scanf函數(shù)從輸入字符流中按照格式控制指定的格式解析出相應數(shù)據(jù),送到指定地址中
D.在scanf函數(shù)中的格式控制字符串不會輸出到屏幕上
二、2.填空題(20題)21.下列程序段的運行結(jié)果是______。
charstr[]="ABCD",*p=str;
printf("%d\n",*(p+3));
22.數(shù)據(jù)庫管理系統(tǒng)是位于用戶與______之間的軟件系統(tǒng)。
23.下列程序的輸出結(jié)果是______。
#include<stdio.h>
int(intx,inty,intcp,intdp)
{cp=x*x+y*y;
dp=x*x-y*y;
}
main()
{inta=1,b=8,c=7,d=9;
t(a,b,c,d);
printf("%d%d\n",c,d);
}
24.表示“整數(shù)x的絕對值大于5”時值為“真”的C語言表達式是【】。
25.在關(guān)系模型中,把數(shù)據(jù)看成一個二維表,每一個二維表稱為一個______。
26.下面程序的輸出是【】
main()
{enumem{eml=3,em2=1,em3};
char*aa[]={"AA',"BB","CC","DD"}
printf("%s%s%\n",aa[em1],aa[em2],aa[em3]);
}
27.在面向?qū)ο蠓椒ㄖ?,類之間共享屬性和方法的機制稱為______。
28.己定義charch='$';inti=l,j;,執(zhí)行j=!ch&&ii++以后,i的值為【】。
29.以下程序運行后的輸出結(jié)果是【】。
#include<stdio,h>
main()
{inta=3,b=4,c=5,t=99;
if(b<a&&a<c)t=a;a=c;c=t;
if(a<e&&b<c)t=b;b=a;a=t;
printf("%d%d%d\n",a,b,e);
}
30.若x和y都是double型變量,且x的初值為3.0,y的初值為2.0,則表達式pow(y,fabs(x))的值為【】。
31.若已定義inta[10],i;以下fun函數(shù)的功能是,在第一個循環(huán)中給前10個數(shù)組元素依次賦1,2,3,4,5,6,7,8,9,10;在第二個循環(huán)中使a數(shù)組前10個元素中的值對稱拆疊,變成1,2,3,4,5,5,4,3,2,1。請?zhí)羁铡?/p>
fun(inta[])
{inti;
for(i=1;i<=10;i++)【】=i;
for(i=0;i<5;i++)【】=a[i];
}
32.下程序的輸出結(jié)果是【】。
#include<stdio.h>
#defineMAX_COUNT4
voidfun()
main()
{intcount;
for(count=1;count<=MAX_COUNT;coun++)fun();
}
voidfun()
{staicinti;
i+=2;
printf(”%d,i);
}
33.若先后輸入county、side,以下程序的運行結(jié)果為【】。
main()
{chars1[40],s2[20];inti=0,j=0;
scanf("%s",s1);
scanf("%s",s2);
while(s1[i]!='\0')i++;
while(s2[j]!='\0')s1[i++]=s2[j++];
s1[i]='\0';
printf("\n%s",s1);
}
34.函數(shù)fun的功能是:根據(jù)以下公式求p的值,結(jié)果由函數(shù)值返回。m與n為兩個正數(shù),且要求m>n。
例如:m=12,n=8時,運行結(jié)果應該是495.000000。請在題目的空白處填寫適當?shù)某绦蛘Z句,將該程序補充完整。
#include<stdio.h>
floatfun(intm,intn)
{inti;
doublep=1.0;
for(i=1;i<=m;i++)【】;
for(i=1;i<=n;i++)【】;
for(i=1;i<=m-n;i++)p=p/i;
returnp;
}
main()
{printf("p=%f\n",fun(12,8));
}
35.在C語言中,字符的比較就是對它們的【】碼進行比較。
36.下面程序的功能:輸出100以內(nèi)能被3整除且個位數(shù)為6的所有整數(shù),請補充完整。
main()
{inti,j;
for(i=0;【】;i++)
{j=i*10+6;
if(【】)continue;
printf("%d",j);
}
}
37.為了便于對照檢查,測試用例應由輸入數(shù)據(jù)和預期的【】兩部分組成。
38.若有定義語句chars[100],d[100];intj=0,i=0;且s中已賦字符串,請?zhí)羁找詫崿F(xiàn)拷貝。(注:不使用逗號表達式)
white(s[i]){d[j]=【】;j++;}
d[j]=0;
39.以下程序的輸出結(jié)果是【】。
main()
{charc='z';
printf("%c",c-25);}
40.若輸入tc,則程序的運行結(jié)果為【】。
#include<stdio.h>
main()
{charstr[40];
fscanf(stdin,"%s",str);
fprintf(stdout,"%s\n",str);
}
三、1.選擇題(20題)41.下列二維數(shù)組初始化語句中,不正確的是()。
A.intb[][2]={1,2,3,4,5,6,7};
B.intb[3][5]={0,0,0};
C.intb[][4]={{1,2},{3,4,5},{6}};
D.intb[3][2]={(1,2),(3,4),(5,6)};
42.關(guān)系模型允許定義3類數(shù)據(jù)約束,下列不屬于數(shù)據(jù)約束的是()。
A.實體完整性約束B.參照完整性約束C.屬性完整性約束D.用戶自定義的完整性約束
43.結(jié)構(gòu)化程序由三種基本結(jié)構(gòu)組成,三種基本結(jié)構(gòu)組成的算法A.可以完成任何復雜的任務B.只能完成部分復雜的任務C.只能完成符合結(jié)構(gòu)化的任務D.只能完成一些簡單的任務
44.
(2)
A.*sB.sC.*s++D.(*s)++
45.下列程序的輸出結(jié)果是()。#inelude<stdio.h>main(){inta[5]={2,4,6,8,10},*p,**k;p=a;k=&p;printf("%d",*(p++));printf("%d\n",**k);}
A.4B.22C.24D.46
46.以下程序的輸出結(jié)果是#include<stdio.h>main(){inta=15,b=21,m+0;switch(a%3){case0:m++;bteak;case1:m++;switch(b%2){default:m++;case0:m++;break;}}printf("%d\n",m);}
A.1B.2C.3D.4
47.有如下程序:#include<stdio.h>main(){intx=1,a=0,b=0;switch(x){casc0:b++;case1:a++;case2:a++;b++;}printf("a=%d,b=%d\n",a,b);}該程序的輸出結(jié)果是()。
A.a=2,b=1B.a=1,b=1C.a=1,b=0D.a=2,b=2
48.在“文件包含”預處理語句的使用形式中,當#include后面的文件名用"",(雙撇號)括起時,尋找被包含文件的方式是()。
A.直接按系統(tǒng)設定的標準方式搜索目錄
B.先在源程序所在的目錄搜索,如沒找到,再按系統(tǒng)設定的標準方式搜索
C.僅僅搜索源程序所在目錄
D.僅僅搜索當前目錄
49.關(guān)于語句“for(表達式1;表達式2;表達式3)”,下面說法中錯誤的是()。
A.for語句中的三個表達式不可以同時省略
B.for語句可以用于循環(huán)次數(shù)不確定的情況
C.for語句中表達式2可以是關(guān)系表達式或邏輯表達式
D.for語句中表達式1和表達式3可以是逗號表達式
50.若進棧序列為1,2,3,4,進棧過程中可以出棧,則下列不可能的一個出棧序列是______。
A.1,4,3,2B.2,3,4,1C.3,1,4,2D.3,4,2,1
51.下列特征中不是面向?qū)ο蠓椒ǖ闹饕卣鞯氖?)。
A.多態(tài)性B.繼承C.封裝性D.模塊化
52.有以下程序
#include<stdio.h>
main()
{FILE*fp;inti=20,j=30,k,n;
fp=fopen("d1.dat","w");
fprintf(fp,"%d\n",i);fprintf(fp,"%d\n",j);
fclose(fp);
fp=fopen("d1.dat","r");
fscanf(fp,"%d%d",&k,&n);printf("%d%d\n",k,n);
fclose(fp);}
程序運行后的輸出結(jié)果是
A.2030B.2050C.3050D.3020
53.若fp是指向某文件的指針,且已讀到文件末尾,則庫函數(shù)feof(fp)的返回值是______。
A.EOFB.-1C.非零值D.NULL
54.有以下程序
intadd(inta,intb){return(a+b);}
main()
{intk,(*f)(),a=5,b=10;
f=add;
…
}
則以下函數(shù)調(diào)用語句錯誤的是A.k=(*f)(a,b);B.k=add(a,b);C.k=*f(a,b);D.k=f(a,b);
55.下列程序的運行結(jié)果為()。
#include<stdio.h>
voidabc(char*str)
{inta,b,i,j;
for(i=j=0;str[i]!='\0';i++)
if(str[i]!='a')
str[j++]=str[j];
str[j]='\0';
}
voidmain()
{charStr[]="abcdef';
abc(str);
printf("str[]=%s",str);
}
A.str[]=bcdefB.str[]=abcdefC.str[]=aD.str[]=ab
56.下面關(guān)于完全二叉樹的敘述中,錯誤的是______。
A.除了最后—層外,每—層上的結(jié)點數(shù)均達到最大值
B.可能缺少若干個左右葉子結(jié)點
C.完全二叉樹—般不是滿二叉樹
D.具有結(jié)點的完全二叉樹的深度為[log2n]+1
57.某一個漢字的區(qū)位碼為(2113H),則其內(nèi)碼為()
A.(2199)10B.(C1B3H)C.(C1B3)10D.(B1B3H)
58.設有定義語句int(*f)(int);,則以下敘述正確的是()。
A.f是基類型為int的指針變量
B.f是指向函數(shù)的指針變量,該函數(shù)具有一個int類型的形參
C.f是指向int類型一維數(shù)組的指針變量
D.f是函數(shù)名,該函數(shù)的返回值是基類型為int類型的地址
59.有以下程序:#include<stdio.h>intf1(intx,inty){returnx>y?x:y;}intf2(imx,inty){returnx>y?y:x;}main()inta=4,b=3,c=5,d=2,e,f,g;e=f2(f1(a,b),f1(c,d));f=f1(f2(a,b),f2(e,d));g=a+b+e+d-e-f;printf("%d,%d,%d\n",e,f,g);}程序運行后的輸出結(jié)果是()。
A.4,3,7B.3,4,7C.5,2,7D.2,5,7
60.在對下列函數(shù)調(diào)用中,不正確的是()
A.max(a,b);B.max(3,a+b);C.max(3,5)D.intmax(a,b);
四、選擇題(20題)61.利用fseek函數(shù)可實現(xiàn)的操作是()。
A.實現(xiàn)文件的順序讀寫B(tài).改變文件的位置指針C.實現(xiàn)文件的隨機讀寫D.以上答案均正確
62.有以下程序:
程序運行后的輸出結(jié)果是()。
A.1B.2C.3D.4
63.若fp是指向某文件的指針,且尚未讀到文件末尾,則函數(shù)feof(fp)的返回值是()。
A.EOFB.-lC.非零值D.0
64.以下與存儲類別有關(guān)的四組說明符中,全部屬于靜態(tài)類的一組是()。
A.extem和static
B.auto和static
C.register和static
D.register和ex[erll
65.已知一棵二叉樹前序遍歷和中序遍歷分別為ABDEGCFH和DBGEACHF,則該二叉樹的后序遍歷為()。
A.GEDHFBCAB.DGEBHFCAC.ABCDEFGHD.ACBFEDHG
66.若a為int類型,且其值為3,則執(zhí)行完表達式a+=a-=a*a后,a的值是()。
A.-3B.9C.-12D.6
67.
68.若有以下說明:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;則值為6的表達式是_______。
A.*p+6B.*(p+6)C.*p+=5D.p+5
69.
有以下程序
#include<stdio.h>
structtt
(intx;structtt*y;)*P;
structtta[4]={20,a+1,15,a+2,30,a+3,17,a};
main
{inti;
p=a;
for(i=l;i<=2;i++){printf("%d,",p->x);P=p->y;}
}
程序的運行結(jié)果是()。
A.20,30,B.30,17,C.15,30,D.20,15,
70.假定int類型變量占用兩個字節(jié),其有定義intx[10]={0,2,4};,則數(shù)組x在內(nèi)存中所占字節(jié)數(shù)是
A.3B.6C.10D.20
71.下列SQL語句中,用于修改表結(jié)構(gòu)的命令式是A.A.Alter
B.Create
C.Update
D.Insert
72.設有圖書(圖書編號,書名,第一作者,出版社.、讀者(借書證號,姓名,單位,職稱.和借閱(借書證號,圖書編號,借書日期,還書日期.三張表,則表借閱的關(guān)鍵字(鍵或碼.為()。
A.借書證號,圖書編號
B.圖書編號,借書日期
C.借書日期,還書日期
D.借書證號,借書日期
73.關(guān)于以下程序段的描述,正確的是
x=-1;
do
{x=x*x-1;}while(!x);
A.是死循環(huán)B.循環(huán)執(zhí)行兩次
C.循環(huán)執(zhí)行一次D.有語法錯誤
74.有以下函數(shù):
函數(shù)的功能是()。
A.將Y所指字符串賦給x所指存儲空間
B.查找x和y所指字符串中是否有
C.統(tǒng)計x和y所指字符串中最前面連續(xù)相同的字符個數(shù)
D.統(tǒng)計x和Y所指字符串中相同的字符個數(shù)
75.按照c語言規(guī)定的用戶標識符命名規(guī)則,不能出現(xiàn)在標識符中的是()。
A.大寫字母B.下劃線C.數(shù)字字符D.連接符
76.設以下變量均為int類型,則值不等于7的表達式是()。
A.(x=y=6,x+y,x+1)
B.(x=y=6,x+y,y+1)
C.(x=6,x+1,y=6,x+y)
D.(y=6,y+1,x=y,x+1)
77.數(shù)據(jù)字典(DD)所定義的對象都包含于()。
A.軟件結(jié)構(gòu)圖B.方框圖C.數(shù)據(jù)流圖(DFD圖)D.程序流程圖
78.以下不能將a所指字符串正確復制到所指存儲空間的是()。
79.
80.
五、程序改錯題(1題)81.下列給定的程序中,函數(shù)proc()的功能是:用選擇法對數(shù)組中的n個元素按從大到小的順序進行排序。請修改程序中的錯誤,使它能得出正確的結(jié)果。注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設計題(1題)82.請編寫函數(shù)fun(),其功能是:找出2M整型二維數(shù)組中最大元素的值,并將此值返回調(diào)用函數(shù)。注意:部分源程序給出如下。請勿改動main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號中填入編寫的若干語句。試題程序:
參考答案
1.D解析:本題考查語句的基本構(gòu)成。選項A)中j=5后面少了一個分號:選項B)中少了“}”;選項C)不是一個完整的函數(shù)定義格式,一個完整的函數(shù)定義格式還包括一對花括號:選項D)正確,是一個空語句。
2.D解析:逗號表達式(++x,y++)的值應該是y++的值,由于y++是先引用后自增,所以y++的值是3。
3.B解析:子函數(shù)fun(intx,inty),將變量m和i聲明為局部靜態(tài)變量,因此第1次調(diào)用主函數(shù)后,局部靜態(tài)變量m和i的值為5和3,第1次函數(shù)調(diào)用結(jié)束時,它們的值不釋放保持不變,所以第2次調(diào)用時,局部靜態(tài)變量m和i的初始值分別為5和3,即在執(zhí)行“i+=m+1”時,i的值為9,因此最終m的值為11。
4.B解析:在C語言程序中,用單引號把一個字符或反斜線后跟一個特定的字符括起來表示一個字符常量。選項A)、C)和D)為正確的字符常量,而選項B)是用雙引號括起來的字符,表示一個字符串常量。
5.A本題主要考查的知識點是:break和IContinue語句。break語句可以用于swhitCh或循環(huán)體內(nèi),作用是跳/出switCh或循環(huán)體。Continue語句只能用于循環(huán)體內(nèi),作用是結(jié)束當前循環(huán),進入下次循環(huán)。故本題中只有選項A)是正確的。
6.E
7.A考查用指針來引用字符數(shù)組元素的方法。指針pl+k相當于指針pl向后移動了k個字符的位置,指針p2同理。
8.Bstructdate中包含year、month、day這3個整型變量,一個整型變量占2個字節(jié);sizeof是求所占字節(jié)數(shù)的運算符。
9.A部門到職員是一對多的,職員到部門是多對一的,因此,實體部門和職員間的聯(lián)系是l:m聯(lián)系。
10.B解析:選項A)定義的是長度為5的數(shù)組元素,但初值有6個元素,所以錯誤;選項C)不符合數(shù)組定義形式,數(shù)組名后應加上“[];選項D)的類型說明符錯誤,應改為char;選項B)中的0,1,2,3,4,5分別表示對應字符的ASCII碼,所以正確。
11.B
12.B解析:字符數(shù)組元素作函數(shù)參數(shù)是單向的值傳遞。函數(shù)cchar的功能是將大寫字母轉(zhuǎn)換為小寫字母。主函數(shù)中while循環(huán)語句的條件是判斷指針p當前指向的字符是否為空,若不為空,則調(diào)用函數(shù)cchar,即主函數(shù)中通過循環(huán)語句將字符串'ABC+abc=defDEF'中的大寫字母全部轉(zhuǎn)換為小寫字母,因此printf的輸出結(jié)果為選項B。
13.B
14.B指針自增或自減1,移動的字節(jié)數(shù)與指針變量的基類型有關(guān),假設指針變量p基類型為int類型,那么“p=p+1”表示指針P移動4個字節(jié)(通常int類型占4個字節(jié)),選項A錯誤;指針變量具有基類型,基類型不同的指針變量不能直接相互賦值,選項B正確;將0賦給指針變量,表示指針變量的值為空,這是合法的,選項C錯誤;通過指針變量存儲指向變量的地址并通過指針存取變量的值,稱為“間接存取”方式,選項D錯誤。故本題答案為B選項。
15.D
16.B
17.B解析:本題考查數(shù)據(jù)庫系統(tǒng)的基本概念和知識。
數(shù)據(jù)庫系統(tǒng)除了數(shù)據(jù)庫管理軟件之外,還心須有其他相關(guān)軟件的支持。這些軟件包括操作系統(tǒng)、編譯系統(tǒng)、應用軟件開發(fā)工具等。對于大型的多用戶數(shù)據(jù)庫系統(tǒng)和網(wǎng)絡數(shù)據(jù)庫系統(tǒng),還需要多用戶系統(tǒng)軟件和網(wǎng)絡系統(tǒng)軟件的支持。因此,選項A的說法是錯誤的。
數(shù)據(jù)庫可以看成是長期存儲在計算機內(nèi)的、大量的、有結(jié)構(gòu)的和可共享的數(shù)據(jù)集合。因此,數(shù)據(jù)庫具有為各種用戶所共享的特點。不同的用戶可以使用同一個數(shù)據(jù)庫,可以取出它們所需要的子集,而且容許子集任意重疊。數(shù)據(jù)庫的根本目標是要解決數(shù)據(jù)的共享問題。因此,選項B的說法是正確的。
通常將引入數(shù)據(jù)庫技術(shù)的計算機系統(tǒng)稱為數(shù)據(jù)庫系統(tǒng)。一個數(shù)據(jù)庫系統(tǒng)通常由五個部分組成,包括相關(guān)計算機的硬件、數(shù)據(jù)庫集合、數(shù)據(jù)庫管理系統(tǒng)、相關(guān)軟件和人員。
因此,選項C的說法是錯誤的。
因此,本題的正確答案是選項B。
18.D
19.A
20.A在scanf函數(shù)的格式字符前可以加入一個正整數(shù)指定輸入數(shù)據(jù)所占的寬度,但不可以對實數(shù)指定小數(shù)位的寬度,選項A錯誤,其他選項正確。故本題答案為A選項。
21.6868解析:本題考查如何用指針引用數(shù)組元素。本題先定義了一個指向字符型數(shù)組str的指針p,指針p指向數(shù)組str的首地址,p+3將指針指向str[3],*(p+3)指的是字符“D”,輸出時是以“%d”格式輸出的,即輸出其相應ASCII碼值68。
22.操作系統(tǒng)操作系統(tǒng)解析:數(shù)據(jù)庫管理系統(tǒng)是幫助用戶創(chuàng)建和管理數(shù)據(jù)庫的應用程序的集合。因此,數(shù)據(jù)庫管理系統(tǒng)需要操作系統(tǒng)的支持,為用戶提供服務。
23.7979解析:因為在調(diào)用子函數(shù)時進行的是數(shù)值傳遞,調(diào)用于函數(shù)并不能改變實參的值,所以經(jīng)過調(diào)用子函數(shù),c、d的值并沒有發(fā)生變化還是原來的值。
24.x>5||x<-5或abs(x)>5x>5||x<-5或abs(x)>5解析:要使整數(shù)x的絕對值大于5,則x大于5或x小于-5,用C語言表示即為:x>5||x<-5或者abs(x)>5。
25.關(guān)系關(guān)系解析:關(guān)系模型用;維表表示,則每個;維表代表一種關(guān)系。
26.DDBBCCDDBBCC解析:C語言對枚舉的定義規(guī)定:在枚舉中聲明的各個枚舉元素,如果沒有明確指出某個枚舉元素的值,它的上—個元素存在并有明確值的情況下,這個牧舉元素的值為其上一個元素的值+1。在本題中,沒有明確說明枚舉元素em3的值,則em3=cm2+1=1+1=2,進而可知,在printf()打印函數(shù)中,要打印的數(shù)組元素是aa[3]、aa[1]、aa[2],因此最后的打印結(jié)果應當為'DDBBCC'。
27.繼承繼承解析:在面向?qū)ο蟮某绦蛟O計方法中,某些屬性和方法是可以共享的,由于類從父類中繼承而來,這樣提高了軟件的可重用性。
28.11解析:本題中的ch是一個字符變量,其初始值為'$'(非0值即為真),所以!ch的結(jié)果為假,此時&&右邊的i++被“短路”,即不會被計算。由此可見,i的值不會改變,故本題應該填1。
29.45994599解析:要注意每條證語句后面是三條語句,而不是一條語句。執(zhí)行第一條if語句時,條件表達式不成立,執(zhí)行a=c;c=t;,此時a=5,c=99;執(zhí)行第二條if語句時,條件表達式成立,執(zhí)行t=b;b=a;a=t;交換a,b的值,輸出結(jié)果為4,5和99。
30.88解析:fabs函數(shù)功能是求x的絕對值,計算結(jié)果為double型。pow功能是計算x的y次方的值,計算結(jié)果同樣為double型。所以本題表達式相當于2.0的3.0次方,結(jié)果為8.000000。
31.a[i-1]或a[-1+i]a[9-i]或a[-i+9]a[i-1]或a[-1+i]\r\na[9-i]或a[-i+9]
32.2468(若字符間有空格扣1分)2468(若字符間有空格扣1分)
33.countryside
34.p=p*ip=p/ip=p*ip=p/i解析:本題中,欲求p的值,需要先求m!,n!,(m-n)!,可分別用循環(huán)語句實現(xiàn)。
35.ASCⅡ
36.i<10i%3!=0i<10\r\ni%3!=0解析:本題要求輸出100以內(nèi)能被3整除且個位數(shù)為6的所有整數(shù),程序中j=i*10+6;語句是求個位數(shù)為6的整數(shù),由此可得出程序的循環(huán)次數(shù)為i<10。然后通過if語句判斷整數(shù)是否能被3整除,若不能則繼續(xù)下一次循環(huán),若能則輸出該整數(shù),所以邏輯表達式為j%3!=0。
37.輸出結(jié)果輸出結(jié)果解析:注意:測試的基本方法和步驟。
38.s[i++]s[i++]解析:本題中為了能實現(xiàn)字符串的拷貝,需要使字符數(shù)組s從頭到尾依次遍歷其有元素。本題應使用i舶自增后置來實現(xiàn)。
39.aa解析:“z”的ASCII碼值為122,經(jīng)過c-25運算后得97,以字符形式輸出是a。
40.tc
41.D解析:在對二維數(shù)組元素賦初值時,可以只對部分元素賦初值,未賦初值的元素自動取0;C語言規(guī)定,對于二維數(shù)組,只可以省略第1個方括號中的常量表達式,而不能省略第2個方括號中的常量表達式;賦的初值不能多于事先定義好的數(shù)組元素個數(shù)。
在選項D)賦值表達式中,對每一維的元素賦初值應用{},而不是()。
42.C詳細解答:
關(guān)系模型允許3類數(shù)據(jù)約束,它們是:
實體完整性約束
該約束要求關(guān)系的主鍵中屬性值不能為空值,這是數(shù)據(jù)庫完整性的最基本要求。
參照完整性約束
該約束是關(guān)系之間相關(guān)聯(lián)的基本約束,它不允許關(guān)系引用不存在的元組:即在關(guān)系中的外鍵要么是所關(guān)聯(lián)關(guān)系中實際存在的元組,要么就為空值。
用戶定義的完整性約束
用戶定義的完整性就是針對某一具體關(guān)系數(shù)據(jù)庫的約束條件,它反映某一具體應用所涉及的數(shù)據(jù)必須滿足的語義要求。cC
43.A解析:C程序由順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)三種基本的結(jié)構(gòu)組成,這三種結(jié)構(gòu)可以組成任何復雜的C程序,即可以完成任何復雜的任務。
44.A
45.C解析:指針變量p指向數(shù)組a的首地址,并把指針變量p的地址賦給指向指針的指針變量k。第一個printf函數(shù)輸出2,第二個printf函數(shù)輸出4。
46.A
47.A解析:該程序的關(guān)鍵是要搞清楚程序執(zhí)行的路線。由于x的值等于1,所以在switch語句中,程序從case1后面的語句開始執(zhí)行。由于case1后面沒有break語句,所以程序順序執(zhí)行case2后面的語句。程序共執(zhí)行了三條語句:a++;a++;b++;所以,變量a和b最后的值分別為2和l。選項A)正確。
48.B解析:本題考查庫函數(shù)調(diào)用的知識點。格式1:#include<文件名>,預處理程序在標準目錄下查找指定的文件;格式2:#include'文件名',預處理程序首先在引用被包含文件的源文件所在的目錄下搜索指定的文件,如沒找到,再按系統(tǒng)指定的標準目錄搜索。
49.A解析:for語句中的3個表達式可以同時省略,但兩個;不能省略。所以選項A的說法錯誤。
50.C解析:棧是一種后進先出表,選項C中,先出棧的是3,說明此時棧內(nèi)必然有1,2,由于1先于2進淺,所以1不可能在2之前出棧,故選項C這種出棧序列是不可能的。
51.DD?!窘馕觥棵嫦?qū)ο笤O計方法與面向過程設計方法有本質(zhì)的不同,其基本原理是:使用現(xiàn)實世界的概念抽象地思考問題從而自然地解決問題。其特點包括:分類性、多態(tài)性、封裝性、模塊獨立性、繼承和多態(tài)性等。模塊化是結(jié)構(gòu)化程序設計的特點。
52.A解析:本題中,最主要的是掌握幾個有關(guān)文件函數(shù)的應用。
函數(shù)名:fopen
功能:打開一個文件
調(diào)用方式FILE*fp;
fp=fopen(文件名,使用文件方式);
函數(shù)名:fprintf
功能:傳送格式化輸出到一個文件中
調(diào)用方式:fprintf(文件指針,格式字符串,輸出表列);
函數(shù)名:fclose
功能:關(guān)閉一個文件
調(diào)用方式:fclose(文件指針);
函數(shù)名:fscanf
功能:從磁盤文件執(zhí)行格式化輸入
調(diào)用方式:fscanf(文件指針,格式字符串,輸入列表)。
53.C
54.C答案C
解析:在語句“k=*f(a,b)”中,由于“()”的優(yōu)先級高于“*”,所以“*f(a,b);”表示其返回類型為指針的帶有兩個整型參數(shù)的函數(shù)。
55.A解析:本題考查函數(shù)調(diào)用時的參數(shù)傳遞。通過函數(shù)abc的執(zhí)行,將字符串中的字母a去掉,保留剩下的。由于是通過指針調(diào)用,所以改變字符串的結(jié)果。
56.B解析:滿二叉樹指除最后一層外每一層上所有結(jié)點都有兩個子結(jié)點的二叉樹。完全二叉樹指除最后一層外,每一層上的結(jié)點數(shù)均達到最大值,在最后—層上只缺少右邊的若干子結(jié)點(葉子結(jié)點)的二叉樹。
57.B
58.B本題考查的是指向函數(shù)的指針。語句“int(*f)(int);”是對一個函數(shù)的聲明,其中f是指向該函數(shù)的指針,該函數(shù)有一個整型的參數(shù),函數(shù)返回值類型為整型。故答案選B)。
59.A解析:函數(shù)f1的功能是返回兩個數(shù)中的較大數(shù),熳的功能是返回兩個數(shù)中較小的數(shù)。具體執(zhí)行過程如下:
①執(zhí)行f1(a,b),即f1(4,3),返回值引執(zhí)行f1(c,d),即f1(5,2),返回值5;執(zhí)行e=f2(f1(a,b),f1(c,d)),即f2(4,5),返回值4。
②執(zhí)行f2(a,b),即f2(4,3),返回值3;執(zhí)行f2(c,d),即f2(5,2),返回值2;執(zhí)行f=f1(f2(a,b),f2(c,d)),即f1(3,2),返回值3。
③執(zhí)行g(shù)=a+b+c+d+e+f,即g=7。所以,程序輸出結(jié)果為4,3,7。
60.D
61.D解析:改變文件位置指針函數(shù)fseek()的功能:①改變文件的位置指針;②輔助實現(xiàn)文件的順序讀寫;③輔助實現(xiàn)文件的隨機讀寫。
62.A在函數(shù)point函數(shù)調(diào)用時,系統(tǒng)自動為函數(shù)的形參P分配內(nèi)存空間,并賦值為實參P的值。當執(zhí)行語句P+=3;時,系統(tǒng)操作的是形參P的內(nèi)存空間,更改形參P的內(nèi)容,而實參指針變量P的值未受影響,即指針變量作為函數(shù)參
63.D本題考查leon(tp)函數(shù),其功能是:測試所指的文件的位置指針是否已達到文件尾,如果已達到文件尾,則函數(shù)返回非0值;否則返回0,表示文件未結(jié)束。
64.Aauto用于聲明變量的生存期為自動,即將不在任何類、結(jié)構(gòu)、枚舉、聯(lián)合和函數(shù)中定義的變量視為全局變量,而在函數(shù)中定義的變量視為局部變量。這個關(guān)鍵字通常會被省,因為所有的變量默認就是aut0的。register定義的變量告訴編譯器盡可能的將變量存在CPU內(nèi)部寄存器中而不是通過內(nèi)存尋址訪問以提高效率。static變量會被放在程序的全局存儲區(qū)中,這樣可以在下一次調(diào)用的時候還可以保持原來的賦值。這一點是它與堆棧變量和堆變量的區(qū)別。變量用static告知編譯器,自己僅僅在變量的作用范圍內(nèi)可見。這一點是它與全局變量的區(qū)別。當static用來修飾全局變量時,它就改變了全局變量的作用域。extern限制在了當前文件里,但是沒有改變其存放位置,還是在全局靜態(tài)儲存區(qū)。extem外部聲明,該變量在其他地方有被定義過。因此,答案為A選項。
65.B遍歷是按照一定規(guī)則對樹中全部結(jié)點逐一訪問的方法。二叉樹可由根結(jié)點、左子樹和右子樹三個部分組成。根據(jù)對根結(jié)點訪問的先后順序,可將遍歷方法分為先序遍歷、中序遍歷和后序遍歷三種。先序遍歷首先訪問根結(jié)點,再先序遍歷左子樹,最后先序遍歷右子樹,可見遍歷是一個遞歸的過程。求樹的遍歷這種問題的關(guān)鍵在于認清每棵子樹的根結(jié)點的訪問順序。題目給出了一棵樹的先序遍歷和中序遍歷的結(jié)點順序,先序遍歷的第一個結(jié)點為整棵樹的根結(jié)點,即根結(jié)點為A,而在中序遍歷的順序中,結(jié)點A的前面還有DBGE四個結(jié)點,表示這四個結(jié)點構(gòu)成以A為結(jié)點的二叉樹的左子樹,同理,中序遍歷中A結(jié)點后面的CHF三個結(jié)點構(gòu)成以A為結(jié)點的二叉樹的右子樹。于是原來的對一棵二叉樹的分析變?yōu)閷υ摱鏄涞淖笥易訕涞姆治觥R宰笞訕錇槔?,左子樹結(jié)點的先序遍歷為BDEG,中序遍歷為DBGE,該子樹的根結(jié)點為B,B結(jié)點的左子樹為一個結(jié)點D,右子樹為以E為根結(jié)點,結(jié)點G是E的左孩子。同理,可對CH
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 蘑菇種植購買協(xié)議書
- 征地占用補償協(xié)議書
- 延期運糧協(xié)議書范本
- 貨物銷售協(xié)議書文本
- 湯池桌椅轉(zhuǎn)讓協(xié)議書
- 農(nóng)業(yè)茶葉生態(tài)協(xié)議書
- 自助柜面服務協(xié)議書
- 酒店海鮮供貨協(xié)議書
- 乙方股東退股協(xié)議書
- 京東再次分期協(xié)議書
- DB33 1036-2021 公共建筑節(jié)能設計標準
- 2024光伏并網(wǎng)柜技術(shù)規(guī)范
- 尼康D3200中文說明書(完整版)
- 過敏性休克搶救應急演練
- 脫硫培訓課件大綱
- 諾如病毒課件教學課件
- 鋼結(jié)構(gòu)廊架工程施工方案
- 戰(zhàn)略合作管理制度
- 2023年北京市初三二模數(shù)學試題匯編:新定義(第28題)
- 大學班干部的培訓課件
評論
0/150
提交評論