




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
2021年貴州省遵義市全國計算機等級考試C語言程序設(shè)計預(yù)測試題(含答案)學(xué)校:________班級:________姓名:________考號:________
一、單選題(20題)1.有以下程序:structst{intx;int*y;}*pt;inta[]={1,2},b[]={3,4};structstc[2]={10,a,20,b};pt=c;以下選項中表達(dá)式值為11的是()。
A.++p->xB.pt->xC.*pt->yD.(pt++)->x
2.設(shè)有6個結(jié)點的無向圖,該圖至少應(yīng)有()條邊才能確保是一個連通圖。
A.5B.6C.7D.8
3.以下程序執(zhí)行后的輸出結(jié)果是()。
A.5,5
B.5,11
C.11,11
D.11,5
4.
5.以下敘述中錯誤的是()。
A.C語句必須以分號結(jié)束
B.復(fù)合語句在語法上被看作一條語句
C.空語句出現(xiàn)在任何位置都不會影響程序運行
D.賦值表達(dá)式末尾加分號就構(gòu)成賦值語句
6.
有以下程序:
main
{intx=102,y=012;
printf("%2d,%2d\n",x,y);
}
執(zhí)行后輸出結(jié)果是()。
A.10,01B.02,12C.102,10D.02,10
7.
8.以下程序的輸出結(jié)果是()main(){staticchara[10]={"Chinese"};printf("%d",strlen(a));}
A.7B.2C.9D.10
9.以下選項中,非法的字符常量是______。
A.'\t'B.'\17'C.\nD.'\xaa'
10.軟件設(shè)計包括軟件的結(jié)構(gòu)、數(shù)據(jù)接口和過程設(shè)計,其中軟件的過程設(shè)計是指()
A.模塊間的關(guān)系B.系統(tǒng)結(jié)構(gòu)部件轉(zhuǎn)換成軟件的過程描述C.軟件層次結(jié)構(gòu)D.軟件開發(fā)過程
11.對于只在表的首、尾兩端進行插入操作的線性表,宜采用的存儲結(jié)構(gòu)為()。
A.順序表B.用頭指針表示的循環(huán)單鏈表C.用尾指針表示的循環(huán)單鏈表D.單鏈表
12.若已定義:“inta[9],*p=a;”,并在以后的語句中未改變p的值,不能表示a[1]地址的表達(dá)式是______。
A.p+1B.a+1C.a++D.++p
13.如果定義“班級”關(guān)系如下:班級(班級號,總?cè)霐?shù),所屬學(xué)院,班級學(xué)生)則使它不滿足第一范式的屬性是()。
A.班級號B.班級學(xué)生C.總?cè)霐?shù)D.所屬學(xué)院
14.在以下一組運算中,優(yōu)先級最高的運算符是()
A.<=B.=C.%D.&&
15.fseek函數(shù)的正確調(diào)用形式是()。
A.fseek(文件指針,起始點,位移量)
B.fseek(文件指針,位移量,起始點)
C.fseek(位移量,起始點,文件指針)
D.fseek(起始點,位移量,文件指針)
16.下列程序的輸出結(jié)果是#include"stdio.h”"main(){inti,a=0,b=0;for(i=1;i<10;i++){if(i%2==0){a++;continue;}b++;}printf("a=%d,b=%d",a,b);}
A.a=4,b=4B.a=4,b=5C.a=5,b=4D.a=5,b=5
17.以下不能作為合法常量的是()。
A.'cd'B.1.234e04C.”\a”D.'\011'
18.將10階對稱矩陣壓縮存儲到一維數(shù)組A中,則數(shù)組A的長度最少為()
A.100B.40C.55D.80
19.若x=10010111,則表達(dá)式(3+(int)(x))&(~3)的運算結(jié)果是()。
A.10011000B.10001100C.10101000D.10110000
20.有以下語句,則對a數(shù)組元素的引用不正確的是(0≤i≤9)inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;A.A.a[p-a]
B.*(&a[i])
C.p[i]
D.*(*(a+i))
二、2.填空題(20題)21.已知字符A的ACSII碼值為65,以下語句的輸出結(jié)果是______。
charch='B';
printf("%c%d\n",ch,ch);
22.以下程序的輸出結(jié)果是【】。
intfun(int*x,intn)
{if(n==0)returnx[0];
elsereturnx[0]+fun(x+1,n-1);
}
main()
{inta[]={1,2,3,4,5,6,7};
printf("%d\n",fun(a,3));}
23.當(dāng)數(shù)據(jù)的物理結(jié)構(gòu)(存儲結(jié)構(gòu)、存取方式等)改變時,不影響數(shù)據(jù)庫的邏輯結(jié)構(gòu),從而不致引起應(yīng)用程序的變化,這是指數(shù)據(jù)的【】。
24.設(shè)變量已正確定義為整型,則表達(dá)式n=i=2,++i,i++的值為【】。
25.下列程序的輸出結(jié)果是______。
#include<stdio.h>
main()
{intx=10,y=10,i;
for(i=0;x>8;y=++i)
printf("%d%d",x--,y);
}
26.數(shù)據(jù)庫設(shè)計分為以下6個設(shè)計階段:需求分析階段、______、邏輯設(shè)計階段、物理設(shè)計階段、實施階段、運行和維護階段。
27.以下程序的運行結(jié)果是______。
#include<stdio.h>
main()
{intfun();fun();}
fun()
{staticinta[3]={0,1,2};
inti;
for(i=0;i<3;i++)a[i]+=a[i];
for(i=0;i<3;i++)printf("%d,",a[i]);
pfintf("\n",);}
28.以下程序運行后的輸出結(jié)果是【】。
main()
{intx=10,y=20,t=0;
if(x==y)t=x;x=Y;Y=t;
printf(“%d,%d\n”,x,y);
}
29.在關(guān)系數(shù)據(jù)庫中把數(shù)據(jù)表示成二維表,每一個二維表稱為【】。
30.下列程序段中循環(huán)體的執(zhí)行次數(shù)是______。
a=15;
b=0;
do{b+=2;a-=2+b;}while(a>=0);
31.在樹形結(jié)構(gòu)中,樹根結(jié)點沒有______。
32.下程序的輸出是【】。
main()
{
charstr1[]="Howdoyoudo",*p1=str1;
strcpy(str1+strlen(str1)/2,"esshe");
printf("%s\n",p1);
}
33.有以下程序:
#include<stdio.h>
main()
{charch1,ch2;intn1,n2;
ch1=getchar();ch2=getehar();
n1=ch1-'0';n2=n1*10+(ch2-'0');
printf("%d\n",n2);
}
程序運行時輸入:12<回車>,執(zhí)行后的輸出結(jié)果是【】。
34.若變量n中的值為24,則prnt函數(shù)共輸出【】行。
voidprnt(intn,intaa[])
{inti;
for(i=1;i<=n;i++)
{printf("%6d",aa[i]);
if!(i%5))printf("\n");
}
printf("\n");
}
35.若按功能劃分,軟件測試的方法通常分為白盒測試方法和【】測試方法。
36.有以下程序
main()
{intt=1,i=5;
for(;i>=0;i--)t*=i;
printf("%d\n",t);
}
執(zhí)行后輸出結(jié)果是______。
37.若有函數(shù)max(a,b),為了讓函數(shù)指針變量p指向函數(shù)max,當(dāng)調(diào)用該函數(shù)時,正確的賦值方法是
38.以下程序的輸出結(jié)果是【】。
doublesub(doublex,doubley,doublez)
{y-=1.0;
z=z+x;
returnz;
}
main()
{doublea=2.5,b=9.0;
printf("functionrunningresultis:%6.1f\n",sub(b-a,a,A));
}
39.以下程序的運行結(jié)果是______。
structNode}
intx;
charch;
};
fun(structNode*sn)
}statick=1;
sn->x=20;
Sn->ch='a'+k++;
}
main()
{inti;
staticstructNodest=}10,'a'};
for(i=0;i<2;i++)
fun(&st);
printf("%d,%c\n",st.x,st.ch);
}
40.函數(shù)fun的功能是計算xn。
doublefun(doublex,intn)
{inti;doubley=1;
for(i=1;i<=n;i++)y=y*x;
returny;
}
主函數(shù)中已正確定義m、a、b變量并賦值,并調(diào)用fun函數(shù)計算:m=a4+b4-(a+b)3。實現(xiàn)這一計算的函數(shù)調(diào)用語句為【】。
三、1.選擇題(20題)41.有以下程序:main(){intp[7]={11,13,14,15,16,17,18);i=0,k=0;while(i<7&&p[i]%2){k=k+p[i];i++;}printf("%d\n",k);}執(zhí)行后輸出結(jié)果是()。
A.58B.56C.45D.24
42.下面程序的運行結(jié)果是()。#include<stdio.h>main(){inta=1,b=10;do{b-=a;a++;}while(b--<0);printf("a=%d,b=%d\n",a,b);}
A.a=3,b=11B.a=2,b=8C.a=1,b=-1D.a=4,b=9
43.設(shè)有二維數(shù)組A[8][9],其每個元素占2個字節(jié),從首地址400開始,按行優(yōu)先順序存放,則元素A[8,5]的存儲地址為______。
A.570B.506C.410D.482
44.打開一個已經(jīng)存在的非空文本文件,若文件名為stu,則正確的打開語句為()
A.FILE*fp;fp=fopen("stu.txt","r")
B.FILE*fp;fp=fopen(stu.txt,r)
C.FILE*fp;fP=fopen("stu,txt","wb")
D.FILE*fp;fp=fopen("stu.txt",wb)
45.下列屬于不合法的C語言整型常量的選項是()。A.-32679
B.0Xabc
C.069
D.3.00E+02B.C.D.
46.現(xiàn)有如下程序段#include"stdio.h"main(){intk[30]={12,324,45,6,768,98,21,34,453,456};intcount=0,i=0;while(k[i]){if(k[i]%2==0||k[i]%5==0)count++;i++;}printf("%d,%d\n",count,i);}則程序段的輸出結(jié)果為
A.7,8B.8,8C.7,10D.8,10
47.設(shè)x為int型變量,則執(zhí)行以下語句后,x的值為______。x=10;x+x-=x-x;
A.10B.20C.40D.30
48.有一函數(shù)以下程序段中不能根據(jù)x值正確計算出y值的是
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=-l;
C.y=0;if(x>=0);if(x>0)y=1;elsey=-1;
D.if(x>=0)if(x>0)y=1;elsey=0;elsey=-l;
49.在C語言中______。
A.函數(shù)定義可以嵌套,但函數(shù)調(diào)用不能嵌套
B.函數(shù)定義不可以嵌套,但函數(shù)調(diào)用可以嵌套
C.函數(shù)定義和調(diào)用均不能嵌套
D.函數(shù)定義和調(diào)用均可以嵌套
50.在c語言中,變量的隱含存儲類別是()。
A.autoB.staticC.externD.無存儲類別
51.十進制數(shù)1385轉(zhuǎn)換成十六進制數(shù)為()
A.568B.569C.D85D.D55
52.設(shè)有以下程序段:structst{intn;structst*next;};staticstructsta[3]={5,&a[1],7,&a[2],9,'\0'),*p;p=&a[0];下面選項中,其值為6的表達(dá)式為______。
A.P++->nB.p->n++C.(*p).n++D.++p->n
53.有以下程序:main(){inta=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);elseif((c-1>=d)==1)printf("%d\n",d+1);elseprintf("%d\n",d+2);}執(zhí)行后輸出結(jié)果是______。
A.2B.3C.4D.編譯時有錯,無結(jié)果
54.在執(zhí)行完下列的C語句段之后,則B的值是()。chara='A';intb;B=((34&&56)&&(a<'b'));
A.0B.1C.TRUED.FALSE
55.以下程序的輸出結(jié)果是________。#include<stdio.h>mam(){inta,b,d=241;a=d/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,B);}
A.6,1B.2,1C.6,0D.2,0
56.下列定義數(shù)組的語句中正確的是______。
A.#definesize10charstr1[size],str2[size+2];
B.charstr[];
C.intnum['10'];
D.intn=5;inta[n][n+2];
57.有下列程序:
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
58.下列語句中,正確的是______。
A.staticcharstr[]="China";
B.staticcharstr[];str="China";
C.staticcharstr1[5],str2[]={"China"};strl=str2;
D.staticcharstr1[],str2[];str2={"China"};strcpy(str1,str2);
59.若有以下說明和定義:fun(int*c){}main(){int(*a)()=fun,*b(),w[10],c;……}在做必要的賦值之后,對fun函數(shù)的正確調(diào)用語句是______。
A.a=a(w);B.(*a)(&c);C.b=*b(w);D.fun(b);
60.下列選項中不符合良好程序設(shè)計風(fēng)格的是A.源程序要文檔化B.數(shù)據(jù)說明的次序要規(guī)范化C.避免濫用goto語句D.模塊設(shè)計要保證高耦合、高內(nèi)聚
四、選擇題(20題)61.有以下程序程序執(zhí)行后的輸出結(jié)果是()。
A.y=一1B.y=oC.y=1D.while構(gòu)成無限循環(huán)
62.有下列程序:
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
63.
設(shè)變量已正確定義,則以下能正確計算f=n!的程序是()。
A.f=0:for(i=1;i<=n;i++)f*=i:
B.F=1:for(i=l;i<2n;i++)f*=i:
C.f=l:for(i=n;i>1;i++)f*=i:
D.f=1;for(i=n;i>=2;i--)f*=i:
64.兩個或兩個以上模塊之間聯(lián)系的緊密程度稱為()。
A.耦合性B.內(nèi)聚性C.復(fù)雜性D.數(shù)據(jù)傳輸特性
65.已知intx=(1,2,3,4);變量x的值是()。
A.1B.2C.3D.4
66.
67.對長度為n的線性表進行順序查找,在最壞情況下需要比較的次數(shù)為()。
A.log2nB.n2C.nD.n+1
68.在軟件生產(chǎn)過程中,需求信息的給出是______。A.A.程序員B.項目管理者C.軟件分析設(shè)計人員D.軟件用戶
69.有以下程序程序運行后的輸出結(jié)果是()。
A.1,2B.1,1C.2,1D.2,2
70.
71.下列函數(shù)的功能是()
72.以下錯誤的定義語句是()。
73.
74.以下敘述中正確的是()。
A.程序設(shè)計的任務(wù)就是編寫程序代碼并上機調(diào)試
B.程序設(shè)計的任務(wù)就是確定所用數(shù)據(jù)結(jié)構(gòu)
C.程序設(shè)計的任務(wù)就是確定所用算法
D.以上三種說法都不完整
75.設(shè)在C語言中,float類型數(shù)據(jù)占4個字節(jié),則double類型數(shù)據(jù)占()個字節(jié)。
A.1B.2C.8D.4
76.
77.
78.軟件設(shè)計包括軟件的結(jié)構(gòu)、數(shù)據(jù)接口和過程設(shè)計,其中軟件的過程設(shè)計是指()
A.模塊間的關(guān)系B.系統(tǒng)結(jié)構(gòu)部件轉(zhuǎn)換成軟件的過程描述C.軟件層次結(jié)構(gòu)D.軟件開發(fā)過程
79.對線性表進行二分法檢索,其前提條件是()。
A.線性表以順序方式存儲,并按關(guān)鍵碼值排好序
B.線性表以順序方式存儲,并按關(guān)鍵碼的檢索頻率排好序
C.線性表以鏈?zhǔn)椒绞酱鎯?,并按關(guān)鍵碼值排好序
D.線性表以鏈?zhǔn)椒绞酱鎯?,并按關(guān)鍵碼的檢索頻率排好序
80.下面不屬于需求分析階段任務(wù)的是()。
A.確定軟件系統(tǒng)的功能需求B.確定軟件系統(tǒng)的性能需求C.需求規(guī)格說明書評審D.制定軟件集成測試計劃
五、程序改錯題(1題)81.下列給定程序中,函數(shù)proc()的功能是:對M名學(xué)生的學(xué)習(xí)成績,按從低到高的順序找出前m(m≤10)名學(xué)生來,并將這些學(xué)生數(shù)據(jù)存放在一個動態(tài)分配的連續(xù)存儲區(qū)中,此存儲區(qū)的首地址作為函數(shù)值返回。
請修改程序中的錯誤,使它能得到正確結(jié)果。
注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計題(1題)82.請編寫函數(shù)proc(),其功能是:計算并輸出下列多項式值。S=(1-1/2)+(1/3-1/4)+…+(1/(2n-1)-1/2n)例如,若主函數(shù)從鍵盤給n輸入20后,則輸出為s=0.680803。注意:部分源程序給出如下。請勿改動main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號中填入所編寫的若干語句。試題程序:
參考答案
1.A題目中定義了一個結(jié)構(gòu)體數(shù)組c并初始化,指針pt指向c的第1個元素。則“++pt->x”為11,“pt->x”為10,“*pt->y”為1,“(pt++)->x”為20。故本題答案為A選項。
2.A:在一個無向圖G中,若從頂點Vi到頂點Vj有路徑相連,則稱Vi和Vj是連通的。連通圖是指任意兩個結(jié)點之間都有一個路徑相連。6個節(jié)點的無向圖,至少要5個邊才能確保是任意兩個節(jié)點之間都有路徑相連。下圖是一種可能的連接方式:故本題選A。
3.Bmain函數(shù)中的局部變量m與fun函數(shù)中的靜態(tài)局部變量m同名,因此main訪問的是其局部變量m,所以main中的兩次函數(shù)調(diào)用,實際上都是調(diào)用fun(1,1)。
第一次調(diào)用時,i=i+(m+1)=2+(0+1)=3,m=i+x+y=3+1+1=5。
第二次調(diào)用時,i=i+(m+1)=3+(5+1)=9,m=i+x+y=9+1+l=11。
所以程序輸出5,11。
4.B
5.C解析:C語句必須以分號結(jié)束,選項A是正確的。復(fù)合語句在語法上被看作一條語句,選項B也是正確的??照Z句也算是一條語句,因此如果空語句出現(xiàn)在條件或者循環(huán)語句中,一樣會被當(dāng)作條件子句或者循環(huán)體來看待,所以選項c是錯誤的。賦值表達(dá)式末尾加分號就構(gòu)成賦值語句,選項D正確。故本題應(yīng)該選擇C。
6.C解析:本題中,“printf('%2d,%2d\\n',x,y)”表示以逗號隔開輸出兩個十進制整數(shù),每個整數(shù)域?qū)捠?。而在C語言中規(guī)定:當(dāng)域?qū)捫∮趯嶋H寬度時域?qū)挷黄鹱饔?,按實際寬度輸出,因此最后的輸出值為102和10(y的初值012表示八進制整數(shù)12,等于十進制的10)。所以,4個選項中選項C符合題意。
7.B
8.A
9.C解析:C語言中字符常量是以單引號括起來的單個字符,或為以“\\”與三位八進制數(shù)值或兩位十六進制數(shù)值代替單個字符。
10.B軟件設(shè)計包括軟件的結(jié)構(gòu)設(shè)計、數(shù)據(jù)接口設(shè)計和過程設(shè)計。其中軟件結(jié)構(gòu)設(shè)計主要包括系統(tǒng)由哪些子系統(tǒng)構(gòu)成,以及這些子系統(tǒng)之間的關(guān)系是怎樣的,并將這些內(nèi)容編寫成文檔;數(shù)據(jù)接口設(shè)計的任務(wù)是為每個子系統(tǒng)設(shè)計其與其他子系統(tǒng)間的接口,并編寫成文檔,這個接口要是一個無二義的接口,不需要子系統(tǒng)的操作知識就可以使用;過程設(shè)計是指系統(tǒng)結(jié)構(gòu)部件轉(zhuǎn)換成軟件的過程描述。
11.C
12.C
13.B對于關(guān)系模式,若其中的每個屬性都已不能再分為簡單項,則它屬于第一范式模式。題目中“班級”關(guān)系的“班級學(xué)生”屬性,還可以進行再分,如學(xué)號、姓名、性別、出生日期等,因此不滿足第一范式。本題答案為B選項。
14.C
15.B解析:本題考查函數(shù)fseek的用法。fseek函數(shù)的調(diào)用形式為:
fseek(文件指針,位移量,起始點)
“起始點”用0,1或2代替,0代表“文件開始”,1為“當(dāng)前位置”,2為“文件末尾”。
“位移量”指以“起始點”為基點,向前移動的字節(jié)數(shù)。ANSIC和大多數(shù)C版本要求位移量是long型數(shù)據(jù),這樣當(dāng)文件長度大于64k時不致出現(xiàn)問題。ANSIC標(biāo)準(zhǔn)規(guī)定在數(shù)字末尾加一個字母L表示long型。
16.B解析:continue語句的作用是跳過本次循環(huán)體中余下尚未執(zhí)行的語句,接著再一次進行循環(huán)條件的判定。當(dāng)能被2整除時,a就會增1,之后執(zhí)行continue語句,直接執(zhí)行到for循環(huán)體的結(jié)尾,進行i++,判斷循環(huán)條件。
17.A字符常量是使用單引號標(biāo)注的單個字符,選項A錯誤;選項B屬于浮點數(shù)常量,正確;選項C屬于轉(zhuǎn)義字符常量,正確;選項D屬于轉(zhuǎn)義字符,代表八進制數(shù)011的ASCII值的字符,正確。本題答案為A選項。
18.C
19.A解析:本題主要考查運算表達(dá)式的運算。3+(int)(x)的結(jié)果是10011010,~3的結(jié)果是11111100,二者邏輯與得10011000。
20.D
21.B66B66解析:printf函數(shù)的功能是按照指定的格式,在標(biāo)準(zhǔn)輸出設(shè)備上輸出數(shù)據(jù),它有兩種參數(shù):格式控制參數(shù)和輸出項參數(shù)。本題中,printf('%c%d\\n',ch,ch)表示以字符格式和十進制整數(shù)格式輸出ch,B的ACSII碼值為66,即在計算機中B的十進制整數(shù)格式是66。所以,輸出為B66。
22.1010解析:題目中的fun()函數(shù)直接調(diào)用了自身,所以它是遞歸函數(shù)。函數(shù)中只有一條if語句,意思是:若n為0,則返回x所指內(nèi)容(x[0]等價于*x),否則返回x所指內(nèi)容加上fun(x+1,n-1)。即,當(dāng)n>0時,fun(x,n)=x[0]+fun(x+1,n-1)=x[0]+x[1]+fun(x+2,n-2)=…=x[0]+x[1]+…+x[n];當(dāng)n=0時,fun(x,n)=x[0];當(dāng)n<0時,函數(shù)將無限循環(huán)遞歸調(diào)用下去,因為n-1下去永遠(yuǎn)也不會等于0。所以本題中fun(a,3)=a[0]+a[1]+a[2]+a[3]=12+3+4=10。故應(yīng)該填10。
23.物理獨立性物理獨立性
24.33解析:本題考查的是C語言逗號表達(dá)式的相關(guān)知識。程序在計算逗號表達(dá)式時,從左到右計算由逗號分隔各表達(dá)式的值,整個逗號表達(dá)式的值等于其中最后一個表達(dá)式的值。本題中,首先i被賦值為2,再自加1,最后i++的值計算為3。
25.101091101091解析:for(表達(dá)式1;表達(dá)式2:表達(dá)式3)語句的功能是:首先計算表達(dá)式1的值,然后檢測表達(dá)式2的值,若其值為真,則執(zhí)行循環(huán)體語句,執(zhí)行完畢后,再計算表達(dá)式3的值。然后再檢測表達(dá)式2的值是否為真,若為真,繼續(xù)執(zhí)行循環(huán)體語句,若為假,則退出循環(huán):第1次循環(huán)x>8成立,輸出x=10,y=10后,x的值減1,i=1,執(zhí)行y=++i操作,y的值變?yōu)?;判斷條件還成立,輸出x=9,y=1,然后x的值減1,循環(huán)條件不成立,則退出循環(huán)。
26.概念設(shè)計階段(數(shù)據(jù)庫概念設(shè)計階段)概念設(shè)計階段(數(shù)據(jù)庫概念設(shè)計階段)
27.本題主要考查for循環(huán)語句的使用以及靜態(tài)局部變量的特點。
28.20020,0解析:在主函數(shù)中首先定義了三個整型變量x、y、t,并分別給它們賦初值為10,20,0,接著執(zhí)行if語句,在if后面括號內(nèi)的條件表達(dá)式中,條件“x==y”即“10==20”不成立,則不執(zhí)行其后的語句“t=x”,然后退出if語句,順序執(zhí)行語句x=Y;Y=t;。執(zhí)行完這兩條語句后x的值變?yōu)?0,y的值變?yōu)?,所以最后輸出x,y的值為20和0。
29.關(guān)系或一個關(guān)系關(guān)系或一個關(guān)系解析:在關(guān)系數(shù)據(jù)庫中,把數(shù)據(jù)表示成二維表,而一個二維表就是一個關(guān)系。
30.33解析:本題考查do…while語句形式:
do循環(huán)體
while表達(dá)式
首先執(zhí)行循環(huán)體語句,然后檢測循環(huán)控制條件表達(dá)式的值,若為真,則重復(fù)執(zhí)行循環(huán)體語句,否則退出循環(huán)。第1次循環(huán):b+=2,b=2,a-=2+b,a=11;第2次循環(huán):b=4,a=5;第3次循環(huán):b=6,a=-3,此時再判斷循環(huán)條件不滿足,退出循環(huán)。
31.前件前件
32.HowdoessheHowdoesshe解析:strcpy(str1,s1):字符串拷貝函數(shù),作用是將字符串s1拷貝到字符數(shù)組str1中去。strlen(str):測試字符串str的長度,函數(shù)的值為字符串中實際長度,不包括\'\\0\'在內(nèi)。本題中strlen(str1)的值為13,則strcpy(str1+strlen(str1)/2,'esshe');相當(dāng)于strcpy(str1+6,'esshe');,因此可得答案為Howdoesshe。
33.1212解析:程序中的ch1與ch2為字符型變量,輸入12后,ch1得到字符'1',ch2得到字符'2'。n1=ch1-'0'將字符1,轉(zhuǎn)換為數(shù)值1,同理,n2為1*10+2=12。程序執(zhí)行后輸出十進制整數(shù)12。
34.55解析:本題的關(guān)鍵在于if(!(i%5))printf('\\n),這句,即如果i可被5整除時,則換行。i值為24,可以被5整除4次,并余4,因此,prnt函數(shù)共輸出5行,最后一行有4個數(shù)。
35.黑盒軟件測試的方法有三種:動態(tài)測試、靜態(tài)測試和正確性證明。設(shè)計測試實例的方法一般有兩類:黑盒測試法和白盒測試法。在使用黑盒法設(shè)計測試實例時,測試人員將程序看成一個“黑盒”,即不關(guān)心程序內(nèi)部是如何實現(xiàn)的,只是檢查程序是否符合它的“功能說明”,所以使用黑盒法設(shè)計的測試用例完全是根據(jù)程序的功能說明來設(shè)計的。
36.00解析:本題中的for循環(huán)共執(zhí)行了6次,每執(zhí)行一次將相應(yīng)i的值相乘,最后當(dāng)i=-1時停止循環(huán).該for循環(huán)執(zhí)行完后t的值為5*4*3*2*1*0=0,故最后輸出I的值為0。
37.C
38.functionrunningresultis:9.0
39.20c。20,c。解析:函數(shù)fun的功能是給結(jié)構(gòu)體指針變量所指的結(jié)構(gòu)體變量的各成員賦值,主函數(shù)兩次調(diào)用函數(shù)fun,第一次調(diào)用,實參st兩個成員的值是20和字符b,調(diào)用結(jié)束時,靜態(tài)局部變量k沒有釋放,值為2:第二次調(diào)用,實參st兩個成員的值是20和字符c,調(diào)用結(jié)束時,靜態(tài)局部變量k沒有釋放,值為3;因此,輸出結(jié)果是20和c。
40.m=fun(a4)+fun(b4)-fun(a+b3);m=fun(a,4)+fun(b,4)-fun(a+b,3);解析:函數(shù)fun(x,n)的作用是求xn,因此a4應(yīng)該調(diào)用函數(shù)fun(a,4),b4應(yīng)該調(diào)用函數(shù)fun(b,4),(a+b)3應(yīng)該調(diào)用函數(shù)fun(a+b,3),所以題目中的數(shù)學(xué)表達(dá)式,寫成C程序中的語句為m=fun(a,4)+fun(b,4)-fun(a+b,3)。
41.D解析:在主函數(shù)中首先定義了一個數(shù)組p并初始化,在while后面括號里的表達(dá)式中,i初值為0,當(dāng)p[i]為偶數(shù)時,p[i]%2等于0;當(dāng)i=2時,p[i]=14為偶數(shù),此時while后面括號里的表達(dá)式的值為假,退出循環(huán),此時k=p[0]+p[1],即k=11+13。所以最后輸出k為24。
42.B解析:本題考查兩個知識點:自加自減運算符和do-while循環(huán)語句。do-while循環(huán)條件是b--<0,所以循環(huán)體語句只執(zhí)行一次。
43.A
44.A
45.C解析:C語言中,以0開頭的整型常量表示八進制數(shù),而八進制數(shù)只能由‘O’~‘7’八個字符組成,選項C中出現(xiàn)了數(shù)字9是錯誤的。故應(yīng)該選擇C。
46.D解析:在C語言中,定義一維數(shù)組的語句一般形式如下:
類型名數(shù)組名[常量表達(dá)式];
一維數(shù)組的引用形式為:數(shù)組名[下標(biāo)表達(dá)式]。count表示能被2整除或被5整除的個數(shù),i則計算有多少個數(shù)組元素。
47.B解析:賦值運算符按照“從右往左”的結(jié)合順序。因此,先執(zhí)行x-=x-x,即x=x-(x-x)=10;再執(zhí)行x+=x,即x=x+x=20,故正確選項為B。
48.C解析:本題考查的知識點是if語句的嵌套使用.首先檢查訂與else的配對,然后再分析各分支實現(xiàn)的功能.選項A描述的意思是:在x>=O情況下,則y為1,否則;在x=O時,y為0,剩下的x<0時,y為-1,滿足本題中函數(shù)的要求;選項B描述的意思時:初始化y的值為0,在x>0時,給y重新賦值為1,否則,在x<0時,給y重新賦值為-1,滿足本題中函數(shù)的要求;選項C描述的意思是:在x>0情況下,如果x>0,則y為1,否則即“c==0”時,y為-1:剩下的x<0時,y為0.可見答案C實現(xiàn)的結(jié)果不是給定的表達(dá)式。選項D中描述的意思是:在x>=0的情況下,如果x>=0,就給y賦值為1,否則就給y賦值為0,在不是x>=0的其他情況下,就給y賦值為-1,滿足本題中函數(shù)的要求.所以4個選項中C為所選。
49.B解析:函數(shù)可以實現(xiàn)嵌套調(diào)用,但它的定義不可以嵌套。
50.A解析:auto變量:無static聲明的局部變量。用auto作存儲類別的聲明時,可以不寫auto,存儲類別隱含確定為auto(自動存儲類別),是動態(tài)存儲方式。大多數(shù)變量是自動變量。用static聲明的局部變量是靜態(tài)局部變量。函數(shù)調(diào)用結(jié)束后靜態(tài)局部變量占據(jù)的內(nèi)存存儲單元空間不釋放,局部變量保留原值,下次調(diào)用時可以繼續(xù)使用該值。用extern聲明外部變量,外部變量即全局變量,可以用extern聲明來改變?nèi)肿兞康淖饔糜?實際上,關(guān)鍵字'auto'可以省略,auto不寫則隱含確定為'自動存儲類別',屬于動態(tài)存儲方式。
51.B
52.D
53.B解析:C語言規(guī)定else總是和離它最近的if語句配對。故第一個else和第一個if配對,第二個else和第二個if配對。首先計算第一個if后面的表達(dá)式“a>b>c”,表達(dá)式“a>b”是為1,表達(dá)式“1>c”為0,所以執(zhí)行else后面的語句。先執(zhí)行if后面的表達(dá)式,“c-1>d”為真,值為1?!?==1”為真,執(zhí)行printf語句。
54.B解析:本題考查C語言3個知識點:①將一個字符賦給一個字符變量時,并不是將該字符本身存儲到內(nèi)存中,而是將該字符對應(yīng)的ASCII碼存儲到內(nèi)存單元中;②大寫字母的ASCII碼值小于其對應(yīng)小寫字母的ASCII碼值;③只要邏輯與運算符&&的兩個運算對象都為非零,返回值就是1。
55.B解析:第—個表達(dá)式中,運算的方向是從左至右,所以a的值為2;第二個表達(dá)式中,等式右邊是—個邏輯表達(dá)式,由于結(jié)果為真,所以表達(dá)式的值為1,即b為1。
56.A
57.C解析:因為在函數(shù)fun(intx)中,如果參數(shù)x等于0或1時,返回值3。否則p=x-fun(x-2)這是一個遞歸函數(shù),所以在主函數(shù)調(diào)用fun(7)時,其過程為:“fun(7)=7-fun(5)=7-(5-fun(3))=7-(5-(3-fun(1))=7-(5-(3-3))=7-5=2”,所以最后的輸出結(jié)果為2。
58.A
59.B
60.D解析:編程風(fēng)格是在不影響性能的前提下,有效地編排和組織程序,以提高可讀性和可維護性。更直接地說,風(fēng)格就是意味著要按照規(guī)則進行編程。這些規(guī)則包括:(1)程序文檔化。就是程序文檔包含恰當(dāng)?shù)臉?biāo)識符、適當(dāng)?shù)淖⒔夂统绦虻囊曈X組織等。(2)數(shù)據(jù)說明。出于閱讀理解和維護的需要,最好使模塊前的說明語句次序規(guī)范化。此外,為方便查找,在每個說明語句的說明符后,數(shù)據(jù)名應(yīng)按照字典順序排列。(3)功能模塊化。即把源程序代碼按照功能劃分為低耦合、高內(nèi)聚的模塊。(4)注意goto語句的使用。合理使用goto語句可以提高代碼的運行效率,但goto語句的使用會破壞程序的結(jié)構(gòu)特性。因此,除非確實需要,否則最好不使用goto語句。因此,本題的正確答案是D。
61.A當(dāng)y為。時,y--表達(dá)式為0,條件為假,循環(huán)結(jié)束,執(zhí)行判斷條件后v為一l,所以選擇A)。
62.D\n執(zhí)行第一次for循環(huán)時,用表達(dá)式p[i][J]!=\o來判斷字符串?dāng)?shù)組指針P是否到達(dá)字符串的結(jié)尾,如果沒有到達(dá),繼續(xù)執(zhí)行while中的語句。if語句表示(p[i][j]-\o)除2的余數(shù)不為0時,即字符串所有奇數(shù),執(zhí)行后面的語句。所以退出第1次for的循環(huán)體時,輸出為397,執(zhí)行第2次循環(huán)體。對字符串“2584”進行處理,輸出結(jié)果為5,因而最后輸出結(jié)果為3975。
\n
63.D由i"11的數(shù)字定義可知n!=n*(n-1)*(n-2)*…*1。在選項A中,由于f的初值為0,在for循環(huán)語句中,f依次乘以1,2,3,…,n,最后計算得到f=n!一0,所以選項
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 西安建筑科技大學(xué)華清學(xué)院《智慧工地與智能施工設(shè)備》2023-2024學(xué)年第一學(xué)期期末試卷
- 西安鐵路職業(yè)技術(shù)學(xué)院《經(jīng)典文論批評與實踐》2023-2024學(xué)年第一學(xué)期期末試卷
- 民辦合肥財經(jīng)職業(yè)學(xué)院《法語口語結(jié)構(gòu)Ⅰ》2023-2024學(xué)年第二學(xué)期期末試卷
- 重慶財經(jīng)職業(yè)學(xué)院《普通化學(xué)及實驗》2023-2024學(xué)年第二學(xué)期期末試卷
- 資陽口腔職業(yè)學(xué)院《心血管藥理學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 云南交通職業(yè)技術(shù)學(xué)院《高等傳熱學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 瀟湘職業(yè)學(xué)院《數(shù)字電子技術(shù)II》2023-2024學(xué)年第二學(xué)期期末試卷
- 長春早期教育職業(yè)學(xué)院《單片機原理及應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 昆明醫(yī)科大學(xué)海源學(xué)院《建筑學(xué)概論》2023-2024學(xué)年第一學(xué)期期末試卷
- 買賣房屋定金交易合同
- 高中主題班會 奮力拼搏圓夢高考課件-高三下學(xué)期沖刺高考主題班會
- 武漢市部分學(xué)校2025屆高三第四次月考(數(shù)學(xué)試題)試題
- 防流感班會課件
- 2025安徽蚌埠市國有資本運營控股集團有限公司招聘4人筆試參考題庫附帶答案詳解
- 化學(xué)中考試題及答案寧夏
- 2024年中國資源循環(huán)集團有限公司招聘筆試真題
- 2025年春季四年級下冊語文第15課《白鵝》課件(統(tǒng)編版)
- 17J008擋土墻(重力式、衡重式、懸臂式)圖示圖集
- 2024北京市大興初二(下)期中數(shù)學(xué)試卷及答案
- JGT266-2011 泡沫混凝土標(biāo)準(zhǔn)規(guī)范
- 中建盤扣式落地卸料平臺施工方案
評論
0/150
提交評論