




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021-2022年黑龍江省大慶市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷一(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.有以下程序:#include<stdio.h>main(){inti,t[][3]={9,8,7,6,5,4,3,2,1};for(i=0;i<3;i++)printf(“%d”,t[2-i][i]);}程序的運(yùn)行結(jié)果是()。
A.357B.753C.369D.751
2.有以下程序,其中函數(shù)f的功能是將多個(gè)字符串按字典順序排序:#include<string.h>voidf(char*p[],intn){char*t;inti,j;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)ifstrcmp(p[i],p[j])>0{t=p[i]p[i]=p[j];p[j]=t;}}main(){char*p[5]=("abc","aabdfg","abbd","dcdbe","cd"};f(p,5);printf("%d\n",strlen(p[1]));}程序運(yùn)行后的輸出結(jié)果是______。A.2B.3C.6D.4
3.采用鄰接表存儲(chǔ)的圖的深度優(yōu)先遍歷算法類似于二叉樹的()。
A.先序遍歷B.中序遍歷C.后序遍歷D.按層遍歷
4.廣告系統(tǒng)為了做地理位置定向,將IPV4分割為627672個(gè)區(qū)間,并標(biāo)識(shí)了地理位置信息,區(qū)間之間無(wú)重疊,用二分查找將IP地址映射到地理位置信息,請(qǐng)問(wèn)在最壞的情況下,需要查找多少次?()
A.17B.18C.19D.20
5.
6.有下列程序:main(){char*P[]={"3697","2584");inti,j;longnum=0;for(i=0;i<2;i++){j=0;while(p[i][j]!=\0){if((p[i][j]-t\0)%2)num=10*num+p[j][j]-0;j+=2;}}printf("%d\n",num);}程序執(zhí)行后的輸出結(jié)果是()。A.35B.37C.39D.3975
7.下列敘述中正確的是()。
A.為了建立一個(gè)關(guān)系,首先要構(gòu)造數(shù)據(jù)的邏輯關(guān)系
B.表示關(guān)系的二維表中各元組的每一個(gè)分量還可以分成若干數(shù)據(jù)項(xiàng)
C.一個(gè)關(guān)系的屬性名表稱為關(guān)系模式
D.一個(gè)關(guān)系可以包括多個(gè)二維表
8.有以下程序程序執(zhí)行后的輸出結(jié)果是()。
A.y=-IB.y=oC.y=lD.while構(gòu)成無(wú)限循環(huán).
9.以下不能對(duì)二維數(shù)組a進(jìn)行正確初始化的語(yǔ)句是
A.inta[2][3]={0};
B.inta[][3]={{1,2},{0}};
C.inta[2)[3]={{1,2},{3,4},{5,6}};
D.inta[][3]={1,2,3,4,5,6};
10.下列描述中正確的是()。
A.程序就是軟件
B.軟件開發(fā)不受計(jì)算機(jī)系統(tǒng)的限制
C.軟件既是邏輯實(shí)體,又是物理實(shí)體
D.軟件是程序、數(shù)據(jù)與相關(guān)文檔的集合
11.
12.
13.有以下程序#include<stdio.h>main(){charcl,c2;c1=A+8-4c2=A+8-5;printf("%C,%d\n",cl,c2);}已知字母A的ASCIl碼為65,程序運(yùn)行后的輸出結(jié)果是()。A.E,69B.D,69C.E,DD.輸出無(wú)定值
14.若定義了函數(shù)double*function(),則函數(shù)function的返回值為()。
A.實(shí)數(shù)型B.實(shí)數(shù)的地址C.指向函數(shù)的指針D.函數(shù)的地址
15.對(duì)以下四個(gè)序列用直接插入排序方法由小到大進(jìn)行排序時(shí),元素比較次數(shù)最少的是()
A.89,27,35,78,41,15
B.27,35,41,16,89,70
C.15,27,46,40,64,85
D.90,80,45,38,30,25
16.函數(shù)fread(buffer,size,count,fp)中buffer代表的是()。
A.—個(gè)存儲(chǔ)區(qū),存放要讀的數(shù)據(jù)項(xiàng)
B.一個(gè)整數(shù),代表要讀入的數(shù)據(jù)項(xiàng)總數(shù)
C.一個(gè)文件指針,指向要讀的文件
D.—個(gè)指針,指向讀入數(shù)據(jù)要存放的地址
17.輸入序列為(A,B,C,D),不可能得到的輸出序列是______.
A.(A,B,C,D)B.(D,C,B,A)C.(A,C,D,B)D.(C,A,B,D)
18.
A.if(x>0)y=1;elseif(x==0)y=0;elsey=-1;
B.y=0;if(x>0)y=1;elseif(x<0)y=-1;
C.y=0;if(x>=0)if(x>0)y=1;e1sey=-1;
D.if(x>=0)if(x>0)y=1;elsey=0:elsey=-1;
19.以下不正確的敘述是A.A.在C程序中,逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低
B.在C程序中,APH和aph是兩個(gè)不同的變量
C.若a和b類型相同,在計(jì)算了賦值表達(dá)式a=b后b中的值將放入a中,而b中的值不變
D.當(dāng)從鍵盤輸入數(shù)據(jù)時(shí),對(duì)于整型變量只能輸入整型數(shù)值,對(duì)于實(shí)型變量只能輸入實(shí)型數(shù)值
20.使用深度優(yōu)先算法遍歷下圖,遍歷的順序?yàn)?)A.ABCDEFGB.ABDCFEGC.ABDECFGD.ABCDFEG
二、2.填空題(20題)21.下面程序的功能是根據(jù)公式e=1+1/1!+1/2!+1/3!+1/4!+...計(jì)算e的近似值,精度要求為10-5。請(qǐng)?zhí)羁铡?/p>
main()
{intn;
doublee=1.0,t=1.0;
for(n=1;【】n++);
{【】e+=t;}
printf("%f\n",e);}
22.以下說(shuō)明語(yǔ)句中,【】是結(jié)構(gòu)體類型名。
typedefstruct
{intn;
charch[8];
}PER;
23.以下程序運(yùn)行后的輸出結(jié)果是【】。
#include<stdio,h>
main()
charc1,c2;
for(el='0',c2='9';e1<c2;c1++,c2--)printf("%c%c",c1,c2);
printf("\n");
}
24.有以下定義和語(yǔ)句,則sizeof(a)的值是【】,而sizeof(a.share)的值是【】。
structdate
{intday;
intmouth;
intyear;
union{intshare1;
floatshare2;
}share;
}a;
25.以下程序運(yùn)行后的輸出結(jié)果是()。
#include
char*ss(char*s)
{char*p,t;
P=s+1;t=*s;
while(*p){*(P-1)=*P;P++;}
*(P-1)=t;
returns;
}
main()
{char*p,str[10]="abcdefgh";
p=ss(str);
printf("%s\n",p);
}
26.若有定義doublea[5];,則a數(shù)組元素下標(biāo)的上限為______。
27.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,用來(lái)請(qǐng)求對(duì)象執(zhí)行某一處理或回答某些信息的要求稱為【】。
28.下列程序的運(yùn)行結(jié)果是______。
main()
{intx=1,y=2,z=3;
printf("%d,",x<y?y:x);
printf("%d,",z<y?x++:y++);
printf("%d,%d",x,y);
}
29.用以下語(yǔ)句調(diào)用庫(kù)函數(shù)malloc,使字符指針st指向具有11個(gè)字節(jié)的動(dòng)態(tài)存儲(chǔ)空間,請(qǐng)?zhí)羁?。st=(char*)【】;
30.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{
chara[]="Language",b[]"Programe";
char*p1,*p2;
intk;
p1=a,p2=b;
for(k=0;k<=7;k++)
if(*(p1+k==*(p2+k))printf("%c",*(p1+k));
}
31.沒(méi)有chara,b;,,若要通過(guò)a&b運(yùn)算屏蔽掉a中的其他位,只保留第2位和第8位(右起為第1位),則b的二進(jìn)制是【】。
32.在面向?qū)ο蠓椒ㄖ?,類的?shí)例稱為______。
33.以下程序的運(yùn)行結(jié)果是【】。
#include<stdio.h>
#include<string.h>
typcdefstructstudent
{charname[10];
longsno;
floatscore;
}STU;
main()
{STUa={"Zhangsan",2001,95},b={"Shangxian",2002,90},
c={"Anhua",2003,95},d,*p=&d;
d=a;
if(strcmp(,)>0)d=b;
if(strcmp(,)>0)d=c;
printf("%1d%s\n",d.sno,p->name);
}
34.在程序設(shè)計(jì)階段應(yīng)該采取______和逐步求精的方法,把一個(gè)模塊的功能逐步分解,細(xì)化為一系列具體的步驟,繼而用某種程序設(shè)計(jì)語(yǔ)言寫成程序。
35.以下程序的運(yùn)行結(jié)果是【】。
#defineMAX(a,b)(a>b?a:b)+1
main()
{inti=6,j=8,k;
printf("%d\n",MAX(i,j));
}
36.對(duì)數(shù)組中的元素值進(jìn)行排序。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{inta[]={2,4,15,3,17,5,8,23,9,7,11,13,}i,j,k;
for(k=0;k<12;k++)
for(i=k;i<12;i++)
if(a[i]>【】)
{j=a[i];
a[i]=【】;
【】=j(luò);}
for(i=0;i<12;i++)
printf("%4d",a[i]);
printf("\n");
}
37.以下程序的輸出結(jié)果是【】。
#defineMCRA(m)2*m
#defineMCRB(n,m)2*MCRA(n)+m
main()
{
inti=2,j=3;
printf("%d\n",MCRB(j,MCRA(i)));
}
38.軟件工程研究的內(nèi)容主要包括:【】技術(shù)和軟件工程管理。
39.關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)能實(shí)現(xiàn)的專門關(guān)系運(yùn)算包括選擇、連接和【】。
40.若按功能劃分,軟件測(cè)試的方法通常分為白盒測(cè)試方法和【】測(cè)試方法。
三、1.選擇題(20題)41.假定w、x、y、m均為int型變量,則執(zhí)行下列的語(yǔ)句后,m的值是()。w=6,x=4,y=3;m=(w<x)?w:x;m=(m<y)?m:y;
A.3B.4C.5D.6
42.若變量已正確定義,有以下程序段inta=3,b=5,c=7;if(a>b)a=b;c=a;if(c!=a)c=b;printf("%d,%d,%d\n",a,b,c);其輸出結(jié)果是
A.程序段有語(yǔ)法錯(cuò)B.3,5,3C.3,5,5D.3,5,7
43.有以下程序#include<stdio.h>voidfun(int*s,intn1,intn2){inti,j,t;i=n1j=n2;while(i<j){t=s[i];s[i]=s[j];s[j]=t;i++;j--;}}main(){inta[10]={1,2,3,4,5,6,7,8,9,0},k;fun(a,0,3);fun(a,4,9);fun(a,0,9);for(k=0;k<10;k++)printf("%d",a[k]);printf("\n");}程序的運(yùn)行結(jié)果是
A.987654321B.4321098765C.5678901234D.987651234
44.下列關(guān)于隊(duì)列的敘述中正確的是______。A.在隊(duì)列中只能插入數(shù)據(jù)B.在隊(duì)列中只能刪除數(shù)據(jù)C.隊(duì)列是先進(jìn)先出的線性表D.隊(duì)列是先進(jìn)后出的線性表
45.下列合法的數(shù)組定義是______。
A.inta[]="string";
B.inta[5]={0,1,2,3,4,5};
C.chars="string";
D.chara[]={0,1,2,3,4,5};
46.若有說(shuō)明語(yǔ)句:inta,b,c,*d=&c;,則能正確從鍵盤讀入3個(gè)整數(shù)分別賦給變量a、b、c的語(yǔ)句是()。
A.scanf("%d%d%d",&a,&b,d);
B.scanf("%d%d%d",&a,&b,&d);
C.scanf("%d%d%d",a,b,d);
D.scanf("%d%d%d",a,b,*d);
47.設(shè)有如下程序:#include'string.h"main(){staticchars1[20],s2[20];scanf("%s",s1);scanf("%s",s2);if(strcmp(s1,s2))printf("@");elseprintf("$");printf("%d\n",strlen(strcat(s1,s2)));}如果從鍵盤上輸入name1<回車>name2<回車>,則程序運(yùn)行后的輸出結(jié)果是()。
A.$9B.@11C.$10D.@10
48.對(duì)于下列定義,不正確的敘述是()。uniondata{inta;charb;doublec;}x=y;
A.變量x所占內(nèi)存的長(zhǎng)度等于成員c的長(zhǎng)度
B.變量x的地址和它的各成員地址都是相同的
C.可以在定義時(shí)對(duì)x初始化
D.不能對(duì)變量x賦值,故x=y非法
49.下列說(shuō)法錯(cuò)誤的是()。
A.下列結(jié)構(gòu)體定義時(shí),占據(jù)了5個(gè)字節(jié)的空間structstudent{intnum;intage;charsex;}
B.結(jié)構(gòu)體的成員名可以與程序中的變量名相同
C.對(duì)結(jié)構(gòu)體中的成員可以單獨(dú)使用,它的作用相當(dāng)于普通變量
D.結(jié)構(gòu)體可以嵌套定義
50.有以下程序段
intj;floaty;charname[50];
scanf("%2d%f%s",&j,&y,name);
當(dāng)執(zhí)行上述程序段,從鍵盤上輸入555667777abc后,y的值為
A.55566.0B.566.0C.7777.0D.566777.0
51.設(shè)x、y、t均為int型變量,則執(zhí)行語(yǔ)句x=y=3;t=++x||++y;后,y的值為______。
A.不定值B.4C.3D.1
52.在說(shuō)明語(yǔ)句int*f()中,標(biāo)識(shí)符f代表的是______。
A.—個(gè)用于指向整型數(shù)據(jù)的指針變量
B.—個(gè)用于指向一維數(shù)組的行指針
C.—個(gè)用于指向函數(shù)的指針變量
D.一個(gè)返回值為指針型的函數(shù)名
53.設(shè)有定義:inta,*pa=&a;以下scanf語(yǔ)句中能正確為變量a讀入數(shù)據(jù)的是()。
A.scanf("%d",pA);
B.scanf("%d",A);
C.scanf("%d",&pA);
D.seanf("%d",*pA);
54.下面敘述正確的是_______。
A.算法的執(zhí)行效率與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)無(wú)關(guān)
B.算法的空間復(fù)雜度是指算法程序中指令(或語(yǔ)句)的條數(shù)
C.算法的有窮性是指算法必須能在執(zhí)行有限個(gè)步驟之后終止
D.算法的時(shí)間復(fù)雜度是指執(zhí)行算法程序所需要的時(shí)間
55.有以下程序:fun(intx){intp;if(x=0||x==1)return(3);p=x-fun(x-2);returnp;}main(){printf("%d\n",fun(7));}執(zhí)行后的輸出結(jié)果是()。
A.7B.3C.2D.0
56.有以下程序:main(){intn=0,m=l,x=2;if(!n)x-=l:if(!m)x-=2;if(!x)x-=3;printf("%d\n",x);}執(zhí)行后的輸出結(jié)果是______。
A.2B.1C.3D.6
57.若運(yùn)行以下程序時(shí),從鍵盤輸入ADescriptor<CR>(<CR>表示回車),則下面程序的運(yùn)行結(jié)果是#include<stdio.h>main(){charc;intv0=1,v1=0,v2=0;do{switch(c=getchar()){case'a':case'A':case'e':case'E':case'i':case'I':case'o':case'O':case'u':case'U':v1+=1default:v0+=1;v2+=1;}}while(c!='\n');printf("v0=%d,v1=%d,v2=%d\n",v0,v1,v2);}
A.v0=7,v1=4,v2=7
B.v0=8,v1=4,v2=8
C.v0=11,v1=4,v2=11
D.v0=13,v1=4,v2=12
58.與數(shù)學(xué)式子應(yīng)的C語(yǔ)言表達(dá)式是
A.3*xn/(2*x-1)
B.3*x**n/(2*x-1)
C.3*pow(x,n)*(1/(2*x-1))
D.3*pow(n,x)/(2*x-1)
59.有以下程序:#include<stdio.h>main(){inti=0,a=0;while(i<20){for(;;){if((i%5)==0)break;elsei--;}i+=13,a+=i;}pfintf("%d\n",A);}程序的輸出結(jié)果是()。
A.62B.63C.23D.36
60.若二維數(shù)組a有m列,且設(shè)a[0][0]位于數(shù)組的第一個(gè)位置上,則計(jì)算任意元素a[i][j]在數(shù)組中位置的公式為______。
A.i*m+jB.j*m+iC.i*m+j-1D.i*m+j+1
四、選擇題(20題)61.
62.
63.
64.在下述程序中,判斷條件“i>j”共執(zhí)行的次數(shù)是
main()
{inti=0,j=10,k=2,s=0;
for(;;)
{i+=k;
if(i>j)
{printf("%d",s);
break;
}s+=i;
}
}
A.4B.7
C.5D.6
65.
66.
有以下結(jié)構(gòu)體說(shuō)明和變量的定義,且指針P指向變量a,指針q指向變量b,則不能把結(jié)點(diǎn)b連接到結(jié)點(diǎn)a之后的語(yǔ)句是()。
structnode
{chardata;
structnode*next:
}a,b,*p=&a,*q=&b;
A.a.next=q;B.P.next=&b;C.p->next=&b;D.(*p).next=q;
67.
68.不能把字符串:Hello!賦給數(shù)組b的語(yǔ)句是()。
A.charb[10]={’H’,’e’,’l’,’l’,’o’,’!’};
B.charb[10];b="Hello!";
C.charb[10];strcpy(b,"Hello!");
D.charb[10]="Hello!";
69.
70.有以下程序:
程序運(yùn)行時(shí),輸入的值在哪個(gè)范圍才會(huì)有輸出結(jié)果()。
A.不等于10的整數(shù)
B.大于3且不等于l0的整數(shù)
C.大于3或等于l0的整數(shù)
D.小于3的整數(shù)
71.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.7,4B.4,10C.8,8D.10,10
72.(29)有以下程序
#include<stdio.h>
main()
{ints;
scanf("%d",&s);
while(s>0)
{switch(s)
{case1:printf("%d",s+5);
case2:printf("%d",s+4);break;
case3:printf("%d",s+3);
default:printf("%d",s+1);break;
}
scanf("%d",&s);
}
}
運(yùn)行時(shí),若輸入123450<回車>,則輸出結(jié)果是
A)6566456
B)66656
C)66666
D)6666656
73.
74.
75.有以下程序程序運(yùn)托舌的輸出結(jié)果是()。
A.1,2B.1,0C.3,2D.0,0
76.下列關(guān)于C語(yǔ)言數(shù)據(jù)文件的敘述中正確的是______。
A.文件由ASCII碼字符序列組成,C語(yǔ)言只能讀寫文本文件
B.文件由二進(jìn)制數(shù)據(jù)序列組成,C語(yǔ)言只能讀寫二進(jìn)制文件
C.文件由數(shù)據(jù)流形式組成,可按數(shù)據(jù)的存放形式分為二進(jìn)制文件和文本文件
D.文件由記錄序列組成,可按數(shù)據(jù)的存放形式分為二進(jìn)制文件和文本文件
77.以下選項(xiàng)中,當(dāng)x為大于l的奇數(shù)時(shí),值為0的表達(dá)式是()。
78.下列程序執(zhí)行后輸出的結(jié)果是()。
intd=1;
fun(intp)
{intd=5;
d+=p++;
printf("%d,",d);}
main()
{inta=3;
fun(a);
d+=a++;
printf("%d\n",d);}
A.8,4B.9,6C.9,4D.8,5
79.
80.(28)在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段。其中數(shù)據(jù)獨(dú)立性最高的階段是()
A.數(shù)據(jù)庫(kù)系統(tǒng)
B.文件系統(tǒng)
C.人工管理
D.數(shù)據(jù)項(xiàng)管理
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)fun()的功能是:將str所指字符串中的字母轉(zhuǎn)換為按字母序列的后續(xù)字母(Z轉(zhuǎn)換A,z轉(zhuǎn)換a),其他字符不變。
請(qǐng)修改函數(shù)fun()中的錯(cuò)誤,得出正確的結(jié)果。
注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計(jì)題(1題)82.請(qǐng)編寫函數(shù)proc(),該函數(shù)的功能是:將放在字符串?dāng)?shù)組中的M個(gè)字符串(每串的長(zhǎng)度不超過(guò)N).按順序合并組成一個(gè)新的字符串。例如,若字符串?dāng)?shù)組中的M個(gè)字符串為:ABCDBCDEFGCDEFGHI則合并后的字符串內(nèi)容應(yīng)該是:ABCDBCDEFGCDEFGH1。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫的若干語(yǔ)句。試題程序:
參考答案
1.A二維數(shù)組t[][3]即t[3][3]={{9,8,7},{6,5,4},{3,2,1}}。執(zhí)行循環(huán)for語(yǔ)句,當(dāng)i=0時(shí),t[2][0]=3;當(dāng)i=1時(shí),t[l][1]=5;當(dāng)i=2時(shí),t[0][2]=7;當(dāng)i=3時(shí),循環(huán)結(jié)束,即t[2][0]=3、t[1][1]=5、t[0][2]=7。故本題答案為A選項(xiàng)。
2.D解析:字符串比較函數(shù)“strcmp(char*s1,char*s2)”的比較規(guī)則是對(duì)兩個(gè)字符串自左至右逐個(gè)字符相比(按ASCII碼值大小比較),直到出現(xiàn)不同的字符或遇到到"\\0"為止。如果全部相同,則認(rèn)為相等:若出現(xiàn)不相同的字符,則以第一個(gè)不相同的字符的比較結(jié)果為準(zhǔn)。當(dāng)s1<s2,返回值<0;當(dāng)s1=s2時(shí),返回值二0:當(dāng)s1>s2時(shí),返回值>0。故本題經(jīng)過(guò)排序后,得到第二個(gè)字符串是“abbd”,所以輸出結(jié)果是4。
3.A
4.D
5.A
6.D執(zhí)行第一次for循環(huán)時(shí),用表達(dá)式p[i][J]!=\o來(lái)判斷字符串?dāng)?shù)組指針P是否到達(dá)字符串的結(jié)尾,如果沒(méi)有到達(dá),繼續(xù)執(zhí)行while中的語(yǔ)句。if語(yǔ)句表示(p[i][j]-\o)除2的余數(shù)不為0時(shí),即字符串所有奇數(shù),執(zhí)行后面的語(yǔ)句。所以退出第1次for的循環(huán)體時(shí),輸出為397,執(zhí)行第2次循環(huán)體。對(duì)字符串“2584”進(jìn)行處理,輸出結(jié)果為5,因而最后輸出結(jié)果為3975。
7.C解析:在格式化模型中,要事先根據(jù)應(yīng)用的需要,確定數(shù)據(jù)之間的邏輯關(guān)系,即先對(duì)數(shù)據(jù)進(jìn)行結(jié)構(gòu)化。在關(guān)系模型中,不需要事先構(gòu)造數(shù)據(jù)的邏輯關(guān)系,只要將數(shù)據(jù)按照一定的關(guān)系存入計(jì)算機(jī),也就是建立關(guān)系。所以選項(xiàng)A錯(cuò)誤。對(duì)于一個(gè)表示關(guān)系的二維表,其最基本的要求是表中元組的每一個(gè)分量必須是不可分的數(shù)據(jù)項(xiàng),即不允許表中再有表。所以,選項(xiàng)B、D說(shuō)法是錯(cuò)誤的。一個(gè)關(guān)系的屬性名表稱為關(guān)系模式,也就是二維表的表框架,相當(dāng)于記錄型。因此,選項(xiàng)C說(shuō)法正確。
8.A當(dāng)y為。時(shí),表達(dá)式y(tǒng)一才為假,循環(huán)結(jié)束,最終y的值為一l,所以答案選擇A)。
9.C解析:關(guān)于二維數(shù)組的初始化,我們需要掌握如下方法:①所賦初值個(gè)數(shù)與數(shù)組元素的個(gè)數(shù)相同;②所賦初值行數(shù)少于數(shù)組行數(shù)時(shí),系統(tǒng)將自動(dòng)給后面各行的元素補(bǔ)初值0;③在給二維數(shù)組賦初值時(shí)可以不用行花括號(hào)對(duì)。選項(xiàng)C)應(yīng)該是inta[3][2]={{1,2},{3,4},{5,6,}};
10.D\r\n軟件是與計(jì)算機(jī)操作相關(guān)的計(jì)算機(jī)程序、規(guī)程、規(guī)則,以及可能有的文件、文檔及數(shù)據(jù);軟件開發(fā)要受到計(jì)算機(jī)系統(tǒng)的限制;軟件是一個(gè)邏輯實(shí)體,不是物理實(shí)體,軟件具有抽象性。因此選項(xiàng)D正確。
11.C
12.A
13.A本值輸出兩個(gè)值,%c為輸出一個(gè)字母,0/4d輸出一個(gè)數(shù)字。“A”的ASCIl碼為65,再加4之后為69,也就是字母E,所以本題A正確。
14.B
15.C
16.Dfread函數(shù)用來(lái)讀二進(jìn)制文件,其中buffer是數(shù)據(jù)塊的指針,它是內(nèi)存塊的首地址,輸入的數(shù)據(jù)存入此內(nèi)存中;size表示每個(gè)數(shù)據(jù)塊的字節(jié)數(shù);count用來(lái)指定每讀一次讀入的數(shù)據(jù)塊個(gè)數(shù);fp是文件指針,指向要讀的文件。選項(xiàng)A、B、C錯(cuò)誤。本題答案為D選項(xiàng)。
17.D
18.C解析:選項(xiàng)A的意思是:在x>O情況下,y為1,否則,在x=O時(shí),y為0,剩下x<O時(shí),y為-1,滿足本題中函數(shù)的要求。選項(xiàng)B描述的意思是:初始化y的值為0,在x>O時(shí),給y重新賦值為1,否則,在x<O時(shí),給y重新賦值為-1,滿足本題中函數(shù)的要求。選項(xiàng)C描述的意思是:在x>=0情況下,如果x>O,則y為1,否則,即x==0時(shí),y為-1;剩下的x<O時(shí),y為0??梢姶鸢窩實(shí)現(xiàn)的結(jié)果不是給定的表達(dá)式。選項(xiàng)D中描述的意思是:在x>=0的情況下,如果x>O,就給y賦值為1,否則即x==0時(shí)給y賦值為0,在不是x>=0的其他情況下,就給y賦值為-1,滿足本題中函數(shù)的要求。所以4個(gè)選項(xiàng)中C為所選。
19.D解析:在C語(yǔ)言所有的運(yùn)算符中,逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低。C語(yǔ)言中區(qū)分大小寫,所以APH和aph是兩個(gè)不同的變量。賦值表達(dá)式a=b表示將b的值付給a,而b本身的值保持不變;通過(guò)鍵盤可以向計(jì)算機(jī)輸入允許的任何類型的數(shù)據(jù)。選項(xiàng)D)中當(dāng)從鍵盤輸入數(shù)據(jù)時(shí),對(duì)于整型變量可以輸入整型數(shù)值和字符,對(duì)于實(shí)型變量可以輸入實(shí)型數(shù)值和整型數(shù)值等。
20.C
21.t>=le-5;t=t/n;
22.PERPER解析:本題中,typedef聲明新的類型名PER來(lái)代替已有的類型名,PER代表上面指定的一個(gè)結(jié)構(gòu)體類型,此時(shí),也可以用PER來(lái)定義變量。
23.918273645918273645解析:程序通過(guò)for循環(huán)將字符'0'~'9'從前向后,同時(shí)從后向前依次輸出,所以輸出結(jié)果為:0918273645。
24.10410\r\n4解析:結(jié)構(gòu)體變量所占內(nèi)存長(zhǎng)度是各成員占的內(nèi)存長(zhǎng)度之和。每個(gè)成員分別占有其自己的內(nèi)存單元。int占2個(gè)字節(jié),float占4個(gè)字節(jié),共用體變量所占的內(nèi)存長(zhǎng)度等于最長(zhǎng)的成員的長(zhǎng)度。所以,sizeof(a.share)的值是4,sizeof(a)的值是2+2+2+4=10。
25.bcdefgha
26.44解析:一維數(shù)組元素的定義形式為:數(shù)組名[N],則該數(shù)組中元素的下限是0,上限是N-1。
27.消息消息解析:消息是一個(gè)實(shí)例與另一個(gè)實(shí)例之間傳遞的信息,它請(qǐng)求對(duì)象執(zhí)行某一處理或回答某一要求的信息,它統(tǒng)一了數(shù)據(jù)流和控制流。
28.22132,2,1,3解析:本題考查++,--運(yùn)算符和條件運(yùn)算符的使用。
“表達(dá)式1?表達(dá)式2:表達(dá)式3”的功能是:表達(dá)式1的值若非0,則計(jì)算表達(dá)式2的值,且表達(dá)式2的值為最終結(jié)果;若表達(dá)式1的值為0,則計(jì)算表達(dá)式3的值,且為最終結(jié)果。
本題中,x=1,y=2時(shí),x<y成立,輸出y的值2;y=2,z=3時(shí),z<y不成立,執(zhí)行y++,輸出2后y值增1,所以最后一個(gè)輸出x的值不變?yōu)?,y的值為增加后的3。
29.malloc(11)malloc函數(shù)的格式是void*(或char*)malloc(size),size表示應(yīng)分配的存儲(chǔ)區(qū),此題要分配11字節(jié)的單元,把11代入即可。
30.gaegae解析:本題定義了兩個(gè)字符串?dāng)?shù)組a[],b[],字符型指針變量p1和p2,且分別指向字符串?dāng)?shù)組a和b,執(zhí)行for循環(huán),當(dāng)if(*p1+k)=*(p2+k))條件為真,執(zhí)打輸出*(p1+k)對(duì)應(yīng)的字符。即當(dāng)k=0時(shí),*(p1+k)對(duì)應(yīng)的字符串?dāng)?shù)組a中的字符L,*(p2+k)對(duì)應(yīng)的字符串?dāng)?shù)組b中的字符P,因此if(*(p1+k)=*(p2+k))條件為假,不執(zhí)行printf語(yǔ)句,依此類推,將字符串?dāng)?shù)組a和b中對(duì)應(yīng)位置上的字符一一比較,如果對(duì)應(yīng)位置上的字符相同,則輸出該字符。
31.1000001010000010解析:運(yùn)算“&”的規(guī)則是只有當(dāng)兩個(gè)相應(yīng)的二進(jìn)制位都為1時(shí),該位的結(jié)果才為1。要保留第2、8位,只要將其與二進(jìn)制數(shù)10000010相與。
32.對(duì)象對(duì)象解析:類描述的是具有相似性質(zhì)的一組對(duì)象。例如,每本具體的書是一個(gè)對(duì)象,而這些具體的書都有共同的性質(zhì),它們都屬于更一般的概念“書”這一類對(duì)象。一個(gè)具體對(duì)象稱為類的實(shí)例。
33.2002Shangxian2002Shangxian解析:strcmp函數(shù)用于比較兩個(gè)字符串的大小,因?yàn)?Zhangsan,=Shangxian,所以strcmp(,)>0為真,執(zhí)行d=b;因?yàn)?Anhua,=Shangxian,所以strcmp(,)>0不成立,不執(zhí)行d=c;最后輸出d.sno和的值分別為2002,Shangxian。
34.自頂向下自頂向下解析:在程序設(shè)計(jì)時(shí),應(yīng)先考慮總體,后考慮細(xì)節(jié),逐步使問(wèn)題具體化,對(duì)復(fù)雜的問(wèn)題,應(yīng)該設(shè)計(jì)一些子目標(biāo)作為過(guò)渡,上述方法概括為:自頂向下,逐步細(xì)化。
35.99解析:本題考查宏定義與三目運(yùn)算符的綜合用法,宏定義是原樣替換,本題中,如果a>b成立,則a+1的值為整個(gè)表達(dá)式的值,否則為b+1的值為整個(gè)表達(dá)式的值,(應(yīng)注意后面的加1)。
36.a[k]a[k]a[k]
37.1616解析:首先用j和MCRA(i)替換MCRB(n,m)中的參數(shù)n和m,變成2*MCRA(j)+MCRA(i),再用j和i替換MCRA(m)中的參數(shù)m,變成2*2*j+2*i=2*2*3+2*2=16。
38.軟件開發(fā)
39.投影專門關(guān)系運(yùn)算包括對(duì)單個(gè)關(guān)系進(jìn)行垂直分解(投影操作)或水平分解(選擇操作)和對(duì)多個(gè)關(guān)系的結(jié)合(連接操作)等。
40.黑盒軟件測(cè)試的方法有三種:動(dòng)態(tài)測(cè)試、靜態(tài)測(cè)試和正確性證明。設(shè)計(jì)測(cè)試實(shí)例的方法一般有兩類:黑盒測(cè)試法和白盒測(cè)試法。在使用黑盒法設(shè)計(jì)測(cè)試實(shí)例時(shí),測(cè)試人員將程序看成一個(gè)“黑盒”,即不關(guān)心程序內(nèi)部是如何實(shí)現(xiàn)的,只是檢查程序是否符合它的“功能說(shuō)明”,所以使用黑盒法設(shè)計(jì)的測(cè)試用例完全是根據(jù)程序的功能說(shuō)明來(lái)設(shè)計(jì)的。
41.A解析:條件表達(dá)式“a?b:c”的含義是:當(dāng)a為真時(shí),其值等于表達(dá)式b的值,當(dāng)a為假時(shí),其值等于表達(dá)式c的值。第一個(gè)表達(dá)式:w=6<x=4為假,所以返回x的值,即m=x=4;第二個(gè)表達(dá)式:m=4<y=3為假,所以返回y的值,即m=y=3。
42.B解析:本題考查if條件語(yǔ)句。a=3,b=5,因此a>b條件不成立,c=a=3。此時(shí)c!=a條件不成立,不執(zhí)行c=b;語(yǔ)句,c的值仍然為5。結(jié)果a=3,b=5,c=3。
43.C解析:函數(shù)fun(int*s,intn1,intn2)的功能是對(duì)數(shù)組s中的元素進(jìn)行首尾互相調(diào)換。所以在主函數(shù)中,當(dāng)fun(a,0,3)執(zhí)行完后,數(shù)組a[12]={4,3,2,1,5.6,7,8,9,01;再執(zhí)行fun(a,4,9),數(shù)組a[12]={4,3,2,1,0,9,8,7,6,5};再執(zhí)行fun(a,0,9)后,數(shù)組a[12]={5,6,7,8,9,0,1,2,3,4}。
44.C隊(duì)列是指允許在一端進(jìn)行插入、而在另一端進(jìn)行刪除的線性表,選項(xiàng)A和選項(xiàng)B錯(cuò)誤。允許插入的一端稱為隊(duì)尾,允許刪除的一端稱為隊(duì)頭。在隊(duì)列中,最先插入的元素將最先能夠被刪除,反之,最后插入的元素將最后才能被刪除。所以,隊(duì)列又稱為“先進(jìn)先出”或“后進(jìn)后出”的線性表,它體現(xiàn)了“先來(lái)先服務(wù)”的原則,選項(xiàng)C正確,選項(xiàng)D錯(cuò)誤。
45.D解析:選項(xiàng)A錯(cuò)在用字符串對(duì)整型數(shù)組賦值;選項(xiàng)B錯(cuò)在初始化表中數(shù)據(jù)的個(gè)數(shù)多于數(shù)組的最大長(zhǎng)度;選項(xiàng)C錯(cuò)在沒(méi)有用數(shù)組存儲(chǔ)字符串;選項(xiàng)D的初始化表中雖然是5個(gè)數(shù),但實(shí)際相當(dāng)于把ASCⅡ碼值是這5個(gè)整數(shù)的字符賦值給數(shù)組,因此是正確的。
46.A解析:選項(xiàng)B中d已經(jīng)為地址,不應(yīng)在加上求地址符號(hào)“&”,故選項(xiàng)B不正確;選項(xiàng)C中,a和b都為變量不是地址,應(yīng)該在a和b之前加上求地址符號(hào)“&”,故選項(xiàng)C不正確:選項(xiàng)D中指針d所指向的存儲(chǔ)空間的位置為變量c的值,不為地址,故選項(xiàng)D不正確,所以,4個(gè)選項(xiàng)中A為所選。
47.D解析:本題首先定義了兩個(gè)字符數(shù)組,然后從鍵盤讀入兩個(gè)字符串'name1'和'name2'分別賦給它們,接下來(lái)使用strcmp()函數(shù)比較兩個(gè)字符串是否相等,若不相等就輸出一個(gè)‘@’字符,否則輸出一個(gè)‘$’字符,所以本題先輸出一個(gè)‘@’字符。最后使用strcat()函數(shù)將兩個(gè)字符串連成一個(gè),然后使用strlen()函數(shù)求連接后的字符串長(zhǎng)度,所以接下來(lái)又輸出一個(gè)10。故本題的正確答案為D。
48.C解析:本題主要考查的知識(shí)點(diǎn)是聯(lián)合體的內(nèi)存使用。聯(lián)合體所占用的內(nèi)存空間為最長(zhǎng)的成員所占用的空間,各個(gè)成員分量全部是從低地址方向開始使用內(nèi)存單元。不能在定義共用體變量時(shí)對(duì)它初始化。
49.A解析:本題主要考查定義結(jié)構(gòu)體的幾個(gè)特點(diǎn):①結(jié)構(gòu)的定義明確了結(jié)構(gòu)的組成形式,定義了一種C語(yǔ)言中沒(méi)有而用戶需要的新的數(shù)據(jù)類型。與其他的數(shù)據(jù)類型不同,在程序編譯的時(shí)候結(jié)構(gòu)的定義并不會(huì)使系統(tǒng)為該結(jié)構(gòu)分配內(nèi)存空間,只有在說(shuō)明結(jié)構(gòu)變量時(shí)才分配內(nèi)存空間;②結(jié)構(gòu)體的成員名可以與程序中的變量名相同;⑧結(jié)構(gòu)體中的成員可以單獨(dú)使用,它的作用相當(dāng)于普通變量;④結(jié)構(gòu)體可以嵌套定義。
50.B解析:本題考查通過(guò)scanf函數(shù)輸入數(shù)據(jù)時(shí)的格式控制問(wèn)題。變量j的格式控制為“%2d”,即只接收輸入數(shù)據(jù)的前兩位,從第三位開始直到空格之間的輸入都會(huì)被保存到變量y中,因?yàn)閥為浮點(diǎn)型數(shù)據(jù),所以輸出結(jié)果為選項(xiàng)B)。
51.C解析:++高于=和||,=的優(yōu)先級(jí)最低。而||為自左向右的結(jié)合性,因此先計(jì)算表達(dá)式++x的值,x的初值為3,3+1=4,4為非零值,不必再計(jì)算||右側(cè)表達(dá)式的值,即可得到整個(gè)邏輯表達(dá)式的值1,++y沒(méi)有做運(yùn)算,仍為原值3,所以,選項(xiàng)C正確。
52.D解析:返回指針值的函數(shù),其—般定義形式為:類型標(biāo)識(shí)符*函數(shù)名(參數(shù)表);例如:int*f(x,y);其中,f是函數(shù)名,調(diào)用它以后能得到—個(gè)指向整型數(shù)據(jù)的指針(地址),x,y是函數(shù)f的形參。在f的兩側(cè)為別為*運(yùn)算符和()運(yùn)算符,而()優(yōu)先級(jí)高于*,因此f先與()結(jié)合,顯然是函數(shù)形式。這個(gè)函數(shù)前面有一個(gè)*,表示此函數(shù)是指針型函數(shù)(函數(shù)值是指針)。前面的int表示返回的指針指向整型變量。
53.A解析:本題中定義了整型變量a和一個(gè)指向整型數(shù)據(jù)的指針變量pa,并定義pa是一個(gè)存放a的地址的變量。選項(xiàng)B是應(yīng)該將a改為&a,故選項(xiàng)B不正確;選項(xiàng)c應(yīng)該將&pa改為pa,因?yàn)閜a已經(jīng)表示存放:的地址,故選項(xiàng)C不正確:選項(xiàng)D中*pa表示的是指針p8所指向存儲(chǔ)空間的變量的值,而不是一個(gè)地址,故選項(xiàng)D不正確,所以,4個(gè)選項(xiàng)十選項(xiàng)A符合題意。
54.C解析:算法的設(shè)計(jì)可以避開具體的計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,但算法的實(shí)現(xiàn)必須借助程序設(shè)計(jì)語(yǔ)言中,提供的數(shù)據(jù)類型及其算法。數(shù)據(jù)結(jié)構(gòu)和算法是計(jì)算機(jī)科學(xué)的兩個(gè)重要支柱。它們是一個(gè)不可分割的整體。算法在運(yùn)行過(guò)程中需輔助存儲(chǔ)空間的大小稱為算法的空間復(fù)雜度。算法的有窮性是指一個(gè)算法必須在執(zhí)行有限的步驟以后.結(jié)束。算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量,即算法執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)。
55.C解析:x=7,通過(guò)遞歸調(diào)用fun函數(shù)后得到結(jié)果。
56.B解析:因n=0,故!n為真,執(zhí)行語(yǔ)句x-=1得x=x-1=2-1=1;條件!m和!x不成立,所以x=1,正確答案為1。
57.D解析:本題考查switch語(yǔ)句的掌握。必須撐握以下內(nèi)容:首先應(yīng)該明白switch語(yǔ)句的語(yǔ)法格式:
switch語(yǔ)句的語(yǔ)法格式為:
switch(表達(dá)式)
{
case常量表達(dá)式1:語(yǔ)句組1;
case常量表達(dá)式2:語(yǔ)句組2;
……
case常量表達(dá)式n:語(yǔ)句組n;
default:語(yǔ)句組n+1;
}
另外,注意以下幾點(diǎn)關(guān)于switch語(yǔ)句的重點(diǎn):
①系統(tǒng)在執(zhí)行時(shí)計(jì)算開關(guān)表達(dá)式的值;②根據(jù)所得的值在各個(gè)case標(biāo)號(hào)表達(dá)式中尋找匹配,直到發(fā)現(xiàn)與表達(dá)式匹配的標(biāo)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小紅書運(yùn)營(yíng)合作協(xié)議書
- 經(jīng)理薪資協(xié)議書
- 用利潤(rùn)出資入股協(xié)議書
- 礦石礦業(yè)協(xié)議書
- 電梯廣告機(jī)轉(zhuǎn)讓協(xié)議書
- 道具創(chuàng)作協(xié)議書
- 營(yíng)銷分成協(xié)議書
- 生蠔養(yǎng)殖協(xié)議書
- 幼兒園合伙合作協(xié)議書
- 終結(jié)調(diào)解協(xié)議書
- 中考英語(yǔ)1600核心詞匯
- 空調(diào)維保服務(wù)投標(biāo)方案 (技術(shù)方案)
- CSTM-鋁灰用于替代鋁土礦石技術(shù)規(guī)范編制說(shuō)明
- 詢價(jià)函模板范文
- 2023年江蘇省南京市中考物理試題(解析版)
- 2023-2024學(xué)年科學(xué)四年級(jí)下冊(cè)人教鄂教版2.8《蠶的一生》教學(xué)設(shè)計(jì)
- 防汛應(yīng)急預(yù)案演練說(shuō)辭
- 教育系統(tǒng)后備干部面試題目
- 河南省鄭州市2023-2024學(xué)年高一下學(xué)期6月期末數(shù)學(xué)試題(無(wú)答案)
- 14J936變形縫建筑構(gòu)造
- TD/T 1012-2016 土地整治項(xiàng)目規(guī)劃設(shè)計(jì)規(guī)范(正式版)
評(píng)論
0/150
提交評(píng)論