版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021年內(nèi)蒙古自治區(qū)呼和浩特市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.利用E-R模型進(jìn)行數(shù)據(jù)庫(kù)的概念設(shè)計(jì),可以分成3步:首先設(shè)計(jì)局部E-R模型,然后把各個(gè)局部E-R模型綜合成一個(gè)全局的模型,最后對(duì)全局E-R模型進(jìn)行(),得到最終的E-R模型。
A.簡(jiǎn)化B.結(jié)構(gòu)化C.最小化D.優(yōu)化
2.
3.線性結(jié)構(gòu)是數(shù)據(jù)元素之間存在一種()。
A.一對(duì)多關(guān)系B.多對(duì)多關(guān)系C.多對(duì)一關(guān)系D.一對(duì)一關(guān)系
4.有以下程序:
#include<stdio.h>
voidfun(char*t,char*s)
{while(*t!=0)t++;
while((*t++=*s++)!=0);
}
main()
{charss[10]="acc",aa[10]="bbxxyy";
fun(ss,aa);
printf("%s,%s\n",ss,aa);
}
程序運(yùn)行結(jié)果是A.A.accxyy,bbxxyy
B.acc,bbxxyy
C.accxxyy,bbxxyy
D.accbbxxyy,bbxxyy
5.
6.下列程序段輸出的字符串長(zhǎng)度為()。printf("\\aaa\'ccc\bddd\'");
A.11B.12C.13D.17
7.輸入序列為(A,B,C,D),不可能得到的輸出序列是______.
A.(A,B,C,D)B.(D,C,B,A)C.(A,C,D,B)D.(C,A,B,D)
8.在長(zhǎng)度為n的順序存儲(chǔ)的線性表中,刪除第i個(gè)元素(1≤i≤n)時(shí),需要從前向后依次前移____個(gè)元素。
A.n-iB.n-i+1C.n-i-1D.i
9.有以下程序段:charstr[4][12]={“aaa”,“bbb”,“ccc”,“ddd”},*p[4];inti;for(i=0;i<4;i++)p[i]=str[i];以下選項(xiàng)中不能正確引用字符串的是()。
A.*p[3]B.p[3]C.str[2]D.*p
10.
11.程序流程圖中帶有箭頭的線段表示的是()。
A.圖元關(guān)系B.數(shù)據(jù)流C.控制流D.調(diào)用關(guān)系
12.C語(yǔ)言的基本單位是()。
A.函數(shù)B.過(guò)程C.子程序D.子函數(shù)
13.寫(xiě)出a*(b-c*d)+e-f/g*(h+i*j-k)的逆波蘭表達(dá)式()。
A.a(b-c*d)*+e-(f/g(h+i*j-k)*)
B.a(b-(cd*))*+e-(fg/(h+ij*-k)*)
C.a(bcd*-)*+e-(fg/hij*+k-*)
D.abcd*-*e+fg/hij*+k-*-
14.若有定義語(yǔ)句:"inta[4][10],*P,*q[4];"且0≤i<4,則錯(cuò)誤的賦值是()。
A.D=aB.q[i]=a[i]C.p=a[l]D.P=&a[2][1]
15.若有以下說(shuō)明和定義uniondt{inta;charb;doublec;}data;以下敘述中錯(cuò)誤的是
A.data的每個(gè)成員起始地址都相同
B.變量data所占內(nèi)存字節(jié)數(shù)與成員c所占字節(jié)數(shù)相等
C.程序段:data.a=5;printf(“%I'm”,data.C);輸出結(jié)果為5.000000
D.data可以作為函數(shù)的實(shí)參
16.設(shè)順序表的長(zhǎng)度為n,則順序查找的平均比較次數(shù)為()
A.nB.n/2C.(n+1)/2D.(n-1)/2
17.下面關(guān)于數(shù)據(jù)庫(kù)系統(tǒng)中敘述正確的是()。
A.數(shù)據(jù)庫(kù)系統(tǒng)減少了數(shù)據(jù)冗余
B.數(shù)據(jù)庫(kù)系統(tǒng)避免了一切冗余
C.數(shù)據(jù)庫(kù)系統(tǒng)中數(shù)據(jù)的一致性是指數(shù)據(jù)類(lèi)型的一致
D.數(shù)據(jù)庫(kù)系統(tǒng)比文件系統(tǒng)能管理更多的數(shù)據(jù)
18.有以下程序:#include<stdio.b>voidfun(charc){if(c>X)fun(c-1):printf("%C",c);}traia(){fun(z);}程序運(yùn)行后的輸出結(jié)果是()A.xyzB.wxyzC.xzyD.zvx
19.若執(zhí)行下列的程序時(shí),從鍵盤(pán)上輸入1和2,則輸出結(jié)果是()。
#include<stdio.h>
main()
{inta,b,s;
scanf("%d%d",&a,&B);
S=a;
if(a<B)s=b;
s=s*s;
printtf("%d\n",s);
}
A.1B.4C.2D.9
20.有以下程序main(){intx,y,z;x=y=1;z=X++,y++,++y;printf("%d,%d,%d\n",x,y,z);}程序運(yùn)行后的輸出結(jié)果是
A.2,3,3B.2,3,2C.2,3,1D.2,2,1
二、2.填空題(20題)21.數(shù)據(jù)元素之間______的整體稱(chēng)為邏輯結(jié)構(gòu)。
22.在計(jì)算機(jī)領(lǐng)域中,通常用英文單詞“Byte'’表示【】。
23.函數(shù)pi的功能是根據(jù)以下公式近似求得的:
pi*pi/6=1+1/(2*2)+1/(3.3)+...+1/(n*n)
請(qǐng)?jiān)谙旅娴暮瘮?shù)中天空,完成求pi的功能。
#include<math.h>
doublepi(longn)
{doubles=0.0,longi;
for(i=1;i<<=n;i++)s=s+【】;
return(sqrt(6*s));
}
24.若已知a=10,b=20,則表達(dá)式!a<b的值為【】。
25.測(cè)試的目的是暴露錯(cuò)誤,評(píng)價(jià)程序的可靠性;而______的目的是發(fā)現(xiàn)錯(cuò)誤的位置并改正錯(cuò)誤。
26.有下面的程序:
#include<stdio,h>
main()
{enumteam{my,your=4,his,her=his+10};
prinff("%d%d%d%d\n",my,your,his,her);
此程序的輸出結(jié)果是【】。
A)0123B)04010C)04515D)14515
27.以下程序運(yùn)行后的輸出結(jié)果是()。
main()
{inta=3,b=4,c=5,t=99;
if(b<a&&a<C)t=a;a=c;c=t;
if(a<c&&b<C)t=b;b=a;a=t;
printf("%d%d%d\n",a,b,A);
}
28.表示""整數(shù)x的絕對(duì)值大于5""時(shí)值為""真""的C語(yǔ)言表達(dá)式是【】。
29.數(shù)據(jù)庫(kù)的設(shè)計(jì)通??梢苑譃檫@樣四個(gè)步驟:需求分析、概念設(shè)計(jì)、______、和物理設(shè)計(jì)。
30.設(shè)有如下程序段:
inti=0,sum=1;
do
{sum+=i++;}
while(i<6);
printf("%d\n",sum);
上述程序段的輸出結(jié)果是【】。
31.以下程序中函數(shù)f的功能是在數(shù)組x的n個(gè)數(shù)(假定n個(gè)數(shù)互不相同)中找出最大最小數(shù),將其中最小的數(shù)與第一個(gè)數(shù)對(duì)換,把最大的數(shù)與最后一個(gè)數(shù)對(duì)換。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
voidf(intx[],intn)
{intp0,p1,i,j,t,m;
i=j=x[0];p0=p1=0;
for(m=0;m<n;m++)
{if(x[m]>i){i=x[m];p0=m;}
elseif(x[m]<j){j=x[m];p1=m;}
}
t=x[p0];x[p0]=x[n-1];x[n-1]=t;
t=x[p1];x[p1]=【】;【】=t;
}
main()
{inta[10],u;
for(u=0;u<10;u++)scanf("%d",&a[u]);
f(a,10);
for(u=0;u<10;u++)printf("%d",a[u]);
printf("\n");
}
32.以下程序的功能是將字符串s中的數(shù)字字符放入d數(shù)組中,最后輸出d中的字符串。例如,輸入字符串:
abcl23edf456gh,執(zhí)行程序后輸出:123456。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
#include<ctype,h>
main()
{chars[80],d[80];inti,j;
gets(s);
for(i=j=0;s[i]!='\0';i++)
if(【】){d[j]=s[i];j++;}
d[j]='\0';
puts(d);
}
33.數(shù)據(jù)庫(kù)的邏輯模型設(shè)計(jì)階段的任務(wù)是將______轉(zhuǎn)換成關(guān)系模式。
34.若輸入字符串:abcde↓,則以下while循環(huán)體將執(zhí)行【】次。
while((ch=getchar())=='e')printf("*");
35.算法的復(fù)雜度主要包括空間復(fù)雜度和______復(fù)雜度。
36.設(shè)Y是int型變量,請(qǐng)寫(xiě)出判斷Y為奇數(shù)的關(guān)系表達(dá)式【】。
37.【】是數(shù)據(jù)庫(kù)設(shè)計(jì)的核心。
38.函數(shù)voidfun(float*sn,intn)的功能是:根據(jù)以下公式計(jì)算s,計(jì)算結(jié)果通過(guò)形參指針sn傳回;n通過(guò)形參傳入,n的值大于或等于0。請(qǐng)?zhí)羁铡?/p>
voidfun(float*sn,intn)
{floats=0.0,w,f=-1.0;
inti;
for(i=0;i<=n;i++)
{f=【】*f;
w=f/(2*i+1);
s+=w;
}
【】=s;
}
39.以下程序的功能是:將輸入的正整數(shù)按逆序輸出。例如:若輸入135則輸出531。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{intn,s;
printf("Enteranumber:");scanf("%d",&n);
printf("Output:");
do
{s=n%10;printf("%d",s);【】;
}while(n!=0);
printf("\n");
}
40.有如圖所示的雙鏈表結(jié)構(gòu),請(qǐng)根據(jù)圖示完成結(jié)構(gòu)體的定義:
structaa
{intdata;
【】}node;
三、1.選擇題(20題)41.能正確表示邏輯關(guān)系""a≥10或a≤0""的C語(yǔ)言表達(dá)式是______。
A.a>=100ora<=0
B.a>=0|a<=10
C.a>10&&a<=0
D.a>=10||a<=10
42.若函數(shù)調(diào)用時(shí),參數(shù)為基本數(shù)據(jù)類(lèi)型的變量,下列敘述中正確的是()。
A.實(shí)參與其對(duì)應(yīng)的形參共占存儲(chǔ)單元
B.只有當(dāng)實(shí)參與其對(duì)應(yīng)的形參同名時(shí)才共占存儲(chǔ)單元
C.實(shí)參與其對(duì)應(yīng)的形參分別占用不同的存儲(chǔ)單元
D.實(shí)參將數(shù)據(jù)傳遞給形參后,立即釋放原先占用的存儲(chǔ)單元
43.棧和隊(duì)列的共同點(diǎn)是()。
A.都是先進(jìn)先出B.都是先進(jìn)后出C.只允許在端點(diǎn)處插入和刪除元素D.沒(méi)有共同特點(diǎn)
44.在C語(yǔ)言中,函數(shù)返回值的類(lèi)型最終取決于()。
A.函數(shù)定義時(shí)在函數(shù)首部所說(shuō)明的函數(shù)類(lèi)型
B.return語(yǔ)句中表達(dá)式值的類(lèi)型
C.調(diào)用函數(shù)時(shí)主調(diào)函數(shù)所傳遞的實(shí)參類(lèi)型
D.函數(shù)定義時(shí)形參的類(lèi)型
45.在下列字符序列中,合法的標(biāo)識(shí)符是()
A.P12&.aB.stud_100C.$water.12D.88sum
46.C語(yǔ)言結(jié)構(gòu)體類(lèi)型變量在程序執(zhí)行期間,()。
A.所有成員一直駐留在內(nèi)存中B.沒(méi)有成員駐留在內(nèi)存中C.部分成員駐留在內(nèi)存中D.只有一個(gè)成員駐留在內(nèi)存中
47.有以下程序:#include<stdio.h>main(){intx[]={1,3,5,7,2,4,6,0},i,j,k;for(i=0;i<3;i++)for(j=2;j>=i;j—)if(x[j+1]>x[j]){k=x[j];x[j]=x[j+1];x[j+1]=k;}for(i=0;i<3;i++)for(j=4;j<7-i;j++)if(x[j]>x[j+1]){k=x[j];x[j]=x[j+1];x[j+1]=k;}for(i=0;i<8;i++)printf("%d",x[i]);prinff("\n");}程序運(yùn)行后的輸出結(jié)果是()。
A.75310246B.1234567C.76310462D.13570246
48.若有以下說(shuō)明和定義:typedefint*INTEGER;INTEGERp,*q;以下敘述正確的是()A.p是整型變量
B.p是基類(lèi)型為整型的指針變量
C.q是基類(lèi)型為整型的指針變量
D.程序中可用INTEGER代替int類(lèi)型名
49.有以下程序voidss(char*s,chart){while{*s)if(*s==t)*s-t-'a'+'A';S++;main(){charstrl[100]="abcddfefdbd",c='d';ss(str1,c);printf("%s\n",str1);}程序運(yùn)行后的輸出結(jié)果是
A.ABCDDEFEDBDB.abcDDfefDbDC.abcAAfefAbAD.Abcddfefdbd
50.有以下程序
#include<stdio.h>
intfun(chars[])
{intn=0;
while(*s<='9'&&*s>='0'){n=10*n+*s-'0';s++;}
retum(n);
}
main()
{chars[10]={'6','1','*','4','*','9','*','0','*'};
printf("%d\n",fun(s));
}
程序的運(yùn)行結(jié)果是
A.9B.61490C.61D.5
51.設(shè)整型數(shù)i=5,則printf("%d",i+++++i);的輸出為_(kāi)_____。
A.10B.11C.12D.語(yǔ)法錯(cuò)誤
52.以下程序的運(yùn)行結(jié)果是______。main(){charn=0x20;printf("%d\n",n=n<<1);}
A.100B.160C.128D.64
53.設(shè)有如下的變量定義,以下符合C語(yǔ)言語(yǔ)法的表達(dá)式是______。inti=8,k,a,b;unsignedlongw=5;doublex=1,42,y=5.2;
A.a+=a-=(b=4)*(a=3);B.x%(-3);C.a=a*3=2;D.y=float(i);
54.下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是()。
A.順序存儲(chǔ)的有序線性表B.線性鏈表C.二叉鏈表D.有序線性鏈表
55.下列有關(guān)數(shù)據(jù)庫(kù)的描述,正確的是
A.數(shù)據(jù)處理是將信息轉(zhuǎn)化為數(shù)據(jù)的過(guò)程
B.數(shù)據(jù)的物理獨(dú)立性是指當(dāng)數(shù)據(jù)的邏輯結(jié)構(gòu)改變時(shí),數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)不變
C.關(guān)系中的每一列稱(chēng)為元組,一個(gè)元組就是一個(gè)字段
D.如果一個(gè)關(guān)系中的屬性或?qū)傩越M并非該關(guān)系的關(guān)鍵字,但它是另一個(gè)關(guān)系的關(guān)鍵宇,則稱(chēng)其為本關(guān)系的外關(guān)鍵字
56.有以下程序:voidswapl(intc0[],intc1[]){intt;t=c0[0];c0[0]=c1[0];c1[0]=t;}voidswap2(int*c0,int*c1){intt;t=*c0;*c0=*c1;*c1=t;}main(){inta[2]={3,5),b[2]={3,5};swapl(a,a+1);swap2(&b[0],&b[1]);printf("%d%d%d%d\n",a[0],a[1],b[0],b[1]);}程序運(yùn)行后的輸出結(jié)果是()。
A.3553B.5335C.3535D.5353
57.在計(jì)算機(jī)中,算法是指()。
A.查詢(xún)方法B.加工方法C.解題方案的準(zhǔn)確而完整的描述D.排序方法
58.數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的()。
A.存儲(chǔ)問(wèn)題B.共享問(wèn)題C.安全問(wèn)題D.保護(hù)問(wèn)題
59.以下敘述不正確的是______。
A.分號(hào)是C語(yǔ)言的必要組成部分
B.C程序的注釋可以寫(xiě)在句的后面
C.函數(shù)是C程序的基本單位
D.主函數(shù)的名字不一定用main表示
60.有以下程序:voidsum(int*A){a[0]=a[1];}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;for(i=2;i>=0;i--)sum(&aa[i]);printf("%d\n",aa[0]);}執(zhí)行后的輸出結(jié)果是
A.4B.3C.2D.1
四、選擇題(20題)61.若變量已正確定義并賦值,以下符合C++語(yǔ)言語(yǔ)法的表達(dá)式是()。
A.a:=b+1B.a=b=c+2C.int18.5%3D.a=a+7=c+b
62.
63.設(shè)有以下語(yǔ)句:
inta=1,b=2,c;c=a^(b<;<;2);執(zhí)行后,c的值為()。
A.7B.9C.8D.6
64.以下選項(xiàng)中,當(dāng)x為大于1的奇數(shù)時(shí),值為0的表達(dá)式是()。
A.x%2==0B.x/2C.x%21=0D.x%2==1
65.
66.
67.若執(zhí)行以下程序時(shí)從鍵盤(pán)上輸入9,則輸出結(jié)果是()。main(){intn;scanf(”%d”,&n);if(n++<10)printf(”/%d\n”,n);elseprintf(”%d\n”,n--);}A.11B.10C.9D.8
68.若有以下語(yǔ)句
69.在下列給出的表達(dá)式中,與while(E)中的(E)不等價(jià)的表達(dá)式是()。A.(!E==0)B.(E>0||E<0)C.(E==0)D.(E!=0)
70.若a是數(shù)直類(lèi)型,則邏輯表達(dá)式的值是()。A.1B.0C.2D.不知道a的值,不能確定
71.
72.(53)已知二叉樹(shù)后序遍歷序列是dabec,中序遍歷序列是debac,它的前序遍歷序列是()
A.cedba
B.acbed
C.decab
D.deabc
73.下列敘述中正確的是()。
A.數(shù)據(jù)庫(kù)不需要操作系統(tǒng)的支持
B.數(shù)據(jù)庫(kù)設(shè)計(jì)是指設(shè)計(jì)數(shù)據(jù)庫(kù)管理系統(tǒng)
C.數(shù)據(jù)庫(kù)是存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)設(shè)備中的、結(jié)構(gòu)化的相關(guān)數(shù)據(jù)的集合
D.數(shù)據(jù)庫(kù)系統(tǒng)中,數(shù)據(jù)的物理結(jié)構(gòu)必須與邏輯結(jié)構(gòu)一致
74.
75.
76.若有定義:charc;doubled;程序運(yùn)行時(shí)輸入:12<;回車(chē)>;,能把字符1輸入給變量c、數(shù)值2輸入給變量d的輸入語(yǔ)句是()。
77.若變量x、y已正確定義并賦值,以下符合C語(yǔ)言語(yǔ)法的表達(dá)式是()。
A.X+1=yB.++X.Y=X一一C.X=X+10=X+YD.double(X)/10
78.(63)線性表的順序存儲(chǔ)結(jié)構(gòu)和線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)分別是______。
A.順序存取的存儲(chǔ)結(jié)構(gòu)、順序存取的存儲(chǔ)結(jié)
B.隨機(jī)存取的存儲(chǔ)結(jié)構(gòu)、順序存取的存儲(chǔ)結(jié)構(gòu)
C.隨機(jī)存取的存儲(chǔ)結(jié)構(gòu)、隨機(jī)存取的存儲(chǔ)結(jié)
D.任意存取的存儲(chǔ)結(jié)構(gòu)、任意存取的存儲(chǔ)結(jié)構(gòu)
79.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.1B.2C.3D.4
80.讀取二進(jìn)制文件的函數(shù)調(diào)用形式為:fread(buffer,size,Count,fp);,其中buffed
代表的是()。
A.一個(gè)內(nèi)存塊的首地址,代表讀入數(shù)據(jù)存放的地址
B.一個(gè)整型變量,代表待讀取的數(shù)據(jù)的字節(jié)數(shù)
C.一個(gè)文件指針,指向待讀取的文件
D.一個(gè)內(nèi)存塊的字節(jié)數(shù)
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)proc()的作用是:將字符串tt中的大寫(xiě)字母都改為對(duì)應(yīng)的小寫(xiě)字母,其他字符不變。
例如,若輸入“I,anl,A,Student”,則輸出“i,am,a,student”。
請(qǐng)修改程序中的錯(cuò)誤。使它能得到正確結(jié)果。
注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計(jì)題(1題)82.請(qǐng)編一個(gè)函數(shù)fun(char*str),該函數(shù)的功能是把字符串中的內(nèi)容逆置。例如,字符串中原有的字符串為asdfg,則調(diào)用該函數(shù)后,串中的內(nèi)容為gfdsa。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫(xiě)的若干語(yǔ)句。試題程序:
參考答案
1.D解析:在概念設(shè)計(jì)中按照模塊的劃分畫(huà)出每個(gè)模塊的E-R圖,然后把這些圖合成一張E-R圖作為全局模型,最后應(yīng)該對(duì)全局E-R圖進(jìn)行優(yōu)化,看看是否有重復(fù)和不合理的地方。不能只是進(jìn)行簡(jiǎn)單的合并。
2.A
3.D
4.D
5.D
6.C解析:轉(zhuǎn)義字符有1個(gè)\\\\、2個(gè)\\'、1個(gè)\\b,普通字符有3個(gè)a、3個(gè)c、3個(gè)d,共13個(gè)字符。
7.D
8.A
9.A“*P[3]”是一個(gè)字符,也就是str[3][0],不是字符串,選項(xiàng)A錯(cuò)誤?!癙[3]”“str[2]”和“*p”分別代表了ddd、ccc、aaa。故本題答案為A選項(xiàng)。
10.A
11.C解析:程序流程圖是人們對(duì)解決問(wèn)題的方法、思路或算法的一種描述。其中,圖框表示各種操作的類(lèi)型,圖框中的文字和符號(hào)表示操作的內(nèi)容,流程線表示操作的先后次序。帶箭頭的線段在數(shù)據(jù)流程圖中表示數(shù)據(jù)流。帶箭頭的線段在程序流程圖中表示控制流。題中給出的選項(xiàng)中,在圖元之間用帶有箭頭的線段表示圖元關(guān)系。在模塊之間用帶有箭頭的線段表示調(diào)用關(guān)系。構(gòu)成程序流程圖的基本圖符及含義:→或↓表示控制流;□表示加工步驟;
表示邏輯條件。
12.AA?!窘馕觥緾語(yǔ)言是函數(shù)式的語(yǔ)言。它的基本組成單位是函數(shù),在C語(yǔ)言中任何程序都是由一個(gè)或者多個(gè)函數(shù)組成的。
13.D
14.A數(shù)組名是一個(gè)存放一個(gè)數(shù)組首地址的值,是一個(gè)地址常量。而p=a不是合法的,因?yàn)閜和a的基本類(lèi)型不同。
15.C解析:本題考查的共用體的概念。共用體變量中的所有成員共享一段公共存儲(chǔ)區(qū),所以共用體變量所占內(nèi)存字節(jié)數(shù)與其成員中占字節(jié)數(shù)最多的那個(gè)成員相等.本題定義的共用體中成員C所占的內(nèi)存最多,因此選項(xiàng)B是正確的。由于共用體變量中的所有成員共享存儲(chǔ)空間,因此變量中的所有成員的首地址相同,選項(xiàng)A是正確的。同結(jié)構(gòu)體變量一樣,共用體類(lèi)型的變量可以作為實(shí)參進(jìn)行傳遞,也可以傳送共用體變量的地址,選項(xiàng)D也是正確的。在內(nèi)存中,實(shí)數(shù)與整數(shù)的存放形式完全不一樣,共用體的成員共用的是同一塊內(nèi)存,而不是同一個(gè)數(shù)值,因此選項(xiàng)C是錯(cuò)誤的。
16.C
17.A\n數(shù)據(jù)的共享自身又可極大地減少數(shù)據(jù)冗余性,不僅減少了不必要的存儲(chǔ)空間,更為重要的是可以避免數(shù)據(jù)的不一致性。所謂數(shù)據(jù)的一致性是指在系統(tǒng)中同一數(shù)據(jù)在不同位置出現(xiàn)時(shí)應(yīng)保持相同的值。
\n
18.A本題考查簡(jiǎn)單的遞歸函數(shù),當(dāng)c>X則會(huì)產(chǎn)生遞歸,依次類(lèi)推,答案選擇A.
19.B解析:本題考查if語(yǔ)句。scanf函數(shù)通過(guò)鍵盤(pán)讀入a、b的值,a=1,b=2。第一個(gè)if語(yǔ)句,先判斷條件,發(fā)現(xiàn)a<b條件成立,則s=b=2,s=s*s=4。
20.C解析:整型變量x、y的初值都為1,“x++,y++,++y”是一個(gè)逗號(hào)表達(dá)式,程序執(zhí)行“z=x++,y++,++y”后,x的值為2,y的值為3,z取豆號(hào)表達(dá)式中第二個(gè)表達(dá)式的值,為1。
21.邏輯關(guān)系邏輯關(guān)系
22.字節(jié)字節(jié)
23.1.0/i/i或1.0/(i*i)1.0/i/i或1.0/(i*i)解析:由題面中提供的計(jì)算pi的公式可知:在第i項(xiàng)其值為1/(i*i),考慮到運(yùn)算結(jié)果為浮點(diǎn)數(shù),故必須要將1轉(zhuǎn)化為浮點(diǎn)數(shù)或采用1.0/(i*i)的形式。故本題應(yīng)填1.0/(i*i)或其等效形式。
24.11解析:計(jì)算表達(dá)式!a<b,先計(jì)算!a,因a的值為10,!a的值為0,而關(guān)系表達(dá)式0<20為真,所以表達(dá)式!a<b的值為1。
25.調(diào)試調(diào)試
26.CC解析:枚舉的語(yǔ)法規(guī)定,當(dāng)枚舉元素沒(méi)有賦值時(shí),如果前面沒(méi)有其他枚舉元素,其值為0;如果前面有其他枚舉元素,其值為前一個(gè)元素的值加1,所以his的值為5,her的值為15。
27.45994599解析:a、b、c的初值為3、4、5,t的初值為99,if語(yǔ)句的條件“b<a&&b<c”為假,不執(zhí)行“t=a;”,但緊隨其后的“a=c;c=t;”與此if語(yǔ)句無(wú)關(guān),仍被執(zhí)行。此時(shí)a的值為5,b的值仍是4,c的值為99。再執(zhí)行第二個(gè)if語(yǔ)句,由于此時(shí)“a<c&&b<c”為真,執(zhí)行“t=b;”,緊隨其后的“b=a;a=t;”與此if語(yǔ)句無(wú)關(guān),也被執(zhí)行。此時(shí)a的值為4,b的值是5,c的值為99。因此輸出結(jié)果是:4599。
28.x>5||x<-5x<-5或x<-5||x>5x>5||x<-5,x<-5或x<-5||x>5解析:要使整數(shù)x的絕對(duì)值大于5,則x大于5或x小于5,用C語(yǔ)言表示即為:x>5||x<-5或者x<-5||x>5。故本題答案為;x>5||x<-5或者x<-5||x>5。
29.邏輯設(shè)計(jì)邏輯設(shè)計(jì)解析:數(shù)據(jù)庫(kù)設(shè)計(jì)的四個(gè)階段為:需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)和物理設(shè)計(jì)。
30.16
31.x[0]x[0]x[0],x[0]解析:函數(shù)f()通過(guò)for循環(huán)逐個(gè)比較數(shù)組x中的元素,循環(huán)結(jié)束后,p0和p1分別表示最大值和最小值在數(shù)組中的下標(biāo)位置,然后按照題意將最大值x[p0]和數(shù)組的最后一個(gè)元素x[n-1]交換位置,再將最小值x[p1]和第一個(gè)元素(x[0])進(jìn)行交換,所以空白處應(yīng)該填入x[0]。
32.s[i]>='0'&&s[i]<='9'或isdigit(s[i])或s[i]>=48&&s[i]<=57或s[i]<='9'&&s[i]>='0'或'9'>=s[i]&&'0'<=s[i]或'0'<=s[i]&&'9'>=s[i]或s[i]<=57&&s[i]>=48或57>=s[i]&&48<=s[i]或48<=s[i]&&57>=s[i]s[i]>='0'&&s[i]<='9'或isdigit(s[i])或s[i]>=48&&s[i]<=57或s[i]<='9'&&s[i]>='0'或'9'>=s[i]&&'0'<=s[i]或'0'<=s[i]&&'9'>=s[i]或s[i]<=57&&s[i]>=48或57>=s[i]&&48<=s[i]或48<=s[i]&&57>=s[i]解析:字符數(shù)組的初始化,字符串的輸入和輸出的應(yīng)用。C語(yǔ)言沒(méi)有字符串變量,字符串不是存放在一個(gè)變量中而是存放在一個(gè)字符型數(shù)組中,因此為了存放字符串,常常在程序中定義字符型數(shù)組;字符串存放在字符數(shù)組中,但字符數(shù)組與字符串可以不等長(zhǎng),C語(yǔ)言規(guī)定以“\\0”字符作為字符串結(jié)束標(biāo)志。
本題中,chars[80],d[80];定義了兩個(gè)字符型數(shù)組,可以放入80個(gè)字符。gets函數(shù)是c語(yǔ)言提供的一個(gè)專(zhuān)門(mén)用于讀字符串的函數(shù),它讀入全部字符(包括空格),直到遇到回車(chē)為止。本題中,讀入字符串s后,開(kāi)始比較s中的每個(gè)字符是否為數(shù)字字符,因?yàn)樽址麛?shù)據(jù)在內(nèi)存中以相應(yīng)的ASCII碼存放,所以只需比較相應(yīng)的ASCII碼值是否在48('0'的ASCII代碼)與57('9'的ASCII代碼)之間,或者直接與'0','9'進(jìn)行比較,如果是數(shù)字字符則將此字符存入d數(shù)組中,不是則繼續(xù)進(jìn)行下一字符的比較,直至s結(jié)束(即'0'的出現(xiàn))。將“'\\0'”字符作為字符串d結(jié)束標(biāo)志,最后調(diào)用puts函數(shù)輸出d。所以在空格處應(yīng)填入比較語(yǔ)句s[i]>='0'&&s[i]<='9'或isdigit(s[i])或s[i]>=48&&s[i]<=57或s[i]<='9'&&s[i]>='0'或'9'>=s[i]&&'0'<=s[i]或'0'<=s[i]&&'9'>=s[i]或s[i]<=57&&s[i]>=48或&&48<=s[i]或57>=s[i]。
33.E-R圖E-R圖解析:數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的任務(wù)是將概念模型進(jìn)一步轉(zhuǎn)化成相應(yīng)的數(shù)據(jù)模型。而E-R圖是主要的概念模型,因此數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)的主要工作是將E-R圖轉(zhuǎn)換成關(guān)系模式。
34.00解析:函數(shù)getchar()是從鍵盤(pán)得到用戶(hù)輸入的一個(gè)字符。用戶(hù)輸入的第1個(gè)字符是a,不管后面輸入的是什么ch的值都是'a',因此條件(ch=getchar())=='e'為假,這個(gè)循環(huán)不會(huì)被執(zhí)行。
35.時(shí)間時(shí)間解析:算法的復(fù)雜度主要指時(shí)間復(fù)雜度和空間復(fù)雜度。
36.Y%2=1或Y%2!=0Y%2=1或Y%2!=0解析:判斷變量是否為奇數(shù)可以用變量與2取模,判斷結(jié)果是為1或下為0。本題具體做法如下:Y%2=1或Y%2!=0。
37.數(shù)據(jù)模型數(shù)據(jù)模型
38.-1*sn-1*sn解析:根據(jù)公式可知,第一處應(yīng)填-1;由于計(jì)算結(jié)果要通過(guò)形參指針sn傳回,所以第二處應(yīng)填*sn。
39.n/=10或n=n/10n/=10或n=n/10解析:每次循環(huán)把n除以10所得的商賦給n。
40.structaa*lhead*rchild;structaa*lhead,*rchild;解析:結(jié)構(gòu)體對(duì)鏈表的定義。
41.D解析:C語(yǔ)言中的“或”關(guān)系用“||”表示,其他相關(guān)邏輯運(yùn)算符“與”用“&&”表示;運(yùn)算符“非”用“!”來(lái)表示。
42.C解析:本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。函數(shù)的形參是函數(shù)定義時(shí)由用戶(hù)定義的形式上的變量,實(shí)參是函數(shù)調(diào)用時(shí),主調(diào)函數(shù)為被調(diào)函數(shù)提供的原始數(shù)據(jù)。在函數(shù)調(diào)用時(shí),實(shí)參和其所對(duì)應(yīng)的形參分別占用不同的存儲(chǔ)單元,彼此之間不影響。
43.C解析:棧和隊(duì)列都是操作受限制的線性表,只允許在端點(diǎn)插入和刪除。不同點(diǎn)是:棧只允許在表的一端進(jìn)行插入和刪除操作,而隊(duì)列允許在表的一端進(jìn)行插入操作,而在另一端進(jìn)行刪除操作。
44.A解析:在C語(yǔ)言中,應(yīng)當(dāng)在定義函數(shù)時(shí)指定函數(shù)值的類(lèi)型。凡不加類(lèi)型說(shuō)明的函數(shù),默認(rèn)按整型處理。在定義函數(shù)時(shí)對(duì)函數(shù)值說(shuō)明的類(lèi)型一般應(yīng)該和return語(yǔ)句中的表達(dá)式類(lèi)型一致。如果函數(shù)值的類(lèi)型和return語(yǔ)句中的表達(dá)式類(lèi)型不一致,則以函數(shù)值的類(lèi)型為準(zhǔn),由系統(tǒng)自動(dòng)進(jìn)行轉(zhuǎn)換,即函數(shù)類(lèi)型決定返回值的類(lèi)型。
45.B
46.A解析:C語(yǔ)言結(jié)構(gòu)體類(lèi)型變量在程序執(zhí)行期間所有成員一直駐留在內(nèi)存中。
47.A解析:本題考查的是排序算法。
for(i=0;i<3;i++)
for(j=2;j>i;j--)
if(x[j+1],x[j]){k=x[j];x[j];x[j+1);x[j+1]=k;}
該段程序的作用是將數(shù)組元素x[0]~x[3]中的數(shù)由大到小排列,得到x[]{7,5,3,1,2,4,6,0}。
for(i=0;i<3;i++)
for(j=4;j<7-i;j++)
if(x[j]>x[j+1]){k=x[j];x[j]=x[j+1];x[j+1]=k;}
該段程序的作用是將數(shù)組元素x[4]~x[7]中的數(shù)由小到大排列,得到x[]={7,5,3,1,0,2,4,6}。因此輸出結(jié)果為75310246。
48.B本題中INTEGER被定義為int*的別名,故直接由它定義的類(lèi)型基類(lèi)型為整型的指針變量。因此,p是基類(lèi)型為int的指針變量,q是int型指針的指針變量。故4個(gè)選項(xiàng)中B正確。
49.B解析:本題中的函數(shù)ss()有兩個(gè)參數(shù),一個(gè)是字符型指針變量s,另一個(gè)是字符型變量t在函數(shù)中通過(guò)一個(gè)while循環(huán),在循環(huán)中一次取出s指向的字符串并判斷它是否和t中存放的字符相同,若相等,則執(zhí)行“s=t-'a'+'A':”(若是小寫(xiě)字母,則把它轉(zhuǎn)換成大寫(xiě)字母)語(yǔ)句。在主函數(shù)中執(zhí)行函數(shù)調(diào)用ss(strl,c),很顯然是把str1數(shù)組中所有字符“d”變成大寫(xiě)字母,其他字符不變。所以4個(gè)選項(xiàng)中B正確。
50.C解析:在fin函數(shù)中,while循環(huán)的功能是:逐個(gè)取字符數(shù)組s的字符判斷其是否是數(shù)字。若是則將其作為個(gè)位數(shù)字保存到變量n中,n的原數(shù)據(jù)的各個(gè)數(shù)位將相應(yīng)左移一個(gè)十進(jìn)制位。當(dāng)指針s指向數(shù)組的第3位時(shí),循環(huán)條件不成立,循環(huán)結(jié)束,返回n的值,輸出n的值為61。
51.D解析:C語(yǔ)言中有基本的算術(shù)運(yùn)算符(+、-、*、/)還包括自增自減運(yùn)算符(++、-),在C語(yǔ)言解析表達(dá)式時(shí),它總是進(jìn)行貪婪咀嚼,這佯,該表達(dá)式就被解析為i+++++i,顯然該表達(dá)式不合C語(yǔ)言語(yǔ)法。
52.D解析:n初始化時(shí)值是十六進(jìn)制20(即十進(jìn)制32),左移1位,相當(dāng)于乘以2,結(jié)果是64。
53.A
54.A\r\n二分法又叫折半(對(duì)分)查找法,只適合于順序存儲(chǔ)的有序表(是指線性表中的元素按值非遞減排列)。二分法的基本思想是:設(shè)有序線性表的長(zhǎng)度為n,被查元素為X,則二分查找的方法如下:
將X與線性表的中間項(xiàng)進(jìn)行比較:若中間項(xiàng)的值等于x,則說(shuō)明找到,查找結(jié)束;若x小于中間項(xiàng)的值,則在線性表的前半部分(即中間項(xiàng)以前的部分)以相同的方法進(jìn)行查找;若X大于中間項(xiàng)的值,則在線性表的后半部分(即中間項(xiàng)以后的部分)以相同的方法進(jìn)行查找、這個(gè)過(guò)程-直進(jìn)行到查找成功或于表長(zhǎng)度為0,(說(shuō)明線性表中沒(méi)有這個(gè)元素為止)順序存儲(chǔ)的線性袁在計(jì)算機(jī)中-般用一個(gè)-維數(shù)組來(lái)表示,在數(shù)組中我們可以通過(guò)數(shù)組名和下標(biāo)來(lái)對(duì)數(shù)組中的任意一個(gè)元素進(jìn)行訪問(wèn),而在鏈表(不管是有序還是無(wú)序)中,要對(duì)元素進(jìn)行訪問(wèn)必須從表頭結(jié)點(diǎn)開(kāi)始,順著鏈條一個(gè)一個(gè)結(jié)點(diǎn)進(jìn)行搜索,因此選項(xiàng)A正確
55.D解析:數(shù)據(jù)處理是指將數(shù)據(jù)轉(zhuǎn)換成信息的過(guò)程,故選項(xiàng)A)敘述錯(cuò)誤;數(shù)據(jù)的物理獨(dú)立性是指數(shù)據(jù)的物理結(jié)構(gòu)的改變,不會(huì)影響數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu),故選項(xiàng)B)敘述錯(cuò)誤;關(guān)系中的行稱(chēng)為元組,對(duì)應(yīng)存儲(chǔ)文件中的記錄,關(guān)系中的列稱(chēng)為屬性,對(duì)應(yīng)存儲(chǔ)文件中的字段,故選項(xiàng)C)敘述錯(cuò)誤。
56.D解析:函數(shù)swapl的形參是數(shù)組名,在調(diào)用時(shí)應(yīng)將數(shù)組名,即數(shù)組的首地址,作為實(shí)參傳遞給形參,形參所指向內(nèi)容的改變可以帶回到實(shí)參,因此調(diào)用函數(shù)swap1是將元素a[0]和a[1]互換。函數(shù)swap2的形參是指針變量,在調(diào)用時(shí)將b[0]、b[1]的值傳遞給它,形參內(nèi)容改變也可以帶回到實(shí)參,b[0]和b[1]的內(nèi)容也進(jìn)行了交換。所以輸出為5353。
57.CC?!窘馕觥坑?jì)算機(jī)算法是指解題方案的準(zhǔn)確而完整的描述,它的基本特征分別是:可行性、確定性、有窮性和擁有足夠的情報(bào)。
58.B解析:數(shù)據(jù)庫(kù)產(chǎn)生的背景就是計(jì)算機(jī)的應(yīng)用范圍越來(lái)越廣泛,數(shù)據(jù)量急劇增加,對(duì)數(shù)據(jù)共享的要求越來(lái)越高。共享的含義是多個(gè)用戶(hù)、多種語(yǔ)言、多個(gè)應(yīng)用程序相互覆蓋的使用一些公用的數(shù)據(jù)集合。在這樣的背景下,為了滿(mǎn)足多用戶(hù)、多應(yīng)用共,享數(shù)據(jù)的要求,就出現(xiàn)了數(shù)據(jù)庫(kù)技術(shù),以便對(duì)數(shù)據(jù)庫(kù)進(jìn)行管理。因此,數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)就是解決數(shù)據(jù)的共享問(wèn)題。故選項(xiàng)B正確。
59.D解析:C語(yǔ)言的程序是由主函數(shù)main()開(kāi)始運(yùn)行,由主函數(shù)來(lái)調(diào)用其他函數(shù),所以D是錯(cuò)誤的。
60.A解析:本題考核的知識(shí)點(diǎn)是數(shù)組的定義、賦初值以及函數(shù)調(diào)用的組合應(yīng)用.本題中函數(shù)sum(int*A)的作用是:將形參a所指的數(shù)組中的第二個(gè)元素的值a[1]賦給第一個(gè)元素a[0]。主函數(shù)中定義一個(gè)長(zhǎng)度為10的整型數(shù)組并賦初值,接著執(zhí)行一個(gè)for循環(huán),該循環(huán)共執(zhí)行了3次.當(dāng)i=2時(shí),調(diào)用函數(shù)sum(&aa[2]),主函數(shù)中將&aa[2]作為實(shí)參傳給行參a,所以此時(shí)形參a所指的數(shù)組的第一個(gè)元素和第二個(gè)元素分別為aa[2]和aa[3],故執(zhí)行完該函數(shù)后將aa[3]的值賦給aa[2],即aa[1]=aa[3]=4,當(dāng)i=1時(shí),調(diào)用函數(shù)sum(&aa[1]),主函數(shù)中將&aa[1]作為實(shí)參傳給行參a,所以此時(shí)形參a所指的數(shù)組的第一個(gè)元素和第二個(gè)元素分別為aa[1]和aa[2],故執(zhí)行完該函數(shù)后將aa[2]的值賦給aa[1],即aa[1]=aa[2]=4;當(dāng)i=0時(shí);調(diào)用函數(shù)sum(&aa[0]),,主函數(shù)中將&aa[0]作為實(shí)參傳給行參a,所以此時(shí)形參a所指的數(shù)組的第一個(gè)元素和第二個(gè)元素分別為aa[0]和aa[1],故執(zhí)行完該函數(shù)后將aa[1]的值賦給aa[0],即aa[0]=aa[1]=4;故最后輸出的aa[0]的值為4,所以,4個(gè)選項(xiàng)中選項(xiàng)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個(gè)人投資理財(cái)顧問(wèn)委托合同3篇
- 2025版特色商業(yè)街區(qū)門(mén)面店裝修施工合同2篇
- 2025年度民品典當(dāng)借款合同標(biāo)準(zhǔn)化文本4篇
- 2025年敬老院護(hù)理員專(zhuān)業(yè)成長(zhǎng)與聘用合同3篇
- 二零二五版門(mén)頭廣告內(nèi)容創(chuàng)意策劃合同4篇
- 2025年度個(gè)人挖掘機(jī)械租賃質(zhì)量保證合同4篇
- 2025版高標(biāo)準(zhǔn)建筑施工現(xiàn)場(chǎng)專(zhuān)用木方、木跳板租賃合同4篇
- 二零二五年度城市綠化項(xiàng)目綠植租擺服務(wù)合同2篇
- 2025年度木模板木方綠色供應(yīng)鏈體系建設(shè)與采購(gòu)合同3篇
- 2025年度互聯(lián)網(wǎng)廣告投放合同范本一4篇
- 有砟軌道施工工藝課件
- 兩辦意見(jiàn)八硬措施煤礦安全生產(chǎn)條例宣貫學(xué)習(xí)課件
- 40篇短文搞定高中英語(yǔ)3500單詞
- 人教版高中數(shù)學(xué)必修二《第九章 統(tǒng)計(jì)》同步練習(xí)及答案解析
- 兒科護(hù)理安全警示教育課件
- 三年級(jí)下冊(cè)口算天天100題
- 國(guó)家中英文名稱(chēng)及代碼縮寫(xiě)(三位)
- 人員密集場(chǎng)所消防安全培訓(xùn)
- 液晶高壓芯片去保護(hù)方法
- 使用AVF血液透析患者的護(hù)理查房
- 拜太歲科儀文檔
評(píng)論
0/150
提交評(píng)論