![2021-2022年湖北省隨州市全國計算機等級考試C語言程序設計真題二卷(含答案)_第1頁](http://file4.renrendoc.com/view/cb66e8dbbe70b13aedc162493918709b/cb66e8dbbe70b13aedc162493918709b1.gif)
![2021-2022年湖北省隨州市全國計算機等級考試C語言程序設計真題二卷(含答案)_第2頁](http://file4.renrendoc.com/view/cb66e8dbbe70b13aedc162493918709b/cb66e8dbbe70b13aedc162493918709b2.gif)
![2021-2022年湖北省隨州市全國計算機等級考試C語言程序設計真題二卷(含答案)_第3頁](http://file4.renrendoc.com/view/cb66e8dbbe70b13aedc162493918709b/cb66e8dbbe70b13aedc162493918709b3.gif)
![2021-2022年湖北省隨州市全國計算機等級考試C語言程序設計真題二卷(含答案)_第4頁](http://file4.renrendoc.com/view/cb66e8dbbe70b13aedc162493918709b/cb66e8dbbe70b13aedc162493918709b4.gif)
![2021-2022年湖北省隨州市全國計算機等級考試C語言程序設計真題二卷(含答案)_第5頁](http://file4.renrendoc.com/view/cb66e8dbbe70b13aedc162493918709b/cb66e8dbbe70b13aedc162493918709b5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
2021-2022年湖北省隨州市全國計算機等級考試C語言程序設計真題二卷(含答案)學校:________班級:________姓名:________考號:________
一、單選題(20題)1.一個二維數(shù)組的定義語句為“inta[3][4]={{3,4},{2,8,6}};”,則元素a[1][2]的值為()。
A.2B.4C.6D.8
2.有以下程序:#include<stdio.h>#include<string.h>main(){chara[]=“TEXT”,*b=“++”,c[3]=“1”;printf(“%d,%d,”,strlen(a),sizeof(a));printf(“%d,%d,”,strlen(b),sizeof(b));printf(“%d,%d,\n”,strlen(c),sizeof(c));}程序運行后的輸出結果是()。A.4,5,2,4,1,3,B.4,4,2,2,1,1,C.5,5,3,3,2,2,D.4,4,2,2,1,3
3.當很頻繁的對序列中部進行插入和刪除操作時,應該選擇使用的容器是()
A.vectorB.listC.dequeD.stack
4.下面描述中,不屬于軟件危機表現(xiàn)的是()A.軟件過程不規(guī)范B.軟件開發(fā)生產(chǎn)率低C.軟件質量難以控制D.軟件成本不斷提高
5.對于一個正常運行的C程序,下列敘述中正確的是()。A.A.程序的執(zhí)行總是從main函數(shù)開始,在main函數(shù)結束
B.程序的執(zhí)行總是從程序的第一個函數(shù)開始,在main函數(shù)結束
C.程序的執(zhí)行總是從main函數(shù)開始,在程序的最后一個函數(shù)中結束
D.程序的執(zhí)行總是從程序中的第一個函數(shù)開始,在程序的最后一個函數(shù)中結束
6.下列關于棧的敘述中,正確的是()。
A.棧底元素一定是最后入棧的元素B.棧操作遵循先進后出的原則C.棧頂元素一定是最先入棧的元素D.以上三種說法都不對
7.有以下程序:
程序運行后的輸出結果是()。
A.0B.1C.2D.3
8.下列數(shù)據(jù)結構中,按先進后出原則組織數(shù)據(jù)的是()。
A.循環(huán)隊列B.棧C.順序表D.循環(huán)鏈表
9.若要求在if后一對圓括號中表示a不等于0的關系,則能正確表示這一關系的表達式為()
A.a<>0B.!aC.a=0D.a
10.程序中若有如下說明和定義語句charfun(char*);main(){char*s="one",a[5]={0},(*f1)()=fun,ch;.....}以下選項中對函數(shù)Fun的正確調用語句是______。A.(*f1)(a);B.*f1(*s);C.fun(&a);D.ch=*f1(s);
11.若程序中有宏定義行“#defineN100”,則下列敘述中正確的是()。
A.宏定義行中定義了標識符N的值為整數(shù)100
B.在編譯程序對C語言源程序進行預處理時用100替換標識符N
C.上述宏定義行實現(xiàn)將100賦給標識符N
D.在運行時用100替換標識符N
12.有以下程序:#include<stdio.h>main(){inta=1,b=3,c=5;int*p1=&a,*p2=&b,*p=&c;*p=*p1*(*p2);printf(“%d\n”,c);}程序的運行結果是()。
A.1B.2C.3D.4
13.
14.下列關于return語句的敘述中正確的是()。
A.—個自定義函數(shù)中必須有一條return語句
B.—個自定義函數(shù)中可以根據(jù)不同情況設置多條return語句
C.定義成void類型的函數(shù)中可以有帶返回值的return語句
D.沒有return語句的自定義函數(shù)在執(zhí)行結束時不能返回到調用處
15.以下關于鏈式存儲結構說法錯誤的是()
A.比順序存儲結構的存儲密度小
B.每個節(jié)點是由數(shù)據(jù)域和指針域組成
C.查找結點時鏈式存儲比順序存儲快
D.邏輯上不相鄰的節(jié)點物理上可能相鄰
16.下列排序算法中,()算法可能會出現(xiàn)下面情況:初始數(shù)據(jù)有序時,花費的時間反而最多。
A.堆排序B.冒泡排序C.快速排序D.希爾排序
17.若i、j已定義成mt型,則下列程序段中內循環(huán)體的總執(zhí)行次數(shù)是()。for(i=6;i>0;i--)for(j=0;j<4;j++){…}A.20B.24C.25D.30
18.計算機系統(tǒng)的組成是______。
A.主機、外設B.運算器、控制器C.硬件系統(tǒng)和軟件系統(tǒng)D.CPU、內存儲器
19.在一個C程序中
A.main函數(shù)必須出現(xiàn)在所有函數(shù)之前
B.main函數(shù)可以在任何地方出現(xiàn)
C.main函數(shù)必須出現(xiàn)在所有函數(shù)之后
D.main函數(shù)必須出現(xiàn)在固定位置
20.以下能正確定義一維數(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";
二、2.填空題(20題)21.算法的復雜度主要包括【】復雜度和空間復雜度。
22.數(shù)據(jù)流圖的類型有【】和事務型。
23.軟件維護活動包括以下幾類:改正性維護、適應性維護、【】維護和預防性維護。
24.以下程序運行后的輸出結果是【】。
#include<stdio,h>
main()
{inta=1,b=2,c=3;
if(c=a)printf("%d\n",c);
elseprintf("%d\n",b);}
25.在運算過程中,能夠使空表與非空表的運算統(tǒng)一的結構是【】。
26.下列程序的運行結果是______。
#include<stdio.h>
main()
{inta,b,c;
a=3;b=4;c=5;
if(a>b)
if(a>c)
printf("%d",a);
elseprintf("%d",b);
printf("%d\n",c);
}
27.函數(shù)fun的功能是計算xn。
doublefun(doublex,intn)
{inti;doubley=1;
for(i=1;i<=n;i++)y=y*x;
returny;
}
主函數(shù)中已正確定義m、a、b變量并賦值,并調用fun函數(shù)計算:m=a4+b4-(a+b)3。實現(xiàn)這一計算的函數(shù)調用語句為【】。
28.某二叉樹中度為2的結點有n個,則該二叉樹中有【】個葉子結點。
29.數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它通常包括5個部分,即數(shù)據(jù)項、數(shù)據(jù)結構、數(shù)據(jù)流、______和處理過程。
30.若fp已正確定義為一個文件指針,d1.dat為二進制文件,請?zhí)羁?,以便為“讀”而打開此文件:
fp=fopen(【】);。
31.以下程序運行后的輸出結果是______。
main()
{
intx=1,y=0,a=0,b=0;
switch(x)
{
case1:
switch(y)
{
case0:a++;break;
case1:b++;break;
case2:a++;b++;break;
}
printf("%d%d\n",a,B);
}
32.下列程序的輸出結果是16.00,請?zhí)羁眨?/p>
main()
}
inta=9,b=2;
floatx=【】,y=1.1,z;
z=a/2+b*x/y+1/2;
printf("%5.2f\n",z);
}
33.以下程序運行后的輸出結果是【】。
main()
{inta=1,b=3,c=5;
if(c=a+b)printf("yes\n");
elseprintf("no\n");
}
34.己定義charch='$';inti=l,j;,執(zhí)行j=!ch&&ii++以后,i的值為【】。
35.需求分析的最終結果是產(chǎn)生【】。
36.下面程序的功能是:計算1~10之間的奇數(shù)之和與偶數(shù)之和,請?zhí)羁铡?/p>
#include<stdio.h>
main()
{inta,b,c,i;
a=c=0;
for(i=0;i<=10;i+=2)
{a+=i;
【】;
c+=b;}
printf("偶數(shù)之和=%d\n",a);
printf("奇數(shù)之和=%d\n",c-11);}
37.函數(shù)delete(s,i,n)是作用是從字符串s中刪除從第i個字符開始的n個字符,請?zhí)羁铡?/p>
voiddelete(chars[],inti,intn)
{intj,k,length=0;
while(s[length])
【】;
-i;
j=i;
}
if(【】)
{k=i+n;
if(i+n<=length)
while(k<length)
s[j++]=s[k++];
s[j]\'\0';
}
38.設inta=5,b=6,表達式(++a==b--)?++a:--b的值是【】。
39.以下程序的輸出結果為【】。
main()
{intk=1;
white(k<=15)
if(++k%3!=2)continue;
elseprintf("%d",k);
printf("\n");
}
40.以下程序的輸出結果是()。#include<stdio.h>intfun(intx){staticintt=0;return(t+=x);}main(){ints,i;for(i=1;i<=5;i++)s=fun(i);printf("%d\11",s);}
三、1.選擇題(20題)41.在下列給出的表達式中,與while(E)中的(E)不等價的表達式是()。
A.(!E==0)B.(E>0‖E<0)C.(E==0)D.(E!=0)
42.循環(huán)鏈表的主要優(yōu)點是______。
A.不再需要頭指針了
B.已知某個結點的位置后,能夠容易找到它的直接前驅
C.在進行插入、刪除運算時,能更好地保證鏈表不斷開
D.從表中任一結點出發(fā)都能掃描到整個鏈表
43.若變量已正確定義,有以下程序段
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);
其輸出結果是
A.程序段有語法錯B.3,5,3C.3,5,5D.3,5,7
44.軟件生命周期中花費費用最多的階段是
A.詳細設計B.軟件編碼C.軟件測試D.軟件維護
45.若有下列定義,則對a數(shù)組元素地址的正確引用是()。
inta[5],*p=a;
A.p+5B.*a+1C.&a+1D.&a[0]
46.有如下程序:main(){intn=9;while(n>6){n--;printf("%d",n);}}該程序的輸出結果是
A.987B.876C.8765D.9876
47.關系數(shù)據(jù)庫管理系統(tǒng)應能實現(xiàn)的專門的關系運算包括()。A.A.排序、索引、統(tǒng)計B.選擇、投影、連接C.關聯(lián)、更新、排序D.顯示、打印、制表
48.以下敘述中錯誤的是
A.C語言中對二進制文件的防問速度比文本文件快
B.C語言中,隨機文件以二進制代碼形式存儲數(shù)據(jù)
C.語句FILEfp;定義了一個名為fp的文件指針
D.C語言中的文本文件以ASCII碼形式存儲數(shù)據(jù)
49.下列程序的執(zhí)行結果是______。#include<stdio.h>unionun{inti;charc[2];};voidmain(){unionunx;x.c[0]=10;x.c[1]=1;printf("\n%d",x.i)}
A.266B.11C.265D.138
50.有如下程序main(){charch[2][5]={"6937","8254"},*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>'\0';j+=2)s=10*s+p[i][j]-'0';printf("%d\n",s);}該程序的輸出結果是
A.69825B.63825C.6385D.693825
51.有下列程序:main(){inti,j;for(i=1;i<4;i++){for(j=i;j<4;j++)printf("%d*%d=%d",i,j,i*j);printf("\n");}}程序運行后的輸出結果是()。
A.1*1=11*2=21*3=32*1=22*2=43*1=3
B.1*1=11*2=21*3=32*2=42*3=63*3=9
C.1*1=11*2=22*2=41*3=32*3=63*3=9
D.1*1=12*1=22*2=43*1=33*2=63*3=9
52.若x和y代表整型數(shù),以下表達式中不能正確表示數(shù)學關系|x-y|<10的是()。
A.abs(x-y)<10
B.x-y>-10&&x-y<10
C.!(x-y)<-10||!(y-x)>10
D.(x-y)*(x-y)<100
53.有以下程序:main(){unsignedinta;intb=-1;a=b;printf("%u",a);}程序運行后的輸出結果是()。
A.-1B.65535C.32767D.-32768
54.若變量已正確定義并賦值,下面符合C語言的表達式是_____。
A.a:=b+1B.a=b=c+2C.int18.5%3D.a=a+7=c+b
55.已知inta=1,b=3則a^b的值為
A.3B.1C.2D.4
56.下面程序的輸出結果是()。#definePI3.1415#defineARE(X)PI*x*xmain(){intr=2;printf("%.2f",ARE(r+1));}
A.28.26B.28.26C.9.28D.9.28
57.樹是結點的集合,它的根結點數(shù)目是()。
A.有且只有1B.1或多于1C.0或1D.至少2
58.有以下程序
#include<string.h>
main()
{charp[20]={′a′,′b′,′c′,′d′},q[]="abc",r[]="abcde";
strcat(p,r);strcpy(p+strlen(q),q);
printf("%d\n",strlen(p));
}
程序運行后的輸出結果是
A.9B.6C.11D.7
59.以下只有在使用時才為該類型變量分配內存的存儲類說明是______。
A.auto和static
B.auto和register
C.register和static
D.extern和register
60.若有如下程序段:main(){intn=0;while(printf("*")){n++;if(n<3)break;}}則下列描述正確的是()
A.其中循環(huán)控制表達式與0等價B.其中循環(huán)控制表達式與'0'等價C.其中循環(huán)控制表達式是不合法的D.以上說法都不對
四、選擇題(20題)61.下列各數(shù)據(jù)類型不屬于構造類型的是()。
A.枚舉型B.共用型C.結構型D.數(shù)組型
62.若i、j已定義成mt型,則下列程序段中內循環(huán)體的總執(zhí)行次數(shù)是()。for(i=6;i>0;i--)for(j=0;j<4;j++){…}A.20B.24C.25D.30
63.若執(zhí)行下面的程序時,從鍵盤輸入6和2,則輸出結果是()。
A.5B.3C.2D.0
64.
有如下程序:
main
{inta=2,b=-1.c=2;
if(a<0)if(b<0)c=0;
elsec++;
printf("%d\n",c);
}
該程序的輸出結果是()。
A.0B.1C.2D.3
65.在深度為5的滿二叉樹中,葉子結點的個數(shù)為A.32B.31C.16D.15
66.若有定義floatX=1.5;inta=1,b=3,C=2;,則正確的switch語句是()。
A.
B.
C.
D.
67.
68.下列關于隊列的敘述中正確的是______。A.在隊列中只能插入數(shù)據(jù)B.在隊列中只能刪除數(shù)據(jù)C.隊列是先進先出的線性表D.隊列是先進后出的線性表
69.有以下程序:
程序運行后的輸出結果是()。
A.4B.10C.14D.6
70.已知函數(shù)fread的調用形式為“fread(buffer,size,count,fp);”,其中buffer代表的是()。
A.存放讀入數(shù)據(jù)項的存儲區(qū)
B.一個指向所讀文件的文件指針
C.一個指針,是指向輸入數(shù)據(jù)存放在內存中的起始地址
D.一個整型變量,代表要讀入的數(shù)據(jù)項總數(shù)
71.
72.(14)結構化程序設計主要強調的是()
A.程序的規(guī)模
B.程序的易讀性
C.程序的執(zhí)行效率
D.程序的可移植性
73.
74.下列數(shù)據(jù)結構中,屬于非線性結構的是A.循環(huán)隊列B.帶鏈隊列C.二叉樹D.帶鏈棧
75.面下程序段的運行結果是
charstr[]="ABC",*p=str;
printf("%d\n",*(p+3));
A.67B.0C.字符’C’的地址D.字符’C’
76.有以下程序程序的運行結果是()。
A.CDEFB.ABEFC.ABCDD.CDAB
77.
78.
下列程序中函數(shù)sort()的功能是對數(shù)組a中的數(shù)據(jù)進行由大到小的排序。
#include<stdio.h>
voidsort(inta[],intll)
{inti,j,t;
for(i=0;i<n-1;i++)
for(j=j+1+1;j<n;j++)
if(a[i]<a[j])
{t=a[i];a[i]=a[j];a[j]=t;
}
}
main()
{inta[10]一{1,2,3,4,5,6,7,8,9,10},i;
sort(&a[1],7);
for(i=0;i<10;i++)printf("%d,",a[i]);
}
程序運行后的輸出結果是()。
A.1,2,3,4,5,6,7,8,9,10,
B.10,9,8,7,6,5,4,3,2,1,
C.1,8,7,6,5,4,3,2,9,10,
D.1,2,10,9,8,7,6,5,4,3,
79.有以下程序:
程序執(zhí)行后的輸出結果是()。
A.5,11B.5,5C.11,11D.11,5
80.在面向對象方法中,一個對象請求另一對象為其服務的方式是通過發(fā)送()。A.調用語句B.命令C.口令D.消息
五、程序改錯題(1題)81.下列給定程序中,函數(shù)fIm和funx的功能是:用二分法求方程的一個根,并要求絕對誤差不超過0.001。
.例如,若給m輸入一100,n輸入90,則函數(shù)求得的二個根為2.000。請改正程序中的錯誤,使它能得出正確的結果。注意:不要改動main函數(shù),不得增行或刪行,也不得更改程序的結構!試題程序:
六、程序設計題(1題)82.使用VC++2010打開考生文件夾下prog1中的解決方案。此解決方案的項目中包含一個源程序文件prog1.c。在此程序中,編寫函數(shù)fun(),其功能是求斐波那契數(shù)列中大于t的最小的數(shù),結果由函數(shù)返回。斐波那契數(shù)列F(n)的定義為F(0)=0,F(1)=1F(n)=F(n-1)+F(n-2)例如,當t=1000時,函數(shù)值為1597。注意:部分源程序給出如下。請勿改動主函數(shù)main()和其他函數(shù)中的任何內容,僅在函數(shù)fun()的花括號中填入你編寫的若干語句。試題程序:#include<conio.h>#include<math.h>#include<stdio.h>intfun(intt){}main(){intn;n=1000;printf(“n=%d,f=%d\n”,n,fun(n));}
參考答案
1.C
2.Asizeof是運算符,計算數(shù)組、指針、類型、對象、函數(shù)等所占的字節(jié)大小。strlen(*char)是函數(shù),參數(shù)必須是字符型指針(char*)。該函數(shù)的功能是:返回字符串的長度,不包括字符串結束標識?!皊izeof(a)”是求數(shù)組a所占空間的大小,包括字符串最后的‘\\0’。所以“sizeof(a)”=5,strlen遇到‘\\0’就結束,“strlen(a)”=4。“strier(b)”是指針指向的字符串長度,“sizeof(b)”是指針的大小?!皊trlen(c)”是字符串的長度,“sizeof(c)”是數(shù)組的長度。因此,輸出結果是4,5,2,4,1,3,。故本題答案為A選項。
3.B
4.A軟件危機主要表現(xiàn)在:軟件需求的增長得不到滿足;軟件開發(fā)成本和進度無法控制;軟件質量難以保證;軟件不可維護或維護程度非常低;軟件的成本不斷提高;軟件開發(fā)生產(chǎn)率的提高趕不上硬件的發(fā)展和應用需求的增長。所以選擇A。
5.A解析:一個C語言源程序無論包括了多少函數(shù),總是從main函數(shù)開始執(zhí)行,從main函數(shù)結束。
6.B棧是先進后出,因此,棧底元素是先入棧的元素,棧頂元素是后入棧的元素。
7.B第一次執(zhí)行外循環(huán)i的值為1,滿足條件,判斷第一次內循環(huán),j的值為3,不滿足條件,跳出內循環(huán)。第二次執(zhí)行外循環(huán)i的值為2,同理也不滿足內循環(huán)條件,跳出內循環(huán)。第三次執(zhí)行外循環(huán)i的值為3,此時進入內循環(huán)判斷條件時,條件成立,執(zhí)行m=m%j,m的值為1,跳出內循環(huán),跳出外循環(huán)打印m的值。
8.B解析:循環(huán)隊列是隊列的一種順序存儲結構,隊列是以先進先出為原則組織數(shù)據(jù)的一種特殊線性表,選項A錯誤;棧是以先進后出為原則組織數(shù)據(jù)的一種特殊線性表,選項B正確;順序表是線性表的順序存儲結構,選項C錯誤;循環(huán)鏈表是一般線性表的一種鏈式存儲結構,選項D錯誤。
9.D
10.A解析:題中將函數(shù)fun的入口地址賦給了指針變量f1,這時f1和fun都指向函數(shù)的開頭,調用*f1就是調用函數(shù)fun。
11.B宏定義在編譯程序時做了一個簡單的替換,所以B選項正確。故本題答案為B選項。
12.C該程序中“int*p1=&a,*p2=&b,*p=&c;”定義了3個指針變量,并賦值。指針變量p1指向a,p2指向b,p指向c。執(zhí)行“*p=*p1*(*p2);”語句,給p所指的存儲單元c賦值。p1所指的存儲單元的值,與p2所指的存儲單元b的值相乘,也就是c=a*b,等價于c=1*3=3。故本題答案為C選項。
13.A
14.B在函數(shù)中允許有多個return語句,但每次調用只能有一個return語句被執(zhí)行,因此只能返回一個函數(shù)值,A選項描述錯誤。定義成void類型的函數(shù),不允許從該函數(shù)取得返回值,也不允許使用return語句,C選項描述錯誤。沒有return語句的函數(shù)在執(zhí)行到函數(shù)的最后一條語句后會自動返回到調用處,D選項描述錯誤。故本題答案為B選項。
15.C
16.C
17.B本題考查for循環(huán)的使用。對于第1個for循環(huán),任何一個i,內層j的循環(huán)都要使j~0到3,j=4時不符合,所以退出j循環(huán);然后i減1,J仍然要從0~3,j=4時退出J循環(huán)直到i變成0,退出i循環(huán)。第一條for語句執(zhí)行6次,第二條for語句執(zhí)行4次,所以內循環(huán)體執(zhí)行6*4=24次。
18.C
19.B解析:一個完整的C語言程序有且僅有一個主函數(shù)(main()函數(shù))。程序總從main()函數(shù)的第一條語句開始執(zhí)行,到main()函數(shù)的最后一條語句結束,其他函數(shù)都是在執(zhí)行main()函數(shù)時,通過函數(shù)調用或嵌套調用而得以執(zhí)行的。C語言規(guī)定,main()函數(shù)在程序中的位置是任意的,故選項A、選項C和選項D均不正確。所以,B選項為所選。
20.B解析:選項A)定義的是長度為5的數(shù)組元素,但初值有6個元素,所以錯誤;選項C)不符合數(shù)組定義形式,數(shù)組名后應加上“[];選項D)的類型說明符錯誤,應改為char;選項B)中的0,1,2,3,4,5分別表示對應字符的ASCII碼,所以正確。
21.時間時間解析:算法的復雜度主要指時間復雜度和空間復雜度。所謂算法的時間復雜度,是指執(zhí)行算法所需要的計算工作量;算法的空間復雜度,一般是指執(zhí)行這個算法所需要的內存空間。
22.變換型典型的數(shù)據(jù)流類型有兩種:變換型和事務型。變換型是指信息沿輸入通路進入系統(tǒng),同時由外部形式變換成內部形式,進入系統(tǒng)的信息通過變換中心,經(jīng)加工處理以后再沿輸出通路變換成外部形式離開軟件系統(tǒng);在很多軟件應用中,存在某種作業(yè)數(shù)據(jù)流,它可以引發(fā)一個或多個處理,這些處理能夠完成該作業(yè)要求的功能,這種數(shù)據(jù)流就叫做事務。
23.完善性軟件維護活動包括以下幾類:改正性維護,適應性維護、完善性維護和預防性維護,完善性維護是指為了滿足用戶對軟件提出的新功能與性能要求,需要修改或再開發(fā)軟件,以擴充軟件功能、增強軟件性能、改進加工效率、提高軟件的可維護性。
24.11解析:該程序要注意的是if語句的判斷條件“c=a”是賦值,而不是“c==a”。由于a=1,故條件c=a使c的值為1(真),所以輸出c的值1。
25.循環(huán)鏈表循環(huán)鏈表解析:在鏈表的運算過程中,采用鏈接方式即循環(huán)鏈表的結構把空表與非空表的運算統(tǒng)一起來。循環(huán)鏈表具有兩個特點:①在循環(huán)鏈表中增加了一個表頭結點,其數(shù)據(jù)域為任意或根據(jù)需要來設置,指針域指向線性表的第一個元素的結點。循環(huán)鏈表的頭指針指向表頭結點。②循環(huán)鏈表中最后一個結點的指針不是空,而是指向表頭結點。
26.55解析:分析程序,當a=3;b=4;c=5時,判斷語句a>b不成立,所以不執(zhí)行后面的語句,直接執(zhí)行“printf('%d\\n',c);”語句,輸出c的值,輸出結果為5。
27.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應該調用函數(shù)fun(a,4),b4應該調用函數(shù)fun(b,4),(a+b)3應該調用函數(shù)fun(a+b,3),所以題目中的數(shù)學表達式,寫成C程序中的語句為m=fun(a,4)+fun(b,4)-fun(a+b,3)。
28.n+1n+1解析:在任意一棵二叉樹中,度為0的結點(即葉子結點)總是比度為0的結點多一個。
29.數(shù)據(jù)存儲數(shù)據(jù)存儲
30.d1.dat"rb"d1.dat,'rb'解析:打開文件的函數(shù)為fopen('文件名','mode'),其中'mode'表示文件的打開方式。如果打開的是二進制文件,其mode字符串可以是:'rb'、'wb'、'ab'、'rb+'、'wb+'、'ab+'。'r'表示以只讀方式打開。'w'表示以寫方式打開,如果已存在該文件名的文件,文件中的內容將被清空。若文件名不存在,則將創(chuàng)建該文件。'a'為追加方式打開。若文件存在時,將打開這個文件并且在文件的末尾進行追加。當文件不存在,將創(chuàng)建新文件。'r+'打開一個已存在文件用于更新(可讀可寫)。\'w+'創(chuàng)建一個新文件用于更新,如果文件存在,文件被重寫(可讀可寫)。'a+'打開用于追加,當文件不存在時,創(chuàng)建新文件,并在文件末尾進行追加(可讀可寫)。根據(jù)題意,應該填'd1.dat','rb'。
31.2121解析:本題考核的知識點是switch語句的嵌套應用。外層switch語句后面括號里的x的值為1,所以執(zhí)行從case1:后面的語句開始執(zhí)行,而case1:后面語句也為switch語句,這個switch語句后面括號里的y的值為0,所以從該switch語句里的case():開始執(zhí)行即執(zhí)行a++,這時a的值變?yōu)?,執(zhí)行完畢,遇到break語句,退出內層switch語句,又回到外層switch語句,繼續(xù)執(zhí)行case1:下面的語句即case2:執(zhí)行完畢后,a自加1變?yōu)?,b自加1變1。所以最后輸出的a和b的值為21。
解析:本題,已知結果z=16.00,即16.0=a/2+b*x/y+1/2,分別把a、b代入,得到16.0=(9/2+2*x/1.1+1/2。因為a=9,a是整型,所以9/2的值在沒有進行類型轉換時,等于4,1/2同理,等于0。代入求一元一次方程,很容易就可以得出x=6.6。
33.yesyes解析:if語句的條件語句為c=a+b=1+3=4,即條件為真,執(zhí)行語句printf('yes\\n');,輸出結果為yes。
34.11解析:本題中的ch是一個字符變量,其初始值為'$'(非0值即為真),所以!ch的結果為假,此時&&右邊的i++被“短路”,即不會被計算。由此可見,i的值不會改變,故本題應該填1。
35.需求規(guī)格說明書需求規(guī)格說明書解析:軟件需求規(guī)格說明書是需求分析階段的最后成果,是軟件開發(fā)中的重要文檔之一。需求規(guī)格說明書包括正確性、無歧義性、完整性、可驗證性、一致性、可理解性、可修改性和可追蹤性等。
36.b=i+1b=i+1解析:本題考查了for循環(huán)語句的執(zhí)行過程。i+=2是修正表達式,執(zhí)行一次循環(huán)體后i的值就增加2,i的初始值為0,每次加2之后和累加至a,所以a的值就是1~10之間的偶數(shù)之后;b的值是1~11之間的奇數(shù)和,但在輸出b值時c去掉多加的11,即為1~10之間的奇數(shù)之和。
37.length++i<lengthlength++\r\ni<length解析:第一個循環(huán)極有可能是計算串的長度,在i<=length時字符才被刪除,被刪除的是第i個到第i+n或最后一個間的所有字符。刪除前,應判斷i<=length。由于已經(jīng)進行了-i運算,故實際應填入i<length。
38.77解析:此表達式為三目運算符,++a的值為6,b--的值為6,則整個表達式的值為++a的值,++a的值為7。請注意前綴++,--和后綴++,--的區(qū)別。
39.25811142581114解析:本題通過while和if語句,求得出1~15之間與3取模為2的整數(shù),并依次輸出。
40.1515解析:在函數(shù)fun(intx)中定義了局部靜態(tài)整形變量t,并初始化為0。這個函數(shù)的返回值為t+x。所以在主函數(shù)的for循環(huán)中,5次連續(xù)調用fun(i),實現(xiàn)了從1到5連續(xù)數(shù)字的相加運算。因而最后結果等于15。
41.B解析:在while(E)中,表達式E可以是C語言中任意合法的條件表達式,但不能為空,由它來控制循環(huán)體是否執(zhí)行。在選項B)中表達式E>0‖E<0是一個邏輯表達式。
42.D
43.B解析:兩個if語句的判斷條件都不滿足,程序只執(zhí)行了c=a這條語句,所以變量c的值等于3,變量b的值沒能變化,程序輸出的結果為3,5,3。所以正確答案為B)。
44.D解析:軟件生命周期分為軟件定義、軟件開發(fā)及軟件運行維護3個階段。本題中,詳細設計、軟件編碼和軟件測試都屬于軟件開發(fā)階段;維護是軟件生命周期的最后一個階段,也是持續(xù)時間最長,花費代價最大的一個階段,軟件工程學的一個目的就是提高軟件的可維護性,降低維護的代價。
45.D解析:本題考查如何引用數(shù)組元素的地址。
選項A)中,p+5引用的是a[5]的地址,而數(shù)組a只有5個元素,即a[0]、a[1]、a[2];a[3]、a[4],所以引用錯誤;選項B)中,*a+1指的是將數(shù)組a的第一個元素加1;選項C)中,這種引用方式錯誤;選項D)中,&a[0]引用的是數(shù)組的首地址。
46.B解析:該題目應該根據(jù)循環(huán)體第一次和最后一次執(zhí)行時的輸出結果來決定哪一項是正確的。第一次進入循環(huán)時,n的值是9,循環(huán)體內,先經(jīng)過n--運算,n的值變?yōu)?,所以第一次的輸出值是8,由此可以排除選項A)和D)。由循環(huán)條件n>6可以知道,最后一次循環(huán)開始時,n的值應該為7,所以最后一次執(zhí)行循環(huán)時,輸出為6,由此可以排除選項C)。
47.B解析:關系數(shù)據(jù)庫建立在關系數(shù)據(jù)模型的基礎上,具有嚴格的數(shù)學理論基礎。關系數(shù)據(jù)庫對數(shù)據(jù)的操作除了包括集合代數(shù)的并、差等運算之外,更定義了一組專門的關系運算:連接、選擇和投影。關系運算的特點是運算的對象都是表。
48.C解析:本題考查了C語言中文件的一些基本概念。定義文件類型指針變量的一般形式為:
FILE*指針變量名;
因此選項C是錯誤的,應該選擇C。
49.A解析:由于本題定義的是共用體,所以成員表列中的整型變量x與字符數(shù)組c共占用同一個存儲單元,且此存儲單元為2個字節(jié),通常c[0]位于低字節(jié),c[1]位于高字節(jié),所以x.i的值為266。
50.C解析:該題稍微難一點。主要要搞清楚以下幾點:①定義了一個指針數(shù)組char.p[2]后,程序中第一個循環(huán)for(i=0;i<2;i++)p[i]=ch[i];的作用,是使指針數(shù)組的p[0]元素(它本身是一個指針)指向了二維數(shù)組ch的第一行字符串,并使指針數(shù)組的p11)元素指向了二維數(shù)組ch的第二行字符串,這樣,就使指針數(shù)組p和二維數(shù)組ch建立起了一種對應關系,以后對二維數(shù)組ch的某個元素的引用就有兩種等價的形式:ch[i][j]或p[i][j]。②對二維數(shù)組ch的初始化,使其第一行ch[0]中存入了字符串'6937',第二行ch[1]中的內容為字符串'8254'。③程序中第二個循環(huán)中的循環(huán)體s=e*10+p[i][j]-‘0’;的功能是這樣的,每執(zhí)行一次,將s中的值乘以10(也即,將s中的數(shù)值整體向左移動一位,并在空出來的個位上添一個0),再將當前p[i][j]中的字符量轉換為相應的數(shù)字,然后把這個數(shù)字加到s的個位上。④注意到內層循環(huán)的循環(huán)條件p[i][j]>,0,是指p[i][j]中的字符只要不是字符串結束標志,\\0,就繼續(xù)循環(huán),語句j+=2;是使下標j每次增加2,也即一個隔一個地從p[i]所指向的字符串中取出字符。經(jīng)過上述解析后,不難看出,該程序首先從p[0]所指向的字符串'6937'中一個隔一個地取出字符,分別是‘6’和‘3’,然后從p[1]所指向的字符串'8254'中一個隔一個地取出字符,分別是‘8’和‘5’,同時經(jīng)過轉換和相加運算后,結果s中的值應該是6385,所以,正確答案是C)。
51.B解析:外層for循環(huán)的自變量i從1開始,每次循環(huán)后增1,直到i等于3結束.對于外層循環(huán)自變量i的每一個值,內層循環(huán)的自變量j每次從i開始,每次循環(huán)后增1,直到j等于3結束。所以在每次外循環(huán)開始后,內層循環(huán)在一行先打印i*j=兩個乘數(shù)的積,然后回車換行,下次循環(huán)從下一行開始打印輸出結果。
52.C解析:選項A用了一個絕對值函數(shù)abs(),故選項A正確;選項B中用了一個“&&”邏輯與,故選項B正確;選項C中,“||”左邊的式子如為真,將不再判斷其后的表達式的值,故選項C不正確;選項D為本題中數(shù)學關系式的一個等價命題,故選項D正確。所以,4個選項中選項C符合題意。
53.B當運算對象為不同的類型時,數(shù)據(jù)的轉換方向為int→unsigned→long→double。本題程序中的變量b為int型,先要轉換為unsigned型,int型變量的數(shù)值范圍為-32768~32767,最高位為符號位,而unsigned所表示的數(shù)的范圍為0~65535,它的最高位為數(shù)值位。由于內存中是以補碼形式存儲數(shù)據(jù)的,所以,整型的“-1”在內存中表示為16個1,最高位的“1”表示符號負,將它轉換為unsigned類型,即將原符號位表示符號的“1”看成數(shù)值,就可得到16個數(shù)值位1,即65535。
54.B解析:選項A和C一望而知其錯;對于表達式a=a+7=c+b(答案D),是先執(zhí)行賦值表達式a+7=c+b,再把這個表達式的值賦給a,顯然,表達式a+7=c+b非法,因為賦值表達式的左側不能為常量或表達式。
55.C解析:^是按位異或運算,如果對應位不同則結果為1,相同則為0。
56.C解析:帶參數(shù)的宏展開是在編譯時進行的,是一種純粹文字性的替換過程。本題定義了一個帶參數(shù)宏#defineARE(x)PI*x*x,在printf()函數(shù)中使用了這個宏,展開過程為:ARE(r+1)=>PI*r+1*r+1=>3.1415*r+1*r+1,其結果為3.1415*2+1*2+1=6.283+2+1=9.283,由于輸出格式限定為兩位小數(shù),故輸出結果為9.28,應該選擇C。
57.A樹形結構是一類重要的非線性數(shù)據(jù)結構。樹是n(n≥0)個結點的集合,對應任意一棵非空樹,它具有以下幾點重要的性質。
①有且僅有一個特定的稱為根的結點。
②當n>1時,其余結點可分為m(m>0)個互不相交的有限集T1,T2,…,TM,其中每一個集合本身又是一棵樹,稱為子樹。
因此,本題的正確答案有且只有一個。
58.B解析:strcpy()函數(shù)的功能是將字符串q復制到從p[3]位置開始的存儲單元,同時復制字符串結束標志'\\0'到p[6]中。函數(shù)strlen()返回的是字符串中不包括'\\0'在內的實際長度,故本題答案為B)
59.B解析:extern、register、static、auto分別是定義外部變量、寄存器變量、靜態(tài)變量、自動變量,其中,自動變量和寄存器變量屬于動態(tài)存儲,調用時臨時分配單元而靜態(tài)變量和外部變量屬于靜態(tài)存儲,在整個程序運行時都存在。
60.B
61.A本題考查
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025如何寫農村土地承包合同范文
- 2025服裝代理商合同協(xié)議書范本
- 2《花的學?!氛f課稿-2024-2025學年統(tǒng)編版語文三年級上冊
- 2024年五年級數(shù)學上冊 二 小數(shù)乘法 2小數(shù)的乘法第2課時 小數(shù)乘小數(shù)說課稿 冀教版
- 軍訓訓合同范例
- 2024-2025學年高中化學上學期《化學計量在試驗中的應用》說課稿 新人教版必修1
- 出口貨代合同范例
- 出國勞務采購合同范例
- 出讓土地蓋樓合同范本
- 客戶信息保護與商業(yè)推廣分離準則
- 排球正面上手傳球 說課稿-2023-2024學年高一上學期體育與健康人教版必修第一冊
- 2025年浙江省交通投資集團財務共享服務中心招聘2名高頻重點提升(共500題)附帶答案詳解
- 做投標文件培訓
- 9.4+跨學科實踐:制作簡易活塞式抽水機課件+-2024-2025學年人教版物理八年級下冊
- 建筑工程工作計劃
- 2025年中國國際投資促進中心限責任公司招聘管理單位筆試遴選500模擬題附帶答案詳解
- 瓶裝液化氣送氣工培訓
- 外科護理課程思政課程標準
- 船舶航行安全
- 道德經(jīng)全文完整版本
- 9.2溶解度(第1課時飽和溶液不飽和溶液)+教學設計-2024-2025學年九年級化學人教版(2024)下冊
評論
0/150
提交評論