




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
2021年甘肅省隴南市全國計算機(jī)等級考試C語言程序設(shè)計真題二卷(含答案)學(xué)校:________班級:________姓名:________考號:________
一、單選題(20題)1.下述程序的輸出結(jié)果是()。#include<stdio.h>main(){inti;for(i=1;i<=10;i++){if(i*i>=20)(i*i<=lOO))break;}printf("%d\n",i*i);}A.49B.36C.25D.64
2.有以下程序執(zhí)行程序時,給變量X輸入l0,程序的輸出結(jié)果是()。
A.55B.54C.65D.45
3.以下選項中,算術(shù)表達(dá)式的值與其他3個不同的是()。
A.3/5.B.3./5C.3/5D.3.0/5.0
4.有以下程序:#include<stdio.h>#deflneS1(z)4*z+4*(z)#defineS2(x,y)4*(x)*(y)+y*xmain(){inta=1,b=2;printf(“%d,”,S1(a+b));printf(“%d,”,S2(a,b)+S1(3));printf(“%d”,S2(3+a,b+3));}程序運行后的輸出結(jié)果是()。
A.18,34,100B.24,34,92C.24,34,100D.18,34,92
5.用鄰接矩陣A表示有向圖G的存儲結(jié)構(gòu),則有向圖G中頂點i的入度為()。
A.第i行非0元素的個數(shù)之和B.第i列非0元素的個數(shù)之和C.第i行0元素的個數(shù)之和D.第i列0元素的個數(shù)之和
6.數(shù)組A中,每個元素的長度為3個字節(jié),行下標(biāo)i從1到8,列下標(biāo)j從1到10,從首地址SA開始連續(xù)存放的存儲器內(nèi),該數(shù)組按行存放,元素A[8][5]的起始地址為()。
A.SA+141B.SA+144C.SA+222D.SA+225
7.可以作為Windows外殼程序的是()
A.程序管理器B.文件管理C.程序管理器和文件管理器D.主群組
8.下列程序的輸出結(jié)果是()。main(){inta=4,b=5,c;if(a<B){c=a*b;printf("%d,%d,%d\n",b,a,C);}else{c=b/a;printf("%d,%d,%d\n",b,a,C);}}
A.4,5,12B.20C.5,4,20D.12
9.可用作C語言用戶標(biāo)識符的一組標(biāo)識符是()。A.voiddefine+WORDB.a3_b3_123YNC.for-abcCaseD.2aDOsizeof
10.已知一算術(shù)表達(dá)式的中綴形式為A+B*C–D/E,后綴形式為ABC*+DE/–,其前綴形式為()。
A.–A+B*C/DEB.–A+B*CD/EC.–+*ABC/DED.–+A*BC/DE
11.若用一個大小為6的數(shù)組來實現(xiàn)循環(huán)隊列,且當(dāng)前rear和front的值分別為0和3,當(dāng)從隊列中刪除一個元素,再加入兩個元素后,rear和front的值分別為()
A.2和4B.1和5C.4和2D.5和1
12.設(shè)棧S的初始狀態(tài)為空,棧的容量為5,若入棧元素的順序是e1、e2、e3、e4、e5,則出棧元素的順序不可能是______。
A.e1、e2、e3、e4、e5
B.e5、e4、e3、e2、e1
C.e2、e4、e3、e5、e1
D.e3、e4、e1、e2、e5
13.若有定義“intb[8],*p=b;”,則p+6表示()。
A.數(shù)組元素b[6]的值B.數(shù)組元素b[6]的地址C.數(shù)組元素b[7]的地址D.數(shù)組元素b[0]的值加上6
14.設(shè)無向圖G中的邊的集合E={(a,b),(a,e),(a,c),(b,e),(e,d),(d,f),(f,c)},則從頂點a出發(fā)進(jìn)行深度優(yōu)先遍歷可以得到的一種頂點序列為()。
A.aedfcbB.acfebdC.aebcfdD.aedfbc
15.下列哪個算法是對一個list排序的最快方法()
A.快速排序B.冒泡排序C.二分插入排序D.線性排序
16.以下敘述中錯誤的是()。
A.c語言是一種結(jié)構(gòu)化程序設(shè)計語言
B.使用三種基本結(jié)構(gòu)構(gòu)成的程序只能解決簡單問題
C.結(jié)構(gòu)化程序設(shè)計提倡模塊化的設(shè)計方法
D.結(jié)構(gòu)化程序由順序、分支、循環(huán)三種基本結(jié)構(gòu)組成
17.下列關(guān)于信息系統(tǒng)的敘述中,錯誤的是()。
A.廣播電視是一種雙向的、點到多點的信息交互系自
B.網(wǎng)絡(luò)聊天是一種雙向的,以信息交互為主要目的系統(tǒng)
C.電話是一種雙向的、點對點的、以信息交互為主要的的系統(tǒng)
D.雷達(dá)是一種以感測和識別為主要目的的系統(tǒng)
18.設(shè)計一個判別表達(dá)式中左、右括號是否配對出現(xiàn)的算法,采用()數(shù)據(jù)結(jié)構(gòu)最佳。A.線性表的順序存儲結(jié)構(gòu)B.隊列C.線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)D.棧
19.設(shè)有以下語句
charchl,ch2;scanf("%c%C",&chl,&ch2);
若要為變量chl和ch2分別輸入字符A和B,正確的輸入形式應(yīng)該是()。
A.A和B之間用逗號間隔
B.A和B之間不能有任何間隔符
C.A和B之間可以用回車間隔
D.A和B之間用空格間隔
20.下列程序段輸出的字符串長度為()。printf("\\aaa\'ccc\bddd\'");
A.11B.12C.13D.17
二、2.填空題(20題)21.下列程序的運行結(jié)果是______。
#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);
}
22.若有定義:inta[4][4]={{1,2,3,4},{0},{4,6,8,10},{1,3,5,7}},則初始化后,a[2][2]得到的初值是______。
23.要求使下列程序輸出5個整數(shù),請?zhí)羁铡?/p>
for(i=0;i<=______;printf("%d\n",i+=2));
24.下面pi函數(shù)的功能是根據(jù)以下公式返回滿足精度要求的π的值。請根據(jù)以下算法要求補(bǔ)足所缺語句。
doublepi(doubleeps)
{doubles=0.0,t=1.0;
intn;
for(【】;t>eps;n++)
{s+=t;
t=n*t/(2*n+1);
}
return(2.0*【】);
}
25.有以下程序
main()
{intt=1,i=5;
for(;i>=0;i--)t*=i;
printf("%d\n",t);
}
執(zhí)行后輸出結(jié)果是______。
26.以下程序運行后的輸出結(jié)果是【】。
#defineS(x)4*x*x+1
main()
{inti=6,j=8;
printf("%d\n",S(i+j));
}
27.在面向?qū)ο蟮姆椒ㄖ?,______描述的是具有相似屬性與操作的一組對象。
28.以下程序的運行結(jié)果是【】。
#include<string.h>
typedefstructstudent{
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);
}
29.若x和y都是double型變量,且x的初值為3.0,y的初值為2.0,則表達(dá)式pow(y,fabs(x))的值為【】。
30.以下程序用來統(tǒng)計文件中字符個數(shù)。請?zhí)羁铡?/p>
#include"stdio.h"
main()
{FILE*fp;longnum=OL;
if((fp=fopen("fname.dat","r")==NULL)
{Pirntf("Openerror\n");exit(0);}
while(【】)
{fgetc(fp);num++;}
printf("num=%1d\n",num-1);
fclose(fp);
}
31.該程序運行的結(jié)果是【】。
#include<stdio.h>
main()
{unionEXANPLE
{struct
{
intx;
inty;
}in;
inta;
intb;
}e;
e.a=1;
e.b=2;
e.in.x=e.a*e.b;
e.in.y=e.a+e.b;
printf("\n%d,%d",e.in.x,e.in.y);
printf("%d,%d\n",e.a,e.b);
}
32.數(shù)據(jù)流圖的類型有【】和事務(wù)型。
33.數(shù)據(jù)結(jié)構(gòu)分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),帶鏈的隊列屬于[]。
34.若想通過以下輸入語句使a=5.0,b=4,c=3,則輸入數(shù)據(jù)的形式應(yīng)該是【】。
intb,c;floata;
scanf("%f,%d,c=%d",&a,&b,&c)
35.某二叉樹中度為2的結(jié)點有18個,則該二叉樹中有【】個葉子結(jié)點。
36.診斷和改正程序中錯誤的工作通常稱為【】。
37.已知字符'A'的ASCII碼值為65,以下語句的輸出結(jié)果是【】。
charch='B';
printf("%c%d\n",ch,ch);
38.下面程序的運行結(jié)果是【】。
#include<stdio.h>
main()
{inty,a;
y=2,a=1;
while(y--!=-1)
{do{a*=y;a++;}while(y--);}
printf("%d,%d",a,y);}
39.若有下列定義和語句:
char*s1="12345",*s2="1234";
printf("%d\n",strlen(strcpy(s1,s2)));
則輸出結(jié)果為______。
40.數(shù)據(jù)獨立性分為邏輯獨立性與物理獨立性。當(dāng)數(shù)據(jù)的存儲結(jié)構(gòu)改變時,其邏輯結(jié)構(gòu)可以不變,因此,基于邏輯結(jié)構(gòu)的應(yīng)用程序不必修改,稱為【】。
三、1.選擇題(20題)41.有以下程序:main(){inta[][3]={{1,2,3},{4,5,0}},(*pa)[3],i;pa=a;for(i=0;i<3;i++)if(i<2)pa[1][i]=pa[1][i]-1;elsepa[1][i]=1;printf("%d\n",a[0][1]+a[1][1]+a[1][2]);}執(zhí)行后輸出結(jié)果是()。
A.7B.6C.8D.無確定值
42.已有定義:Mtx=3,y=4,z=5;,則表達(dá)式!(x/y)+z-1&&y+z/2的值是()。
A.6B.OC.2D.1
43.有以下程序:#include<string.h>main(intargc,char*argv[]){inti,len=0;for(i=1;i<argc;i+=2)len+=strlen(argv[i]);printf("%d\n",len);}經(jīng)編譯鏈接后生成的可執(zhí)行文件是ex.exe,若運行時輸入以下帶參數(shù)的命令行exabcdefgh3k44執(zhí)行后輸出的結(jié)果是()。
A.14B.12C.8D.6
44.當(dāng)變量c的值不為2、4、6時,值也為“真”的表達(dá)式是
A.(c==2)||(c==4)||(c==6)
B.(c>=2&&c<=6)||(c!=3)||(c!=5)
C.(c>=2&&c<=6)&&!(c%2)
D.(c>=2&&c<二6)&&(c%2!=1)
45.下面四個選項中,均是不合法的用戶標(biāo)識符的選項是()。
A.AP_0doB.floatla0_AC.b-agotointD._123tempint
46.以下敘述中錯誤的是______。A.C語言中對二進(jìn)制文件的訪問速度比文本文件快
B.C語言中,隨機(jī)文件以二進(jìn)制代碼形式存儲數(shù)據(jù)
C.語句FILEfp:定義了一個名為fp的文件指針
D.C語言中的文本文件以ASCII碼形式存儲數(shù)據(jù)
47.有以下程序:#include<stdio.h>#include<string.h>main(){chara[7]="a0\0a0\0";inti,j;i=sizeof(a);j=strlen(a);printf("%d%d\n",i,j);}程序運行后的輸出結(jié)果是()。
A.22B.76C.72D.62
48.有以下程序main(){chara,b,c,d;scanf("%c,%c,%d,%d",&a,&b,&c,&d);printf("%c,%c,%c,%c\n",a,b,c,d);}若運行時從鍵盤上輸入:6,5,65,66<回車>。則輸出結(jié)果是
A.6,5,A,BB.6,5,65,66C.6,5,6,5D.6,5,6,6
49.下列程序的輸出結(jié)果是()。#include<stdio.h>intb=2;intfunc(int*a){b+=*a;returnb;}main(){inta=1,t=2;t+=func(&a);printf("%d\n",t);}
A.4B.5C.6D.8
50.開發(fā)大型軟件時,產(chǎn)生困難的根本原因是()。
A.大型系統(tǒng)的復(fù)雜性B.人員知識不足C.客觀世界千變?nèi)f化D.時間緊、任務(wù)重
51.若有運算符:>、=、<<、%、sizeof,則它們按優(yōu)先級(由高至低)的正確排列順序為()。
A.%、sizeof、>、<<、=
B.sizeof、%、>、=、<<
C.sizeof、<<、>、%、=
D.sizeof、%、<<、>、=
52.有以下程序main(){intx,y,z;x=y=1;z=X++,y++,++y;printf("%d,%d,%d\n",x,y,z);}程序運行后的輸出結(jié)果是
A.2,3,3B.2,3,2C.2,3,1D.2,2,1
53.以下選項中非法的表達(dá)式是()。
A.0<=x<100B.i=j==0C.(char)(65+3)D.x+1=x+1
54.有以下程序:main(){intk=5,n=0;while(k>0);{switch(k){default;break;case1:n+=k;case2;case3:n+=k;}k--;}printf("%d\n",n);}程序運行后的輸出結(jié)果是______。
A.0B.4C.6D.7
55.下面程序的輸出結(jié)果()main(){unsigneda=32768;printf("a=%d\n",a);}
A.a=32768B.a=32767C.a=-32768D.a=-1
56.有以下程序,其中%u表示按無符號整數(shù)輸出:
main
{
unsignedintx=0xFFFF;/*x的初值為十六進(jìn)制數(shù)*/
printf("%u\n",x);
}
程序運行后的輸出結(jié)果是()。
A.-1B.65535C.32767D.0xFFFF
57.下列用于printf函數(shù)的控制字符常量中,代表“豎向跳格”的轉(zhuǎn)義字符常量是()。
A.\bB.\tC.\vD.\f
58.指針變量p的基類型為int,并已指向一連續(xù)存儲區(qū),若p中當(dāng)前的地址值為1234,則執(zhí)行p++后,p中的值為()
A.1234B.1235C.1236D.1237
59.在一棵二叉樹中,葉子結(jié)點共有30個,度為1的結(jié)點共有40個,則該二叉樹中的總結(jié)點數(shù)共有()個
A.89B.93C.99D.100
60.下列程序的輸出結(jié)果是______。main(){inti,j;for(j=10;j<11;i++){for(i=9;i<j;i++)if(!(j%i))break;if(i>=j-1)printf(”%d”,i);}}
A.11B.10C.9D.1011
四、選擇題(20題)61.
62.
63.
64.下列函數(shù)的功能是
set(s,t)
{char*s,*t;
while((*s)&&(*t)&&(*t++==*s++));
return(*s-*t);
}A.A.求字符串的長度
B.比較兩字符串的大小
C.將字符串s復(fù)制到字符串t中
D.將字符串s連接到字符串t后
65.設(shè)有定義:
則以下賦值語句中錯誤的是()。
A.data2=(2,6);
B.data2=datal;
C.data;real=datal.real;
D.data2.real=datal.unreal;
66.有以下定義語句,編譯時會出現(xiàn)編譯錯誤的是()。
A.chara=a;B.chara=\nC.chara=aa;D.chara=\x2d;
67.有以下程序,其中%u表示按無符號整數(shù)輸出:
main
{
unsignedintx=0xFFFF;/*x的初值為十六進(jìn)制數(shù)*/
printf("%u\n",x);
}
程序運行后的輸出結(jié)果是()。
A.-1B.65535C.32767D.0xFFFF
68.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實現(xiàn)、使用維護(hù)到停止使用退役的過程
B.軟件從需求分析、設(shè)計、實現(xiàn)到測試完成的過程
C.軟件的開發(fā)過程
D.軟件的運行維護(hù)過程
69.某二叉樹有5個度為2的結(jié)點,則該二叉樹中的葉子結(jié)點數(shù)是A.10B.8C.6D.4
70.以下定義語句中正確的是()。
A.
B.
C.
D.
71.若執(zhí)行下面的程序時,從鍵盤輸入6和2,則輸出結(jié)果是()。
A.5B.3C.2D.0
72.負(fù)責(zé)數(shù)據(jù)庫中查詢操作的數(shù)據(jù)庫語言是()。
A.數(shù)據(jù)定義語言B.數(shù)據(jù)管理語言C.數(shù)據(jù)操縱語言D.數(shù)據(jù)控制語言
73.下列字符數(shù)組初始化語句中,不正確的是()。
A.charc[]=goodmorning;
B.charc[20]="goodmorning";
C.charc[]={a,b,c,d);
D.charc[]={"ffgoodmorning"};
74.
若變量已正確定義,有以下程序段
i—o;
doprintf("%d,",i);while(i++);
printf("%d",i)
其輸出結(jié)果是()。
A.0,0B.0,1C.1,1D.程序進(jìn)入無限循環(huán)
75.下列敘述中正確的是()。A.棧是“先進(jìn)先出”的線性表
B.隊列是“先進(jìn)后出”的線性表
C.循環(huán)隊列是非線性結(jié)構(gòu)的線性表
D.有序線性表既可以采用順序存儲結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯Y(jié)構(gòu)
76.下列描述中不正確的是()。
A.字符型數(shù)組中可能存放字符串。
B.可以對字符型數(shù)組進(jìn)行整體輸入、輸出。
C.可以對整型數(shù)組進(jìn)行整體輸入、輸出。
D.不能在賦值語句中通過賦值運算符“=”對字符型數(shù)組進(jìn)行整體賦值。
77.
78.
79.若有定義語句:
80.對線性表進(jìn)行二分法檢索,其前提條件是()。A.A.線性表以順序方式存儲,并按關(guān)鍵碼值排好序B.線性表以順序方式存儲,并按關(guān)鍵碼的檢索頻率排好序
C.線性表以鏈?zhǔn)椒绞酱鎯?,并按關(guān)鍵碼值排好序
D.線性表以鏈?zhǔn)椒绞酱鎯?,并按關(guān)鍵碼的檢索頻率排好序
五、程序改錯題(1題)81.下列給定程序中,函數(shù)proc()的功能是:根據(jù)以下公式求π的值,并作為函數(shù)值返回。例如,給指定精度的變量eps輸人0.0001時,應(yīng)當(dāng)輸出Pi=3.141358。π/2=1+t/3+1/3*e/5+1/3*2/5*3/7+1/3*2/5*3/7*4/9……請修改程序中的錯誤,使它能得出正確的結(jié)果。注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:,
六、程序設(shè)計題(1題)82.請編寫一個函數(shù)intproc(int*s,intt,int*k),用來求出數(shù)組的最小元素在數(shù)組中的下標(biāo)并存放在k所指的存儲單元中。例如,輸入如下整數(shù):27393445362489342111831527246則輸出結(jié)果為4,89。注意:部分源程序給出如下。請勿改動main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號中填入所編寫的若干語句。試題程序:
參考答案
1.C當(dāng)if執(zhí)行到第一個滿足(i*i>=20)(i*i<=100)這個條件的i出現(xiàn)時,通過break語句跳出循環(huán),執(zhí)行下面的prinlf語句。
2.A本題考查的是遞歸算法的分析。一個直接或間接地調(diào)用自身的算法稱為遞歸算法。在一個遞歸算法中,至少要包含一個初始值和一個遞歸關(guān)系。本題的fun()函數(shù)在n等于l時返回1,而在其余情況下返[fi]n+fun(n一1),所以本題的遞歸算法可以這樣來表示:fun(n)=1(n=1)(初始值)fun(n)=n+fun(n一1)(n≠1)(遞歸關(guān)系)此時不難看出,該遞歸算法實現(xiàn)的是計算l+2+3+…+n,而且n必須大于0,否則會陷入死循環(huán)。故題目輸出的結(jié)果是l+2+3+..+10=55.應(yīng)該選擇A)。
3.CC語言中除法運算有兩個運算數(shù),兩個整數(shù)的除法運算會舍去小數(shù)部分,結(jié)果為整數(shù);由于C語言中浮點數(shù)的小數(shù)形式必須要有小數(shù)點,所以選項A(5.)、B(3.)、D(3.0和5.0)都是浮點數(shù)。選項A、B運算時自動將另一個整數(shù)轉(zhuǎn)換成浮點數(shù),然后再運算,選項D中兩個都是浮點數(shù),浮點數(shù)的除法運算結(jié)果還是浮點數(shù)。所以本題中選項A、B、D運算結(jié)果是浮點數(shù),選項C運算結(jié)果是整數(shù)。故本題答案為C選項。
4.D程序中S1和S2都是宏定義。S1(a+b)宏展開后的表達(dá)式為4*a+b+4*(a+b),即4*1+2+4*(1+2),結(jié)果為18;S2(a,b)宏展開后的表達(dá)式為4*(a)*(b)+b*a,即4*(1)*(2)+2*1,結(jié)果為10;S1(3)宏展開后的表達(dá)式為4*3+4*(3),結(jié)果為24;32(3+a,b+3)宏展開后的表達(dá)式為4*(3+a)*(b+3)+b+3*3+a,即4*(3+1)*(2+3)+2+3*3+1,結(jié)果為92。最終輸出:18,34,92。故本題答案為D選項。
5.B
6.C
7.C
8.C解析:本題考查ifelse語句。第一個if語句,先判斷條件,發(fā)現(xiàn)a<b成立,執(zhí)行下列的復(fù)合語句,得c=a*b=20,b、a的值不變。
9.B
10.D
11.A
12.D解析:棧是僅在表頭和表尾進(jìn)行插入和刪除元素操作的線性表,其特點是“先進(jìn)后出”。本題中,進(jìn)棧的過程中可以出棧。選項D中,如果第一個出棧的元素為e3,由于入棧順序是e1、e2、e3,那么e3出棧后,棧中元素必定有e1和e2,因為e1先入棧,故e1應(yīng)在e2后出棧,所以選項D是不可能的出棧順序。
13.B指針中存放的是變量的地址,指針也可以進(jìn)行增減運算,這時指針移動的最小單位是一個存儲單元,而不是一個字節(jié)。所以題中“P+6”指的是將指針向后移動了6個存儲單元,即指向uE63,存放的是b[6]的地址。
14.B
15.A
16.BC語言是一種結(jié)構(gòu)化程序設(shè)計語言。結(jié)構(gòu)化程序設(shè)計是以模塊化設(shè)計為中心的,有三種基本結(jié)構(gòu):順序、選擇和循環(huán)結(jié)構(gòu)。各模塊相互獨立,因而可將原來較為復(fù)雜的問題化簡為一系列簡單模塊并充分利用現(xiàn)有模塊搭建新系統(tǒng),提高程序的重用性和可維護(hù)性。
17.A廣播/電視是一種單向的、點對多點(面)的以信息傳遞為主要目的的系統(tǒng)。
18.D
19.B\nscanf輸入函數(shù)中,格式控制J必須嚴(yán)格按照函數(shù)中的要求進(jìn)行輸入,在scanf('%c%c',&chl,&ch2)的格式控制語句中沒有任何字符進(jìn)行間隔,所以在輸入時也不能使用任何字符進(jìn)行間隔,所以答案選擇B。
\n
20.C解析:轉(zhuǎn)義字符有1個\\\\、2個\\'、1個\\b,普通字符有3個a、3個c、3個d,共13個字符。
21.55解析:分析程序,當(dāng)a=3;b=4;c=5時,判斷語句a>b不成立,所以不執(zhí)行后面的語句,直接執(zhí)行“printf('%d\\n',c);”語句,輸出c的值,輸出結(jié)果為5。
22.88解析:二維數(shù)組可以看成是按矩陣形式排列的,題目中給二維數(shù)組賦初值是按行分段賦值的,a[4][4]可以分解為4個一維數(shù)組,其數(shù)組名分別為a[0]、a[1]、a[2]、a[3],這4個一維數(shù)組都有4個元素,a[0]的元素為ap[0][0]、a[0][1]、a[0][2]、a[0][3]。
23.88解析:本題考查基本的for循環(huán)條件,i+=2表示i每次遞增2,從0開始,輸出5個整數(shù)則需要的條件是i<=8。
24.n=1s
25.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。
26.8181解析:將S(i+j)展開來有:S(i+j)=S(6+8)=4×6+8×6+8+1=81。
27.類類解析:在面向?qū)ο蟮姆椒ㄖ?,把具有相同屬性和方法的對象稱為類,類是對象的抽象,對象是類的實例。
28.2002shangxian2002shangxian解析:\'B\'的ASCII值是66。本題中指針變量p指向d,執(zhí)行第一個if語句時,條件成立,d=b;執(zhí)行第二個if語句時,條件不成立,故d=b,所以d.sno=2002,p->name'Shangxian'。
29.88解析:fabs函數(shù)功能是求x的絕對值,計算結(jié)果為double型。pow功能是計算x的y次方的值,計算結(jié)果同樣為double型。所以本題表達(dá)式相當(dāng)于2.0的3.0次方,結(jié)果為8.000000。
30.!feof(fp)!feof(fp)解析:本題中統(tǒng)計文件中字符個數(shù)的算法可描述為;首先判斷文件位置指針是否指向了文件尾,如果不是則讀出一個字符,同時字符的個數(shù)加1,再判斷文件位置指針是否位于文件尾,如此循環(huán),直到文件位置指針位于文件尾為止。本題首先以讀文件的方式打開了文件“fname.dat”,如果打開成功則把返回的文件型指針賦值給fp,然后通過循環(huán)求文件中的字符數(shù)。首先判斷文件位置指針是否位于文件尾,如果不是則循環(huán)讀取字符,每次字符數(shù)加l。所以下劃處應(yīng)填循環(huán)條件,文件位置指針不是指向文件尾,即“!feof(fp)”。
31.4844
32.變換型典型的數(shù)據(jù)流類型有兩種:變換型和事務(wù)型。變換型是指信息沿輸入通路進(jìn)入系統(tǒng),同時由外部形式變換成內(nèi)部形式,進(jìn)入系統(tǒng)的信息通過變換中心,經(jīng)加工處理以后再沿輸出通路變換成外部形式離開軟件系統(tǒng);在很多軟件應(yīng)用中,存在某種作業(yè)數(shù)據(jù)流,它可以引發(fā)一個或多個處理,這些處理能夠完成該作業(yè)要求的功能,這種數(shù)據(jù)流就叫做事務(wù)。
33.線性結(jié)構(gòu)線性結(jié)構(gòu)解析:與棧類似,隊列也是線性表,也町以采用鏈?zhǔn)酱鎯Y(jié)構(gòu)。
34.5.04c=35.0,4,c=3解析:scanf(掐式控制,地址列表),如果在“格式控制”字符串中除了格式說明以外還有其他字符,則在輸入數(shù)據(jù)時應(yīng)輸入與這些字符相同的字符。所以此題中輸入數(shù)據(jù)的形式是5.04,c=3。
35.1919解析:根據(jù)二叉樹的性質(zhì):在任意一棵二叉樹中,度為。的結(jié)點(即葉子結(jié)點)總是比度為2的結(jié)點多一個。本題中度為2的結(jié)點數(shù)為18,故葉子結(jié)點數(shù)為18+1=19個。
36.程序調(diào)試程序調(diào)試解析:程序調(diào)試的任務(wù)是診斷和改正程序中的錯誤。程序調(diào)試與軟件測試不同,軟件測試是盡可能多地發(fā)現(xiàn)軟件中的錯誤。先要發(fā)現(xiàn)軟件的錯誤,然后借助于調(diào)試工具找出軟件錯誤的具體位置。軟件測試貫穿整個軟件生命期,而調(diào)試主要在開發(fā)階段。
37.B66B66解析:字符B的ASCII碼值為66,因此,按%c形式輸出B,按%d形式輸出66,輸出結(jié)果為:B66。
38.1-21,-2解析:考查嵌套的循環(huán)結(jié)構(gòu)。題中外層while循環(huán)的循環(huán)條件是\ue008y--!=-1\ue009,即y>=0;內(nèi)層do厀hile循環(huán)的循環(huán)條件是y--,即y-->0,y>=1。
39.44解析:strcpy(s1,s2)函數(shù)的作用是將字符串s2中的內(nèi)容拷貝到字符串s1中的內(nèi)容覆蓋。strlen()函數(shù)是求字符串的長度。本題實際上是要求s2字符串的長度,即是4。
40.物理獨立性物理獨立性解析:數(shù)據(jù)獨立性分為邏輯獨立性與物理獨立性。當(dāng)數(shù)據(jù)的存儲結(jié)構(gòu)改變時,其邏輯結(jié)構(gòu)可以不變,因此,基于邏輯結(jié)構(gòu)的應(yīng)用程序不必修改,稱為物理獨立性。
41.A解析:本題定義了一個指向由3個元素組成的一維數(shù)組的指針變量pa,通過賦值讓它指向具有2行3列的數(shù)組a,此時用指針變量pa,表示數(shù)組元素a[i][j]的形式是pa[im][j])。for循環(huán)執(zhí)行了3次;第一次i值為0,執(zhí)行pa[1][0]=pa[1][0]-1,執(zhí)行后a[1][0]的值變?yōu)?;第二次i值為1,執(zhí)行pa=[1][1]=pa[1][1]-1,執(zhí)行后a[1][1]的值為4;第三次i值為2,執(zhí)行pa[1][2]=1,執(zhí)行后a[1][2]的值變?yōu)?。故prinff語句輸入的值為2+4+1=7。所以,A選項為所選。
42.D解析:本題中,&&左邊的表達(dá)式!(x+y)為!(3+7),結(jié)果為假,即為0。再加上2,然后減一,相當(dāng)于0+5-1=4。左邊等于4,&&右邊的表達(dá)式y(tǒng)+z/2相當(dāng)于4+5/2為6,所以整個表達(dá)式相當(dāng)于4&&6為真,即為1,所以選項D正確。
43.D解析:主函數(shù)的第一個參數(shù)argc為整形參數(shù),記下從命令行輸入的參數(shù)的個數(shù);第二個參數(shù)argv是一個字符型的指針數(shù)組,它的每一個元素指向命令行輸入的參數(shù)字符數(shù)。在本例中argc的值為5,argv[0]指向字符串“ex”,argv[l]指向參數(shù)字符串“abcd”,argv[2]指向字符串“efg”,argv[3]指向參數(shù)字符串“h3”,argv[4]指向參數(shù)字符串“k44”。在main()函數(shù)中,for循環(huán)執(zhí)行了兩次,當(dāng)i=1時,len=O+strlen(argv[1]),而其中argv[l]=“abcd”,故此時len的值為4;當(dāng)i=3時,len=4+strlen(argv[3]),而其中argv[3]=“h3”,故此時len的值為6;當(dāng)i=5時,退出循環(huán),故最后輸出的len值為6。所以,4個選項中選項D符合題意。
44.B解析:滿足表達(dá)式(c>=2&&c<=6)的整型變量c的值是2,3,4,5,6。當(dāng)變量c的值不為2,4,6時,其值只能為3或5,所以表達(dá)式c!=3和c!=5中至少有一個為真,即不論c為何值,選項B中的表達(dá)式都為“真”。
45.C解析:C語言規(guī)定的標(biāo)識符只能由字母、數(shù)字和下劃線3種字符組成,第一個字符必須為字母或下劃線,并且不能使用C語言中的關(guān)鍵字作為標(biāo)識符。選項C)中g(shù)oto和int是關(guān)鍵字,b-a中'-'不是組成標(biāo)識符的3種字符之一;選項D)中int是關(guān)鍵字,所以,均是不合法用戶標(biāo)識符的選項是C)。
46.C解析:FILE是由系統(tǒng)定義的一個結(jié)構(gòu)體類型,并用該類型來定義若干個FILE類型的變量,以便存放若干個文件。所以用FILE定義的變量必須是數(shù)組或指針,所以選項C中的“FILE\u3000\u3000fp;”改為“FILE*fp;”就對了。
47.C解析:C語言.中以,'\\0'作為字符串的結(jié)束符,且strlen函數(shù)計算的是,'\\0',字符前的所有字符的個數(shù),故本題中strlen(a)應(yīng)為2。數(shù)組定義以后系統(tǒng)就為其分配相應(yīng)大小的內(nèi)存空間,而不論其中有沒有內(nèi)容。sizeof運算符是計算變量或數(shù)組所分配到的內(nèi)存空間的大小,所以本題的sizeof(a)為7。
48.A解析:主函數(shù)中首先定義了4個字符變量a、b、cd,然后通過scanf()函數(shù)輸入a、b、c、d輸入中a和b是按字符格式c輸入的,c和d是按整型符號d輸入的。在看下面的printf()函數(shù)中,要求a、b、c、d都按字符輸出,故a和b原樣輸出為6、5,c和d將把與其ASCII碼對應(yīng)的字符輸出,65和66的ASCII碼對應(yīng)字符A和B,故最后的輸出為6,5,A,B。所以,4個選項中選項A符合愿意。
49.B解析:本題考查函數(shù)調(diào)用時的參數(shù)傳遞。在執(zhí)行函數(shù)func時,由于全局定義了一個變量b,所以在函數(shù)體中執(zhí)行時b=2+1=3,最終t=2+3=5。
50.AA)【解析】隨著計算機(jī)軟件規(guī)模的擴(kuò)大,軟件本身的復(fù)雜性不斷增加,研制周期顯著變長,正確性難以保證,軟件開發(fā)費用上漲,生產(chǎn)效率急劇下降,從而出現(xiàn)了人們難以控制軟件發(fā)展的局面,即所謂的“軟中#危機(jī)”。
51.D解析:主要考查運算符的優(yōu)先級。sizeof的優(yōu)先級最高,后面的順序是:%、<<、>,優(yōu)先級最低的是“=”。
52.C解析:整型變量x、y的初值都為1,“x++,y++,++y”是一個逗號表達(dá)式,程序執(zhí)行“z=x++,y++,++y”后,x的值為2,y的值為3,z取豆號表達(dá)式中第二個表達(dá)式的值,為1。
53.D解析:選項A)在C語言中是一個合法的關(guān)系表達(dá)式,但它并不代表數(shù)學(xué)式o<=x<100。計算0<=x<100時,從左到右結(jié)合,先計算0<=x,其結(jié)果只能是0或1,然后再比較0<100或1<100。根據(jù)運算符的優(yōu)先級,選項B)先判斷j==0是否成立,其結(jié)果只能是0或1,然后再將0或1賦給i。選項C)中,(char)(65+3)為類型強(qiáng)制轉(zhuǎn)換,將整數(shù)型數(shù)據(jù)轉(zhuǎn)換為字符型。選項D)是將一個數(shù)據(jù)賦給一個表達(dá)式,等號左邊不合要求,所以錯誤。
54.D解析:在switch語句中,若case語句后沒有break語句,則執(zhí)行完本層case后會繼續(xù)執(zhí)行后面case中的操作。k的初值為5,while條件成立,進(jìn)入switch(5),執(zhí)行default語句,退出switch,執(zhí)行k--后得4,再進(jìn)入while循環(huán),執(zhí)行switch(4),退出switch,再執(zhí)行k--后得3,繼續(xù)while循環(huán),執(zhí)行switch(3),n=n+k=3,再執(zhí)行k--后得2,進(jìn)入while循環(huán),執(zhí)行case2,再執(zhí)行n=n+k=5,然后執(zhí)行k--后得1,最后一次進(jìn)入while循環(huán),執(zhí)行case1,n=n+k=6,然后繼續(xù)執(zhí)行case2和case3后的語句,n=n+k=7,且執(zhí)行k--后得0,此時while條件不滿足,退出循環(huán),輸出n的值為7。
55.C
56.B解析:整型常量有十進(jìn)制、八進(jìn)制和十六進(jìn)制3種表示:十進(jìn)制整數(shù)以正號(+)或負(fù)號(-)開頭,由首位非0的一串十進(jìn)制數(shù)字組成,正負(fù)號也可省略,表示正整數(shù);八進(jìn)制整數(shù)以數(shù)字0開頭,后面接著干個八進(jìn)制數(shù)字(0~7):十六進(jìn)制整數(shù)以數(shù)字。和字母x(大、小寫均可)開頭,后面接若干個十六進(jìn)制數(shù)字(數(shù)字0~9和字母A~F,大、小寫均可)。故本題是以無符號整數(shù)形式輸出一個十六進(jìn)制整數(shù)FFFF,將其轉(zhuǎn)換為十進(jìn)制就是65535,故本題應(yīng)該選擇B。
57.C本題考查C語言轉(zhuǎn)義字符的含義。我們歸類了常用的轉(zhuǎn)義字符及其含義,如下,根據(jù)這些不難選出正確答案
轉(zhuǎn)義字符的意義:\n回車換行、\t橫向跳到下一制表位置、\v豎向跳格、\b退格、\r回車、\f走紙換頁、\\反斜線符、“\”\′單引號符、\\ddd1~3位八進(jìn)制數(shù)所代表的字符、\xhh1~2位十六進(jìn)制數(shù)所代表的字符。
58.C
59.C解析:根據(jù)二叉樹性質(zhì)3:對任何一棵二叉樹,度為0的結(jié)點(即葉子結(jié)點)總是比度為2的結(jié)點多一個。所以該二叉樹度為2的結(jié)點有29個,故總結(jié)點數(shù)=30個葉子結(jié)點+29個度為2的結(jié)點+40個度為1的結(jié)點=99個結(jié)點。
60.B
61.C
62.A
63.D
64.B在本題中,從題目給出
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年地產(chǎn)營銷戰(zhàn)略合同樣本
- 2025年農(nóng)產(chǎn)品銷售代銷合同范文
- 2025年新版白糖采購合同標(biāo)準(zhǔn)文本
- 2025年化學(xué)品分銷合同要覽
- 2025年度品牌授權(quán)經(jīng)營合同
- 2025年新版有機(jī)肥營銷合作合同
- 2025年水果產(chǎn)品購銷合同模板
- 發(fā)電機(jī)組在工業(yè)自動化控制考核試卷
- 第五單元 第15課 二、網(wǎng)上交流的方式 教學(xué)設(shè)計 2023-2024學(xué)年人教版初中信息技術(shù)七年級上冊
- 林業(yè)產(chǎn)業(yè)技術(shù)創(chuàng)新戰(zhàn)略聯(lián)盟考核試卷
- 【道法】做自信的人課件 2024-2025學(xué)年統(tǒng)編版道德與法治七年級下冊
- 高一英語完形填空專項訓(xùn)練100(附答案)及解析
- 設(shè)計報告001模擬通信系統(tǒng)的SIMULINK建模仿真
- 橫河氧量變送器標(biāo)定及檢修
- 沉降觀測常用表格
- 建設(shè)工程規(guī)劃放線、驗線申請表
- 績效考核 五金廠績效考核
- 金合極思打板與放碼系統(tǒng)幫助目錄
- 勵磁系統(tǒng)檢修規(guī)程
- WE-100B300B600B1000B型萬能材料試驗機(jī)使用說明書
- 相聲《治病》
評論
0/150
提交評論