




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2022年廣東省肇慶市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.十六進(jìn)制數(shù)BB轉(zhuǎn)換成十進(jìn)制數(shù)是()
A.192B.256C.187D.121
2.有以下程序程序執(zhí)行后的輸出結(jié)果是()。
A.y=-IB.y=oC.y=lD.while構(gòu)成無限循環(huán).
3.設(shè)有序順序表中有n個(gè)數(shù)據(jù)元素,則利用二分查找法查找數(shù)據(jù)元素X的最多比較次數(shù)不超過()。A.log2+1
B.log2(n-1)
C.log2n
D.log2(n+1)
4.
5.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過程
B.軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測(cè)試完成的過程
C.軟件的開發(fā)過程
D.軟件的運(yùn)行維護(hù)過程
6.設(shè)有定義inta=2,b=3,c=4;,則以下選項(xiàng)中值為0的表達(dá)式是______。A.(!a==1&&(!b==0)
B.(a<b)&&!c||1
C.a&&b
D.a||(b+b)&&(c-a)
7.有以下程序:#include<stdio.h>voidsort(inta[],intn){inti,j,t;for(i=0;i<n-1;i+=2)for(j=i+2;j<n;j+=2)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(aa,10);for(i=0;i<10;i++)printf("%d.",aa[i]);printf("\n");}其輸出結(jié)果是()。
A.1,2,3,4,5,6,7,8,9,10,
B.10,9,8,7,6,5,4,3,2,1,
C.9,2,7,4,5,6,3,8,1,10,
D.1,10,3,8,5,6,7,4,9,2,
8.命令“DIRA:*.*/W”的功能是()
A.寬行顯示A盤當(dāng)前目錄的所有文件
B.寬行顯示A盤所有目錄的所有文件
C.寬行顯示A盤的所有目錄
D.顯示A盤中的文件名,每滿一屏后停頓一下
9.使用深度優(yōu)先算法遍歷下圖,遍歷的順序?yàn)?)A.ABCDEFGB.ABDCFEGC.ABDECFGD.ABCDFEG
10.有下列程序:
intfunl(doublea){returna*=a;}
intfun2(doublex,doubley)
{doublea=0,b=0;
a=funl(x);b=funl(y);return(int)(a+b);
}
main()
{doublew;w=fun2(1.1,2.0),……}
程序執(zhí)行后變量w中的值是()。、
A.5.21B.5C.5.0D.0.0
11.有下列程序:intfun(intx[],intn){staticintsum=0,i;for(i=0;i<n;i++)sum+=x[i]:returnsum;}main(){inta[3]={1,2,3,4,5),b[3]={6,7,8,9),s=0;s=fun(a,5)+fun(b,4);printf("%d\n",s);}程序執(zhí)行后的輸出結(jié)果是()。、A.45B.50C.60D.55
12.假定a為一個(gè)整型數(shù)組名,則元素a[4]的字節(jié)地址為()。
A.a+4B.a+8C.a+16D.a+32
13.以下選項(xiàng)中不能作為C語(yǔ)言合法常量的是()
A.0.1e+6B.‘cd’C.“\a”D.‘\011’
14.
15.設(shè)有定義:floata=2,b=4,h=3;,以下C語(yǔ)言表達(dá)式與代數(shù)式計(jì)算結(jié)果不相符的是()。
A.(a+b)*h/2B.(1/2)*(a+b)*hC.(a+b)*h*1/2D.h/2*(a+b)
16.在軟件測(cè)試設(shè)計(jì)中,軟件測(cè)試的主要目的是
A.實(shí)驗(yàn)性運(yùn)行軟件B.證明軟件正確C.找出軟件中全部錯(cuò)誤D.盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤
17.以下敘述中正確的是()。
A.循環(huán)隊(duì)列是隊(duì)列的一種鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B.循環(huán)隊(duì)列是隊(duì)列的一種順序存儲(chǔ)結(jié)構(gòu)
C.循環(huán)隊(duì)列中的隊(duì)尾指針一定大于隊(duì)頭指針
D.循環(huán)隊(duì)列中的隊(duì)尾指針一定小于隊(duì)頭指針
18.下列程序的輸出結(jié)果是()。#include<stdio.h>main(){structst{inty,x,z;};union{longi;intj;chark;}un;printf("%d,%d\n",sizeof(structst),sizeof(un));}
A.6,2B.6,4C.8,4D.8,6
19.假定已建立以下鏈表結(jié)構(gòu),且指針p和q已指向如圖所示的節(jié)點(diǎn)。則下列選項(xiàng)中可將q所指節(jié)點(diǎn)從鏈表中刪除并釋放該節(jié)點(diǎn)的語(yǔ)句組是()。
A.p->next=q->next;free(q);
B.p=q->next;free(q);
C.p=q;free(q);
D.(*p).next=(*q).next;free(p);
20.廣義表((a))的表尾是()。
A.aB.(a)C.((a))D.()
二、2.填空題(20題)21.若變量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");
}
22.某二叉樹中度為2的節(jié)點(diǎn)有18個(gè),則該二叉樹中有()個(gè)葉子節(jié)點(diǎn)。
23.下列程序段的運(yùn)行結(jié)果是______。
charstr[]="ABCD",*p=str;
printf("%d\n",*(p+3));
24.下面的程序可對(duì)指定字符串進(jìn)行從大到小排序,請(qǐng)將程序填完整。(注:程序采用了冒泡排序算法)
#include<stdio.h>
#include<string.h>
main()
{char*str="ABCDabcd",temp;
intn,i;
n=strlen(str);
while(n->1)
for(i=0;i<n;i++)
if(str[i]<str[i+1])
{temp=【】;
str[i]=str[i+1];
【】=temp;
}
printf(【】);
}
25.若a是血型變量,則表達(dá)式(a=2*3,a*2),a+6的值為______。
26.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{inti,j,a[][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
for(j=i+1;j<3;j++)a[j][i]=0;
for(i=0;i<3;i++)
{for(j=0;j<3;j++)printf("%d",a[i][j]);
printf("\n");
}
}
27.語(yǔ)句:x++;++x;x=1+x;執(zhí)行后都使變量x中的值增1,請(qǐng)寫出一條同一功能的賦值語(yǔ)句______。
28.下列程序的輸出結(jié)果是______。
#include<stdio.h>
fun()
{staticinta=0;
a+=3;printf("%d",A);
}
main()
{intcc;
for(cc=1;cc<5;cc++)fun();
printf("\n");
}
29.下列程序的運(yùn)行結(jié)果為【】。
main()
{inti;
chara[]="Ilovechina!",b[20],*p1,*p2;
p1=a;
p2=b;
while(*p1)
{*p2=*p1;
p1++;
p2++;
}
*p2='\0';
printf("stringbis:%s\n",b);
}
30.下面程序的功能是輸出數(shù)組s中最大元素的下標(biāo),請(qǐng)?zhí)羁铡?/p>
main()
{intk,p,s[]={1,-9,7,2,-10,3};
for(p=0,k=p;p<6;p++)
if(s[p]>s[k])【】
printf("%d\n",k);}
31.以下程序的運(yùn)行結(jié)果是()。#defineS(x)x*xmain(){intk=1;while(k<=4){printf("%d,",S(k));k++;}
32.下列程序的循環(huán)次數(shù)是______。
x=2;
do
{x=x*x;}
while(!x);
33.數(shù)據(jù)的【】結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)或物理結(jié)構(gòu)。
34.順序存儲(chǔ)方法是把邏輯上相鄰的結(jié)點(diǎn)存儲(chǔ)在物理位置______的存儲(chǔ)單元中。
35.需求分析的最終結(jié)果是產(chǎn)生【】。
36.下列程序的運(yùn)行結(jié)果是______。
#include<stdio.h>
main()
{inta=10,b=3;
printf("%d,",a%b);
printf("%d,",(a-b,a+b));
printf("%d\n",a-b?a-b:a+b);
}
37.數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱為數(shù)據(jù)的【】。
38.下列程序的輸出結(jié)果是【】。
main()
{inti;
for(i=1;i+1;i++)
{if(i>4)
{printf("%d\n",i);
break;}
printf("%d\n",i++);}}
39.一個(gè)類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個(gè)方法提高了軟件的【】。
40.______是數(shù)據(jù)庫(kù)應(yīng)用的核心。
三、1.選擇題(20題)41.關(guān)于結(jié)構(gòu)化程序設(shè)計(jì)原則和方法的描述錯(cuò)誤的是()。
A.選用的結(jié)構(gòu)只準(zhǔn)許有一個(gè)入口和一個(gè)出口
B.復(fù)雜結(jié)構(gòu)應(yīng)該用嵌套的基本控制結(jié)構(gòu)進(jìn)行組合嵌套來實(shí)現(xiàn)
C.不允許使用GOTO語(yǔ)句
D.語(yǔ)言中所沒有的控制結(jié)構(gòu),應(yīng)該采用前后一致的方法來模擬
42.下列關(guān)于棧的描述中錯(cuò)誤的是()
A.棧是先進(jìn)后出的線性表B.棧只能順序存儲(chǔ)C.棧具有記憶作用D.對(duì)棧的插入與刪除操作中,不需要改變棧底指針
43.下列程序的運(yùn)行結(jié)果是()。#include<stdio.h>main(){inta=2,b=3,c=4;if(a<B)if(b<0)c=0;elsec+=1;printf("%d\n",C);}
A.2B.3C.5D.4
44.“商品”與“顧客”兩個(gè)實(shí)體集之間的聯(lián)系一般是
A.一對(duì)一B.一對(duì)多C.多對(duì)一D.多對(duì)多
45.已定義下列函數(shù):intfun(int*p){return*p;)fun函數(shù)返回值是()。
A.不確定的值B.一個(gè)整數(shù)C.形參p中存放的值D.形參p的地址值
46.若有如下程序:sub(p,n)int(*p)[3],n;{inti;for(i=0;i<=n;i++)printf("%d",*(*(p+i)+n));}main(){ints[3][3]={1,2,3,4,5,6,7,8,9};sub(s,2);}則程序運(yùn)行后的輸出結(jié)果是()
A.369B.248C.456D.789
47.下面的程序在編澤時(shí)產(chǎn)生錯(cuò)誤,其出錯(cuò)原因是()。#include<stdio.h>main(){int1_case;floatprintF;printf("請(qǐng)輸入2個(gè)數(shù):");scanf("%d%f",&1_case,&printF);printf("%d%f\n",1_case,printF);}
A.定義語(yǔ)句出錯(cuò),1_case不能作為變量名
B.定義語(yǔ)句出錯(cuò),printF不能用作用戶自定義標(biāo)識(shí)符
C.定義語(yǔ)句無錯(cuò),scanf不能作為輸入函數(shù)使用
D.定義語(yǔ)句無錯(cuò),printf不能輸出1_case的值
48.在下列四條敘述中,正確的一條是()
A.在計(jì)算機(jī)中,漢字的區(qū)位碼就是機(jī)內(nèi)碼
B.在漢字國(guó)際碼GB2312-80的字符集中,共收集了6763個(gè)常用漢字
C.英文小寫字母e的ASCⅡ碼為101,英文小寫字母g的ASCⅡ碼為103
D.存放80個(gè)24×24點(diǎn)陣的漢字字模信息需要占用2560個(gè)字節(jié)
49.設(shè)變量已正確定義,則以下能正確計(jì)算n!的程序段是______。
A.f=0;for(i=1;i<=n;i++)f*=i;
B.f=1;for(i=1;i<n;i++)f*=i;
C.f=1;for(i=n;i>1;i++)f*=i;
D.f=1;for(i=n;i>=2;i--)f*=i;
50.下列工具中為需求分析常用工具的是()。
A.PADB.PFDC.N-SD.DFD
51.可以在C語(yǔ)言中用做用戶標(biāo)識(shí)符的是______。
A.voiddefineWORDB.as_b3_123IfC.for-abccasD.2cDoSIG
52.程序設(shè)計(jì)語(yǔ)言的基本成分是數(shù)據(jù)成分、運(yùn)算成分、控制成分和()。
A.對(duì)象成分B.變量成分C.語(yǔ)句成分D.傳輸成分
53.軟件危機(jī)是大型軟件開發(fā)中出現(xiàn)的現(xiàn)象,下列選項(xiàng)中的______是其主要表現(xiàn)。
①軟件生產(chǎn)的復(fù)雜性。
②軟件生產(chǎn)進(jìn)度無法控制。
③軟件生產(chǎn)高成本、無法控制。
④軟件需求定義不準(zhǔn)確。
A.全部B.②和③C.①、②和④D.②和④
54.有定義語(yǔ)句:chars[10];,若要從終端給s輸入5個(gè)字符,錯(cuò)誤的輸入語(yǔ)句是
A.gets(&s[0]);
B.scanf("%s",s+1);
C.gets(s);
D.scanf("%s",s[1]);
55.結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是
A.程序的規(guī)模B.程序的效率C.程序設(shè)計(jì)語(yǔ)言的先進(jìn)性D.程序易讀性
56.執(zhí)行語(yǔ)句for(i=1;i++<4;);后變量i的值是______。
A.3B.4C.5D.不定
57.執(zhí)行語(yǔ)句“for(n=10;n>0;)printf("%d",--n+n--);”后,下列說法正確的是()
A.循環(huán)體執(zhí)行了5次,最終n的值是-1
B.循環(huán)體執(zhí)行了6次,最終n的值是-1
C.循環(huán)體執(zhí)行了6次,最終n的值是0
D.循環(huán)體執(zhí)行了5次,最終n的值是0
58.有以下程序#include<stdio.h>main(){inta[]={1,2,3,4,5,6,7,8,9,10,11,12},*p=a+5,*q=NULL;*q=*(p+5);printf("%d%d\n",*p,*q);}程序運(yùn)行后的輸出結(jié)果是______。
A.運(yùn)行后報(bào)錯(cuò)B.66C.611D.510
59.若有以下定義:inta[]={1,2,3,4,5,6,7,8,9,10},*p=a;則值為3的表達(dá)式是()
A.p+=2,*(pd++)B.p+=2,*++pC.p+=3,*p++D.p+=2,++*p
60.以下選項(xiàng)中合法的C語(yǔ)言字符常量是
A.'\t'B.AC.67D.A
四、選擇題(20題)61.
62.以下選項(xiàng)中,與k=n++完全等價(jià)的表達(dá)式是A.k=n,n=n+1B.n=n+1,k=nC.k=++nD.k+=n+1
63.有以下程序段:
charname[20】;intnum;
scanf("name=%Snum=%d",name,&num);
當(dāng)執(zhí)行上述程序段,并從鍵盤輸入:name=Lilimum=1001<回車>后,name的值為()。
A.Lili
B.name=Lili
C.Lilinum=
D.name=Lilinum=1001
64.有以下程序
#include<string.h>
main()
{FILE*fp;
inti,k,n;
fp=fopen("data.dat","w+");
for(i=4;i<9;i++)
{fprintf(fp,"%d",i);
if(i%3==0)fprintf(fp,"\n");
}
rewind(fp);
fscanf(fp,"%d%d",&k,&n);
printf("%d%d\n",k,n);
fclose(fp);
}
程序的運(yùn)行結(jié)果是
A.00B.45
C.4578D.45678
65.已定義以下函數(shù):
fun函數(shù)的返回值是()。
A.一個(gè)整數(shù)B.不確定的值C.形參P中存放的值D.形參P的地址值
66.有三個(gè)關(guān)系R、S和T如下:
其中關(guān)系T由關(guān)系R和s通過某種操作得到,該操作為()。
A.選擇B.投影C.交D.井
67.樹是結(jié)點(diǎn)的集合,它的根結(jié)點(diǎn)數(shù)目是()。
A.有且只有1B.1或多于1C.0或1D.至少2
68.
69.
70.下列函數(shù)的功能是()
71.設(shè)有表示學(xué)生選課的三張表,學(xué)生s(學(xué)號(hào),姓名,性別,年齡,身份證號(hào)),課程c(課號(hào),課名),選課SC(學(xué)號(hào),課號(hào),成績(jī)),則表sc的關(guān)鍵字(鍵或碼)為()。
A.課號(hào),成績(jī)B.學(xué)號(hào),成績(jī)C.學(xué)號(hào),課號(hào)D.學(xué)號(hào),姓名,成績(jī)
72.下列敘述中錯(cuò)誤的是()。
A.一個(gè)C語(yǔ)言程序只能實(shí)現(xiàn)一種算法
B.c程序可以由多個(gè)程序文件組成
C.C程序可以由一個(gè)或多個(gè)函數(shù)組成
D.一個(gè)C函數(shù)可以單獨(dú)作為一個(gè)C稃序文件存存
73.
74.
75.數(shù)據(jù)庫(kù)DB、數(shù)據(jù)庫(kù)系統(tǒng)DBS、數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS之間的關(guān)系是()。
A.DB包含DBS和DBMSB.DBMS包含DB和DBSC.DBS包含DB和DBMSD.沒有任何關(guān)系
76.程序運(yùn)行后的輸出結(jié)果是()。A.Qian,f,350,Sun,f,350
B.Qiamf,350,Qian,f,350
C.Qian,f,350,Sun,m,370
D.Zha0,m,290,Sun,m,370
77.設(shè)有如下程序段:
則執(zhí)行P=s;語(yǔ)句后,以下敘述中正確的是()。
A.可以用*P表示s[O]
B.S數(shù)組中元素的個(gè)數(shù)和P所指字符串長(zhǎng)度相等
C.s和P都是指針變量
D.數(shù)組s中的內(nèi)容和指針變量P中的內(nèi)容相等
78.以下選項(xiàng)中關(guān)于程序模塊化的敘述錯(cuò)誤的是()。
A.可采用自底向上、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序
B.把程序分成若干相對(duì)獨(dú)立、功能單一的模塊,可便于重復(fù)使用這些模塊
C.把程序分成若干相對(duì)獨(dú)立的模塊,可便于編碼和調(diào)試
D.可采用自頂向下、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序
79.結(jié)構(gòu)化程序設(shè)計(jì)的三種結(jié)構(gòu)是()。
A.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、轉(zhuǎn)移結(jié)構(gòu)
B.分支結(jié)構(gòu)、等價(jià)結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
C.多分支結(jié)構(gòu)、賦值結(jié)構(gòu)、等價(jià)結(jié)構(gòu)
D.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
80.
五、程序改錯(cuò)題(1題)81.下列給定程序中,proc()函數(shù)的功能是:根據(jù)形參m,計(jì)算下列公式的值。t=1+1/2+1/3+1/4+…+1/m例如,若輸入10,則應(yīng)輸出2.928968。請(qǐng)修改程序中的錯(cuò)誤,使它能計(jì)算出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.下列程序定義了MM的二維數(shù)組,并在主函數(shù)中自動(dòng)賦值。請(qǐng)編寫函數(shù)proc(inta[][M]),該函數(shù)的功能是:使數(shù)組左下半三角元素中的值全部置成0。例如,a數(shù)組中的值為:
注意:部分源程序給出如下。
請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫的若干語(yǔ)句。
試題程序:
參考答案
1.C
2.A當(dāng)y為。時(shí),表達(dá)式y(tǒng)一才為假,循環(huán)結(jié)束,最終y的值為一l,所以答案選擇A)。
3.A
4.B
5.A通常,將軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過程稱為軟件生命周期。也就是說,軟件產(chǎn)品從考慮其概念開始,到該軟件產(chǎn)品不能使用為止的整個(gè)時(shí)期都屬于軟件生命周期。
6.A解析:選項(xiàng)A中(!a==1)&&(!b==0)→(!2==1)&&(!b==0)→(0==1)&&(!b==0)→0&&(!b==0)→0(&&右邊表達(dá)式(!b==0)被“短路”):選項(xiàng)B中(a<b)&&!c||1→(2<3)&&!4||1→1&&0||1→0||1→1;選項(xiàng)C中a&&b→2&&3→1;選項(xiàng)Da||b+b)&&(c-a)→2||(b+b)&&(c-a)→1(||右邊表達(dá)式(b+b)&&(c-a)被“短路”)。所以本題選A。
7.C解析:sort函數(shù)的功能實(shí)際上是對(duì)數(shù)組中奇數(shù)位置上的數(shù)進(jìn)行從大到小排序。排序后的結(jié)果應(yīng)該為9,2,7,4,5,6,3,8,1,10。
8.A
9.C
10.C子函數(shù)funl(doublea)的功能是返回a的平方值的整數(shù)部分。子函數(shù)fun2(doubleX,doubley)的功能是返回X的平方值的整數(shù)部分與Y的平方值的整數(shù)部分的和。又因?yàn)轭}中變量W的定義為double型,函數(shù)fun(2)的定義為int型,按照各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算,整型數(shù)據(jù)被轉(zhuǎn)換為實(shí)型數(shù)據(jù)。所以雙精度型變量w的值為5.0。
11.C在函數(shù)intfun(intx[],intn)的定義中,變量sum為一個(gè)靜態(tài)局部變量。由于在整個(gè)程序運(yùn)行期間,靜態(tài)局部變量在內(nèi)存中的靜態(tài)存儲(chǔ)中占據(jù)著永久的存儲(chǔ)單元。函數(shù)intfun(intx[],intn)的功能是求出數(shù)組x[]各個(gè)元素的和,所以在主函數(shù)中,調(diào)用函數(shù)fun(a,5)后,變量sum=1+2+3+4+5=15,當(dāng)再次調(diào)用fun(b,4)后,變量sum=15+6+7+8+9=45,所以s=15+45=60。
12.C
13.B字符串常量應(yīng)該用雙引號(hào)標(biāo)注,即“cd”,單引號(hào)標(biāo)注的單個(gè)字符表示字符常量,所以B選項(xiàng)中的表示方法錯(cuò)誤。故本題答案為B選項(xiàng)。
14.D
15.B
16.D解析:使用人工或自動(dòng)手段來運(yùn)行或測(cè)定某個(gè)系統(tǒng)的過程,其目的在于檢驗(yàn)它是否滿足規(guī)定的需求或是弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別。軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程。測(cè)試要以查找錯(cuò)誤為中心,而不是為了演示軟件的正確功能。
17.B在實(shí)際應(yīng)用中,隊(duì)列的順序存儲(chǔ)結(jié)構(gòu)一般采用循環(huán)隊(duì)列的形式。當(dāng)循環(huán)隊(duì)列為滿或者為空時(shí),隊(duì)尾指針=隊(duì)頭指針。本題答案為B選項(xiàng)。
18.B解析:本題主要考查結(jié)構(gòu)體和聯(lián)合內(nèi)存使用的區(qū)別:結(jié)構(gòu)中不同的成員分別使用不同的內(nèi)存空間,一個(gè)結(jié)構(gòu)所占內(nèi)存空間的大小是結(jié)構(gòu)中每個(gè)成員所占內(nèi)存空間大小的總和,結(jié)構(gòu)中每個(gè)成員相互獨(dú)立;聯(lián)合所占用的內(nèi)存空間為最長(zhǎng)的成員所占用的空間。
19.A其方法是將要?jiǎng)h除節(jié)點(diǎn)的上一個(gè)節(jié)點(diǎn)的next指向要?jiǎng)h除節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn),然后釋放將要?jiǎng)h除的節(jié)點(diǎn),所以選項(xiàng)A正確。故本題答案為A選項(xiàng)。
20.D
21.55解析:本題的關(guān)鍵在于if(!(i%5))printf('\\n),這句,即如果i可被5整除時(shí),則換行。i值為24,可以被5整除4次,并余4,因此,prnt函數(shù)共輸出5行,最后一行有4個(gè)數(shù)。
22.19
23.6868解析:本題考查如何用指針引用數(shù)組元素。本題先定義了一個(gè)指向字符型數(shù)組str的指針p,指針p指向數(shù)組str的首地址,p+3將指針指向str[3],*(p+3)指的是字符“D”,輸出時(shí)是以“%d”格式輸出的,即輸出其相應(yīng)ASCII碼值68。
24.str[i]str[i+1]"%s"strstr[i]\r\nstr[i+1]\r\n'%s',str解析:本題要求將字符串str中的字符用冒泡排序算法從大到小排列,其實(shí)現(xiàn)過程是將相鄰兩個(gè)字詞進(jìn)行比較,如果當(dāng)前字符小于下一個(gè)字符,則通過中間變量temp將字符兩兩交換,所以第一空應(yīng)填:str[i],第二空應(yīng)填:str[i+1]。最終打印輸出得到的字符串str,所以第三空應(yīng)填:'%s',str。
25.1212解析:本題考查逗號(hào)表達(dá)式的運(yùn)算規(guī)則。逗號(hào)表達(dá)式的基本格式為:“表達(dá)式1,表達(dá)式2,…”,其整個(gè)表達(dá)式的結(jié)果取最后一個(gè)子表達(dá)式的值。本題中首先計(jì)算逗號(hào)表達(dá)式中的第1個(gè)表達(dá)式a=2*3=6,然后計(jì)算第2個(gè)表達(dá)式a*2,這時(shí)整個(gè)表達(dá)式的值為12,但要注意,因?yàn)榈?個(gè)表達(dá)式并沒有給a賦值,因此a的值不變;接下來執(zhí)行最后一個(gè)表達(dá)式a+6=12,所以整個(gè)表達(dá)式最后的值為12。
26.123056009123\r\n056\r\n009解析:數(shù)組a中元素的初值為:a[0][0]=1、a[0][1]=2、a[0][2]=3、a[1][0]=4、a[1][1]=5、a[1][2]=6、a[12][0]=7、a[2][1]=8、a[2][2]=9。執(zhí)行第1個(gè)for循環(huán)后a[1][0]=0、a[2][0]=0、a[2][1)=0;第2個(gè)for循環(huán)的功能是將數(shù)組元素按照3行3列的格式輸出。
27.x+=1x+=1解析:本題考查“++”,“--”運(yùn)算符?!?+”、“--”只能作用于變量,不能用于表達(dá)式或常量;前綴形式是在使用變量之前先將其值增1或減1,后綴形式是先使用變量原來的值,使用完后再使其增1或減1。
28.3691236912解析:本題考查最基本的for循環(huán):for(cc=1;cc<5;cc++)規(guī)定循環(huán)次數(shù)為4次,每次a+=3即每次a的值增3,但因?yàn)閒un函數(shù)中變量a為static類型,所以每次調(diào)用完于函數(shù)之后,變量a所做的改變都要保存。
29.stringbis:Ilovechina!
30.k=p;k=p;解析:為要尋找數(shù)組中的最大元素的下標(biāo),需先預(yù)設(shè)1個(gè)臨時(shí)最大元素的下標(biāo),并順序逐一考查數(shù)組的元素,當(dāng)發(fā)現(xiàn)當(dāng)前元素比臨時(shí)最大元素更大時(shí),就用當(dāng)前元素的下標(biāo)更新臨時(shí)最大元素下標(biāo)。直至考查了數(shù)組的全部元素后,這臨時(shí)最大元素下標(biāo)就是數(shù)組的最大元素下標(biāo)。通常預(yù)設(shè)的最大元素下標(biāo)是數(shù)組的首元素下標(biāo),考查是從首元素開始順序向后繼元素考查。程序中,存儲(chǔ)臨時(shí)最大元素下標(biāo)的變量是k,變量p控制順序考查的循環(huán)控制變量。當(dāng)發(fā)現(xiàn)當(dāng)前元素s[p]比臨時(shí)最大元素s[k)更大時(shí),應(yīng)該用p更新k。所以在空框處應(yīng)填入代碼“k=p;”。
31.149161,4,9,16,解析:分析程序執(zhí)行過程,第1次循環(huán),k=1時(shí),此時(shí)s(1)=1*1=1,然后k的值加1;第2次循環(huán),k=2時(shí),s(2)=2*2=4,然后k的值加1;第3次循環(huán),k=3時(shí),s(3)=3*3=9,然后k的值加1;第4次循環(huán),k=4時(shí),s(4)=4*4=16,然后k的值加1;當(dāng)k=5時(shí),條件不滿足,退出循環(huán)。
32.11解析:do…while語(yǔ)句的功能是:首先執(zhí)行循環(huán)體語(yǔ)句,然后檢測(cè)循環(huán)控制條件表達(dá)式的值,若為真,則重復(fù)執(zhí)行循環(huán)體語(yǔ)句,否則退出循環(huán);do…while語(yǔ)句的特點(diǎn)是先執(zhí)行后判斷,因此循環(huán)體至少執(zhí)行1次.本程序中x=2不符合循環(huán)條件,所以只循環(huán)1次。
33.邏輯邏輯解析:數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)或物理結(jié)構(gòu)。
34.相鄰相鄰
35.需求規(guī)格說明書需求規(guī)格說明書解析:軟件需求規(guī)格說明書是需求分析階段的最后成果,是軟件開發(fā)中的重要文檔之一。需求規(guī)格說明書包括正確性、無歧義性、完整性、可驗(yàn)證性、一致性、可理解性、可修改性和可追蹤性等。
36.11371,13,7解析:本題考查3個(gè)知識(shí)點(diǎn):①余數(shù)的計(jì)算,題中的a=10,b=3,a%b=1;②(表達(dá)式1,表達(dá)式2)形式的結(jié)果為最后一個(gè)表達(dá)式的值,題中的a=10,b=3,(a-b,a+b)=a+b=13;③條件運(yùn)算符的使用,題中的a-b?a-b:a+b,判斷語(yǔ)句a-b=7不為0,所以執(zhí)行a-b,結(jié)果為7。
37.模式或邏輯模式或概念模式模式也稱邏輯模式或概念模式,是數(shù)據(jù)庫(kù)中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是所有用戶的公共數(shù)據(jù)視圖,例如數(shù)據(jù)記錄由哪些數(shù)據(jù)項(xiàng)構(gòu)成,數(shù)據(jù)項(xiàng)的名字、類型、取值范圍等。
38.1351\r\n3\r\n5解析:本題考查了for循環(huán)語(yǔ)句的使用,break語(yǔ)句用在本題中是結(jié)束for循環(huán)直接跳出循環(huán)體外。當(dāng)i=1時(shí),因?yàn)閕f語(yǔ)句條件不滿足,所以直接執(zhí)行printf('%d\\n',i++);輸出1,同時(shí)i自加1;執(zhí)行第二次for循環(huán)時(shí),i=3;同樣的if語(yǔ)句條件不滿足,所以直接執(zhí)行printf('%d\\n',i++);輸出3,同時(shí)i自加1;執(zhí)行第三次for循環(huán)時(shí),i=5,if語(yǔ)句條件滿足,所以執(zhí)行printf('%d\\n',i),輸出5,然后break語(yǔ)句跳出了for循環(huán)。
39.可重用性繼承的優(yōu)點(diǎn):相似的對(duì)象可以共享程序代碼和數(shù)據(jù)結(jié)構(gòu),從而大大減少了程序中的冗余,提高軟件的可重用性。
40.數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)
41.C解析:限制使用GOTO語(yǔ)句是結(jié)構(gòu)化程序設(shè)計(jì)的原則和方法之一,但不是絕對(duì)不允許使用GOTO語(yǔ)句。其他3項(xiàng)為結(jié)構(gòu)化程序設(shè)計(jì)的原則。
42.B解析:在棧中,允許插入與刪除的一端稱為棧頂,不允許插入與刪除的另一端稱為棧底。棧頂元素總是最后被插入的元素,從而也是最先能被刪除的元素;棧底元素總是最先被插入的元素,從而也是最后才能被刪除的元素。即棧是按照先進(jìn)后出(FILO,F(xiàn)irstInLastOut)或后進(jìn)先出(LIFO,LastInFirstOut)的原則組織數(shù)據(jù)的,因此,棧也被稱為先進(jìn)后出表或后進(jìn)先出表。由此可以看出,棧具有記憶作用。答案B錯(cuò)在帶鏈的棧的結(jié)點(diǎn)存儲(chǔ)順序與其邏輯順序是可以不一致的。
43.C解析:本題考查ifelse語(yǔ)句。第一個(gè)if語(yǔ)句,先判斷條件,發(fā)現(xiàn)a<b條件成立,執(zhí)行下列的語(yǔ)句;第二個(gè)if語(yǔ)句,先判斷條件,發(fā)現(xiàn)b<0條件不成立,則執(zhí)行與其配對(duì)的else語(yǔ)句,c+=1,得c=5。
44.D解析:兩個(gè)實(shí)體間的聯(lián)系可以歸納為3種類型:一對(duì)一聯(lián)系:一對(duì)一的聯(lián)系表現(xiàn)為主表中的每一條記錄只與相關(guān)表中的一條記錄相關(guān)聯(lián)。一對(duì)多聯(lián)系,一對(duì)多的聯(lián)系表現(xiàn)為主表中的每一條記錄與相關(guān)表中的多條記錄相關(guān)聯(lián)。多對(duì)多聯(lián)系:多對(duì)多的聯(lián)系表現(xiàn)為二個(gè)表中的多個(gè)記錄在相關(guān)表中同樣有多個(gè)記錄其匹配。本題中一個(gè)顧客可以購(gòu)買多種商品,同一種商品可以有多個(gè)顧客購(gòu)買,所以商品和顧客之間是多對(duì)多的聯(lián)系。
45.B解析:由函數(shù)intfun(int*p){return*p;}的定義可知,返回值為整型指針變量p所指向的數(shù)據(jù)。
46.A
47.A解析:C語(yǔ)言變量名可由數(shù)字,字母,下劃線構(gòu)成,但首字符不能為數(shù)字。
48.B
49.D解析:A選項(xiàng),將f賦值為0,結(jié)果得到0,因?yàn)?乘任何數(shù)都為0;B選項(xiàng),i<n,計(jì)算的是(n-1)!,C選項(xiàng)將陷入死循環(huán)。
50.D解析:需求分析常用的工具有數(shù)據(jù)流圖(DFD)、數(shù)據(jù)字典(DD)、判定樹和判定表。PAD(問題分析圖)、PFD(程序流程圖)、N-S(盒式圖)都是詳細(xì)設(shè)計(jì)的常用工具,不是需求分析的工具。
51.B解析:C語(yǔ)言規(guī)定,標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種符號(hào)組成,而且第一個(gè)字符必須是字母或下劃線。另外還需要注意的是關(guān)鍵字不能作標(biāo)識(shí)符。選項(xiàng)A中void,C中for都為關(guān)鍵字,D中2c以字母開頭。
52.D解析:程序設(shè)計(jì)語(yǔ)言是用于書寫計(jì)算機(jī)程序的語(yǔ)言,其基本成分有以下4種,數(shù)據(jù)成分:用來描述程序中的數(shù)據(jù)。運(yùn)算成分:描述程序中所需的運(yùn)算。控制成分:用來構(gòu)造程序的邏輯控制結(jié)構(gòu)。傳輸成分:定義數(shù)據(jù)傳輸成分,如輸入/輸出語(yǔ)言。
53.A
54.D解析:在格式輸入中,要求給出的是編譯的地址,而D)答案中給出的s[1]是一個(gè)值的表達(dá)式。
55.D結(jié)構(gòu)化程序設(shè)計(jì)由迪杰斯特拉(E.W.dijkstra)在1969年提出,他主張“清晰第一,效率第二”,以模塊化設(shè)計(jì)為中心,將待開發(fā)的軟件系統(tǒng)劃分為若干個(gè)相互獨(dú)立的模塊,這樣使完成每一個(gè)模塊的工作變得單純而明確,為設(shè)計(jì)一些較大的軟件打下了良好的基礎(chǔ)。
由于模塊相互獨(dú)立,因此,在設(shè)計(jì)其中一個(gè)模塊時(shí),不會(huì)受到其他模塊的牽連,因而可將原來較為復(fù)雜的問題化簡(jiǎn)為一系列簡(jiǎn)單模塊的設(shè)計(jì)。模塊的獨(dú)立性還為擴(kuò)充已有的系統(tǒng)、建立新系統(tǒng)帶來了不少的方便,因?yàn)榭梢猿浞掷矛F(xiàn)有的模塊作為積木式的擴(kuò)展。
結(jié)構(gòu)化程序設(shè)計(jì)的基本思想是采用“自頂向下,逐步求精”的程序設(shè)計(jì)方法和“單入口單出口”的控制結(jié)構(gòu)。自頂向下、逐步求精的程序設(shè)計(jì)方法從問題本身開始,經(jīng)過逐步細(xì)化,將解決問題的步驟分解為由基本程序結(jié)構(gòu)模塊組成的結(jié)構(gòu)化程序框圖;“單入口單出口”的思想認(rèn)為一個(gè)復(fù)雜的程序,如果它僅是由順序、選擇和循環(huán)三種基本程序結(jié)構(gòu)通過組合、嵌套構(gòu)成,那么這個(gè)新構(gòu)造的程序一定是一個(gè)單入口單出口的程序。據(jù)此就很容易編寫出結(jié)構(gòu)良好、易于調(diào)試的程序。
56.C解析:for語(yǔ)句中的表達(dá)式可以部分或全部省略,但兩個(gè)“;”不能省略,若3個(gè)表達(dá)式均省略,會(huì)因?yàn)槿鄙贄l件判斷,導(dǎo)致循環(huán)無限執(zhí)行,而形成死循環(huán)。本題中當(dāng)i的值為5的時(shí)候,循環(huán)終止。
57.D
58.A解析:本題考核的知識(shí)點(diǎn)是通過指針引用數(shù)組的元素的方法.本題中首先定義了一個(gè)一維數(shù)組a并初始化,由于定義該數(shù)組的時(shí)候省略了長(zhǎng)度,因此該數(shù)組的長(zhǎng)度為初始化時(shí)候賦初值的個(gè)數(shù)即為12。數(shù)組名a代表數(shù)組的首地址,所以*p=a+5語(yǔ)句使得p指向數(shù)組的第6個(gè)元素,而在程序中定義了一個(gè)指針q并讓它指向空,實(shí)際上程序并沒有在內(nèi)存中為指針q開辟存儲(chǔ)空間,這樣給q賦值不允許的,故該程序運(yùn)行后報(bào)錯(cuò)。所以,4個(gè)選項(xiàng)中選項(xiàng)A符合題意。
59.A
60.A解析:在C語(yǔ)言中,一個(gè)字符常量代表ASCII字符集中的一個(gè)小字符,在程序中用單引號(hào)把一個(gè)字符括起來作為字符常量,選項(xiàng)A)是一個(gè)轉(zhuǎn)義字符常量,表示橫向跳若干空格(代表“TAB”鍵);選項(xiàng)B)表示一個(gè)字符串;選項(xiàng)C)表示一個(gè)整型常量;選項(xiàng)D)表示一個(gè)標(biāo)識(shí)符(代表一個(gè)變量),故本題答案為A)。
61.A
62.A解析:在本題中k=n++,為后綴運(yùn)算。根據(jù)其運(yùn)算規(guī)則,首先n先加一,但n++表達(dá)式的值依然n原來的值,即k的值沒有改變。選項(xiàng)A中先給k賦值為n,然后n再加1,k值沒有變化,所以這個(gè)表達(dá)式和本題中表達(dá)式等價(jià):選項(xiàng)B中先n加1,然后將n加1后的值賦給k,k變化了比原來的值大1,所以這個(gè)表達(dá)式和本題中表達(dá)式不等價(jià):選項(xiàng)C中先計(jì)算表達(dá)式左邊的表達(dá)式++=N的值,執(zhí)行++n后,左邊的表達(dá)式的值為n的值加1,然后將n+1后的值賦給k,所以這個(gè)表達(dá)式和本題中的表達(dá)式不等價(jià);選項(xiàng)D中表達(dá)式展開為k=k+(n+1),k的值發(fā)生了變化,所以這個(gè)表達(dá)式和本題中的表達(dá)式不等價(jià)。所以4個(gè)選項(xiàng)中A正確。
63.A\n考查簡(jiǎn)單的C程序。由題可知,程序中輸入name的值為L(zhǎng)ili,所以輸出的必定是Lili,答案選擇A。
\n
64.D本題主要考查文件的操作。在程序中,首先定義了一個(gè)文件類的指針變量fp,然后定義了三個(gè)整型變量,接著以可讀/寫的形式打開文件data.dat,最后執(zhí)行for循環(huán):
當(dāng)i=4時(shí),將變量i的值格式化輸出到fp指向的文件中,即為4,然后判斷i%3是否為0,如果是,則輸出換行符,否則不執(zhí)行其他操作。
當(dāng)i=5時(shí),那么輸出到文件中的值為5,同樣,輸出6并輸出換行符,接著輸出7和8到文件中。循環(huán)結(jié)束,此時(shí)文件中的內(nèi)容為456<換行>78。
執(zhí)行rewind(fp);語(yǔ)句,這個(gè)語(yǔ)句的作用是將文件的位置指針返回到文件的開頭,然后用該文件的內(nèi)容分別給變量k和n賦值,賦值的過程中,碰到換行符表示一個(gè)賦值的結(jié)束,因此,賦值后,兩變量的結(jié)果分別是456和78。因此,最后的輸出結(jié)果是45678。
65.A返回值為指針變量指向的數(shù)據(jù),該數(shù)據(jù)已被定義為整型。因此A選項(xiàng)正確。
66.D關(guān)系T中包含了關(guān)系R與s中的所有元組,所以進(jìn)行的是并的運(yùn)算。
67.A樹形結(jié)構(gòu)是一類重要的非線性數(shù)據(jù)結(jié)構(gòu)。樹是n(n≥0)個(gè)結(jié)點(diǎn)的集合,對(duì)應(yīng)任意一棵非空樹,它具有以下幾點(diǎn)重要的性質(zhì)。
①有且僅有一個(gè)特定的稱為根的結(jié)點(diǎn)。
②當(dāng)n>1時(shí),其余結(jié)點(diǎn)可分為m(m>0)個(gè)互不相交的有限集T1,T2,…,TM,其中每一個(gè)集合本身又是一棵樹,稱為子樹。
因此,本題的正確答案有且只有一個(gè)。
68.C
69.B
70.A將a數(shù)組里元素賦值給b數(shù)組,直到數(shù)組a的末尾,所以選擇A)。
71.C學(xué)號(hào)是學(xué)生表S的主鍵,課號(hào)是課程表C的主鍵,所以選課表SC的關(guān)鍵字就應(yīng)該是與前兩個(gè)表能夠直接聯(lián)系且能唯一定義的學(xué)號(hào)和課號(hào),所以選擇C項(xiàng)。
72.A一個(gè)C語(yǔ)言程序能實(shí)現(xiàn)多種算法,所以A)錯(cuò)誤。
73.C
74.B
75.C(10)C)解析:DB即數(shù)據(jù)庫(kù)(Database),是統(tǒng)一管理的相關(guān)數(shù)據(jù)的集合;DBMS即數(shù)據(jù)庫(kù)管理系統(tǒng)(DatabaseManagementSystem),是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,為用戶或應(yīng)用程序提供訪問DB的方法;DBS即數(shù)據(jù)庫(kù)系統(tǒng)(DatabaseSystem)由如下5部分組成,數(shù)據(jù)庫(kù)(數(shù)據(jù))、數(shù)據(jù)庫(kù)管理系統(tǒng)(軟件)、數(shù)據(jù)庫(kù)管理員(人員)、系統(tǒng)平臺(tái)之一——硬件平臺(tái)(硬件)、系統(tǒng)平臺(tái)之二——軟件平臺(tái)(軟件)。
76.Ac語(yǔ)言函數(shù)參數(shù)傳遞大致分為:1、值傳遞過程中。被調(diào)函數(shù)的形參作為被調(diào)函數(shù)的局部變量處理,即在內(nèi)存的堆棧中開辟空間以存放由主調(diào)函數(shù)放進(jìn)來的實(shí)參的值,從而成為了實(shí)參的一個(gè)拷貝。值傳遞的特點(diǎn)是被調(diào)函數(shù)對(duì)形參的任何操作都是作為局部變量進(jìn)行,不會(huì)影響主調(diào)函數(shù)的實(shí)參變量的值。2、地址傳遞過程中,被調(diào)函數(shù)的形參雖然也作為局部變量在堆棧中開辟了內(nèi)存空間,但是這時(shí)存放的是由主調(diào)函數(shù)放進(jìn)來的實(shí)參變量的地址。被調(diào)函數(shù)對(duì)形參的任何操作都被處理成間接尋址,即通過堆棧中存放的地址訪問主調(diào)函數(shù)中的實(shí)參變量。正因?yàn)槿绱?,被調(diào)函數(shù)對(duì)形參做的任何操作都影響了主調(diào)函數(shù)中的實(shí)參變量。結(jié)構(gòu)體中nanle是數(shù)組,做實(shí)參傳遞,會(huì)退化為指針,因此調(diào)用f(),b.nanle發(fā)生修改,其他的成員,傳遞的是拷貝,不會(huì)被修改。因此輸出Sun,f,350。故答案為A選項(xiàng)。
77.AP=8;后,指針P指向s的首地址,*P=s[0],因此選項(xiàng)A)是正確的;p是字符串指針,所指向的字符串為”beijing”,其長(zhǎng)度為7,而數(shù)組s中元素的個(gè)數(shù)為20,因此選項(xiàng)B)和D)是錯(cuò)誤的;s是數(shù)組,不是指針變量,所以選項(xiàng)C)也是錯(cuò)誤的。
78.A程序模塊化可以采用自頂向下、逐步細(xì)化的方法,所以A選項(xiàng)中“自底向上”的說法是錯(cuò)誤的。故本題答案為A選項(xiàng)。
79.D結(jié)構(gòu)化程序設(shè)計(jì)以模塊化設(shè)計(jì)為中心,采用自頂向下、逐步求精的程序設(shè)計(jì)方法。任何算法功能都可以通過由程序模塊組成的三種基本程序結(jié)構(gòu)的組合:順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)來實(shí)現(xiàn)。
80.B
81.(1)錯(cuò)誤:t+=1.0/k;
正確:t+=1.o/i;
(2)錯(cuò)誤:returni;
正確:returnt;
【解析】根據(jù)for循環(huán)可知,變量i中存放每一項(xiàng)的分母,變量k在函數(shù)procee沒有定義,因此t+=l.0/k;應(yīng)改為t+=1.0/i;。變量t中存放各項(xiàng)的和,題目要求將各項(xiàng)的和返回給主函數(shù),因此returni應(yīng)改為returnt。
82.
【解析】要使數(shù)組左下半三角元素中的值全部置成0,先要找出數(shù)組的下半三角元素,再將其值全部賦值為0。二維數(shù)組中下半三角元素的特點(diǎn)為,其列下標(biāo)小于其行下標(biāo)。根據(jù)這個(gè)特點(diǎn),將二維數(shù)組的下半三角元素都賦值為0。
2022年廣東省肇慶市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.十六進(jìn)制數(shù)BB轉(zhuǎn)換成十進(jìn)制數(shù)是()
A.192B.256C.187D.121
2.有以下程序程序執(zhí)行后的輸出結(jié)果是()。
A.y=-IB.y=oC.y=lD.while構(gòu)成無限循環(huán).
3.設(shè)有序順序表中有n個(gè)數(shù)據(jù)元素,則利用二分查找法查找數(shù)據(jù)元素X的最多比較次數(shù)不超過()。A.log2+1
B.log2(n-1)
C.log2n
D.log2(n+1)
4.
5.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過程
B.軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測(cè)試完成的過程
C.軟件的開發(fā)過程
D.軟件的運(yùn)行維護(hù)過程
6.設(shè)有定義inta=2,b=3,c=4;,則以下選項(xiàng)中值為0的表達(dá)式是______。A.(!a==1&&(!b==0)
B.(a<b)&&!c||1
C.a&&b
D.a||(b+b)&&(c-a)
7.有以下程序:#include<stdio.h>voidsort(inta[],intn){inti,j,t;for(i=0;i<n-1;i+=2)for(j=i+2;j<n;j+=2)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(aa,10);for(i=0;i<10;i++)printf("%d.",aa[i]);printf("\n");}其輸出結(jié)果是()。
A.1,2,3,4,5,6,7,8,9,10,
B.10,9,8,7,6,5,4,3,2,1,
C.9,2,7,4,5,6,3,8,1,10,
D.1,10,3,8,5,6,7,4,9,2,
8.命令“DIRA:*.*/W”的功能是()
A.寬行顯示A盤當(dāng)前目錄的所有文件
B.寬行顯示A盤所有目錄的所有文件
C.寬行顯示A盤的所有目錄
D.顯示A盤中的文件名,每滿一屏后停頓一下
9.使用深度優(yōu)先算法遍歷下圖,遍歷的順序?yàn)?)A.ABCDEFGB.ABDCFEGC.ABDECFGD.ABCDFEG
10.有下列程序:
intfunl(doublea){returna*=a;}
intfun2(doublex,doubley)
{doublea=0,b=0;
a=funl(x);b=funl(y);return(int)(a+b);
}
main()
{doublew;w=fun2(1.1,2.0),……}
程序執(zhí)行后變量w中的值是()。、
A.5.21B.5C.5.0D.0.0
11.有下列程序:intfun(intx[],intn){staticintsum=0,i;for(i=0;i<n;i++)sum+=x[i]:returnsum;}main(){inta[3]={1,2,3,4,5),b[3]={6,7,8,9),s=0;s=fun(a,5)+fun(b,4);printf("%d\n",s);}程序執(zhí)行后的輸出結(jié)果是()。、A.45B.50C.60D.55
12.假定a為一個(gè)整型數(shù)組名,則元素a[4]的字節(jié)地址為()。
A.a+4B.a+8C.a+16D.a+32
13.以下選項(xiàng)中不能作為C語(yǔ)言合法常量的是()
A.0.1e+6B.‘cd’C.“\a”D.‘\011’
14.
15.設(shè)有定義:floata=2,b=4,h=3;,以下C語(yǔ)言表達(dá)式與代數(shù)式計(jì)算結(jié)果不相符的是()。
A.(a+b)*h/2B.(1/2)*(a+b)*hC.(a+b)*h*1/2D.h/2*(a+b)
16.在軟件測(cè)試設(shè)計(jì)中,軟件測(cè)試的主要目的是
A.實(shí)驗(yàn)性運(yùn)行軟件B.證明軟件正確C.找出軟件中全部錯(cuò)誤D.盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤
17.以下敘述中正確的是()。
A.循環(huán)隊(duì)列是隊(duì)列的一種鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B.循環(huán)隊(duì)列是隊(duì)列的一種順序存儲(chǔ)結(jié)構(gòu)
C.循環(huán)隊(duì)列中的隊(duì)尾指針一定大于隊(duì)頭指針
D.循環(huán)隊(duì)列中的隊(duì)尾指針一定小于隊(duì)頭指針
18.下列程序的輸出結(jié)果是()。#include<stdio.h>main(){structst{inty,x,z;};union{longi;intj;chark;}un;printf("%d,%d\n",sizeof(structst),sizeof(un));}
A.6,2B.6,4C.8,4D.8,6
19.假定已建立以下鏈表結(jié)構(gòu),且指針p和q已指向如圖所示的節(jié)點(diǎn)。則下列選項(xiàng)中可將q所指節(jié)點(diǎn)從鏈表中刪除并釋放該節(jié)點(diǎn)的語(yǔ)句組是()。
A.p->next=q->next;free(q);
B.p=q->next;free(q);
C.p=q;free(q);
D.(*p).next=(*q).next;free(p);
20.廣義表((a))的表尾是()。
A.aB.(a)C.((a))D.()
二、2.填空題(20題)21.若變量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");
}
22.某二叉樹中度為2的節(jié)點(diǎn)有18個(gè),則該二叉樹中有()個(gè)葉子節(jié)點(diǎn)。
23.下列程序段的運(yùn)行結(jié)果是______。
charstr[]="ABCD",*p=str;
printf("%d\n",*(p+3));
24.下面的程序可對(duì)指定字符串進(jìn)行從大到小排序,請(qǐng)將程序填完整。(注:程序采用了冒泡排序算法)
#include<stdio.h>
#include<string.h>
main()
{char*str="ABCDabcd",temp;
intn,i;
n=strlen(str);
while(n->1)
for(i=0;i<n;i++)
if(str[i]<str[i+1])
{temp=【】;
str[i]=str[i+1];
【】=temp;
}
printf(【】);
}
25.若a是血型變量,則表達(dá)式(a=2*3,a*2),a+6的值為______。
26.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{inti,j,a[][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
for(j=i+1;j<3;j++)a[j][i]=0;
for(i=0;i<3;i++)
{for(j=0;j<3;j++)printf("%d",a[i][j]);
printf("\n");
}
}
27.語(yǔ)句:x++;++x;x=1+x;執(zhí)行后都使變量x中的值增1,請(qǐng)寫出一條同一功能的賦值語(yǔ)句______。
28.下列程序的輸出結(jié)果是______。
#include<stdio.h>
fun()
{staticinta=0;
a+=3;printf("%d",A);
}
main()
{intcc;
for(cc=1;cc<5;cc++)fun();
printf("\n");
}
29.下列程序的運(yùn)行結(jié)果為【】。
main()
{inti;
chara[]="Ilovechina!",b[20],*p1,*p2;
p1=a;
p2=b;
while(*p1)
{*p2=*p1;
p1++;
p2++;
}
*p2='\0';
printf("stringbis:%s\n",b);
}
30.下面程序的功能是輸出數(shù)組s中最大元素的下標(biāo),請(qǐng)?zhí)羁铡?/p>
main()
{intk,p,s[]={1,-9,7,2,-10,3};
for(p=0,k=p;p<6;p++)
if(s[p]>s[k])【】
printf("%d\n",k);}
31.以下程序的運(yùn)行結(jié)果是()。#defineS(x)x*xmain(){intk=1;while(k<=4){printf("%d,",S(k));k++;}
32.下列程序的循環(huán)次數(shù)是______。
x=2;
do
{x=x*x;}
while(!x);
33.數(shù)據(jù)的【】結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)或物理結(jié)構(gòu)。
34.順序存儲(chǔ)方法是把邏輯上相鄰的結(jié)點(diǎn)存儲(chǔ)在物理位置______的存儲(chǔ)單元中。
35.需求分析的最終結(jié)果是產(chǎn)生【】。
36.下列程序的運(yùn)行結(jié)果是______。
#include<stdio.h>
main()
{inta=10,b=3;
printf("%d,",a%b);
printf("%d,",(a-b,a+b));
printf("%d\n",a-b?a-b:a+b);
}
37.數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱為數(shù)據(jù)的【】。
38.下列程序的輸出結(jié)果是【】。
main()
{inti;
for(i=1;i+1;i++)
{if(i>4)
{printf("%d\n",i);
break;}
printf("%d\n",i++);}}
39.一個(gè)類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個(gè)方法提高了軟件的【】。
40.______是數(shù)據(jù)庫(kù)應(yīng)用的核心。
三、1.選擇題(20題)41.關(guān)于結(jié)構(gòu)化程序設(shè)計(jì)原則和方法的描述錯(cuò)誤的是()。
A.選用的結(jié)構(gòu)只準(zhǔn)許有一個(gè)入口和一個(gè)出口
B.復(fù)雜結(jié)構(gòu)應(yīng)該用嵌套的基本控制結(jié)構(gòu)進(jìn)行組合嵌套來實(shí)現(xiàn)
C.不允許使用GOTO語(yǔ)句
D.語(yǔ)言中所沒有的控制結(jié)構(gòu),應(yīng)該采用前后一致的方法來模擬
42.下列關(guān)于棧的描述中錯(cuò)誤的是()
A.棧是先進(jìn)后出的線性表B.棧只能順序存儲(chǔ)C.棧具有記憶作用D.對(duì)棧的插入與刪除操作中,不需要改變棧底指針
43.下列程序的運(yùn)行結(jié)果是()。#include<stdio.h>main(){inta=2,b=3,c=4;if(a<B)if(b<0)c=0;elsec+=1;printf("%d\n",C);}
A.2B.3C.5D.4
44.“商品”與“顧客”兩個(gè)實(shí)體集之間的聯(lián)系一般是
A.一對(duì)一B.一對(duì)多C.多對(duì)一D.多對(duì)多
45.已定義下列函數(shù):intfun(int*p){return*p;)fun函數(shù)返回值是()。
A.不確定的值B.一個(gè)整數(shù)C.形參p中存放的值D.形參p的地址值
46.若有如下程序:sub(p,n)int(*p)[3],n;{inti;for(i=0;i<=n;i++)printf("%d",*(*(p+i)+n));}main(){ints[3][3]={1,2,3,4,5,6,7,8,9};sub(s,2);}則程序運(yùn)行后的輸出結(jié)果是()
A.369B.248C.456D.789
47.下面的程序在編澤時(shí)產(chǎn)生錯(cuò)誤,其出錯(cuò)原因是()。#include<stdio.h>main(){int1_case;floatprintF;printf("請(qǐng)輸入2個(gè)數(shù):");scanf("%d%f",&1_case,&printF);printf("%d%f\n",1_case,printF);}
A.定義語(yǔ)句出錯(cuò),1_case不能作為變量名
B.定義語(yǔ)句出錯(cuò),printF不能用作用戶自定義標(biāo)識(shí)符
C.定義語(yǔ)句無錯(cuò),scanf不能作為輸入函數(shù)使用
D.定義語(yǔ)句無錯(cuò),printf不能輸出1_case的值
48.在下列四條敘述中,正確的一條是()
A.在計(jì)算機(jī)中,漢字的區(qū)位碼就是機(jī)內(nèi)碼
B.在漢字國(guó)際碼GB2312-80的字符集中,共收集了6763個(gè)常用漢字
C.英文小寫字母e的ASCⅡ碼為101,英文小寫字母g的ASCⅡ碼為103
D.存放80個(gè)24×24點(diǎn)陣的漢字字模信息需要占用2560個(gè)字節(jié)
49.設(shè)變量已正確定義,則以下能正確計(jì)算n!的程序段是______。
A.f=0;for(i=1;i<=n;i++)f*=i;
B.f=1;for(i=1;i<n;i++)f*=i;
C.f=1;for(i=n;i>1;i++)f*=i;
D.f=1;for(i=n;i>=2;i--)f*=i;
50.下列工具中為需求分析常用工具的是()。
A.PADB.PFDC.N-SD.DFD
51.可以在C語(yǔ)言中用做用戶標(biāo)識(shí)符的是______。
A.voiddefineWORDB.as_b3_123IfC.for-abccasD.2cDoSIG
52.程序設(shè)計(jì)語(yǔ)言的基本成分是數(shù)據(jù)成分、運(yùn)算成分、控制成分和()。
A.對(duì)象成分B.變量成分C.語(yǔ)句成分D.傳輸成分
53.軟件危機(jī)是大型軟件開發(fā)中出現(xiàn)的現(xiàn)象,下列選項(xiàng)中的______是其主要表現(xiàn)。
①軟件生產(chǎn)的復(fù)雜性。
②軟件生產(chǎn)進(jìn)度無法控制。
③軟件生產(chǎn)高成本、無法控制。
④軟件需求定義不準(zhǔn)確。
A.全部B.②和③C.①、②和④D.②和④
54.有定義語(yǔ)句:chars[10];,若要從終端給s輸入5個(gè)字符,錯(cuò)誤的輸入語(yǔ)句是
A.gets(&s[0]);
B.scanf("%s",s+1);
C.gets(s);
D.scanf("%s",s[1]);
55.結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是
A.程序的規(guī)模B.程序的效率C.程序設(shè)計(jì)語(yǔ)言的先進(jìn)性D.程序易讀性
56.執(zhí)行語(yǔ)句for(i=1;i++<4;);后變量i的值是______。
A.3B.4C.5D.不定
57.執(zhí)行語(yǔ)句“for(n=10;n>0;)printf("%d",--n+n--);”后,下列說法正確的是()
A.循環(huán)體執(zhí)行了5次,最終n的值是-1
B.循環(huán)體執(zhí)行了6次,最終n的值是-1
C.循環(huán)體執(zhí)行了6次,最終n的值是0
D.循環(huán)體執(zhí)行了5次,最終n的值是0
58.有以下程序#include<stdio.h>main(){inta[]={1,2,3,4,5,6,7,8,9,10,11,12},*p=a+5,*q=NULL;*q=*(p+5);printf("%d%d\n",*p,*q);}程序運(yùn)行后的輸出結(jié)果是______。
A.運(yùn)行后報(bào)錯(cuò)B.66C.611D.510
59.若有以下定義:inta[]={1,2,3,4,5,6,7,8,9,10},*p=a;則值為3的表達(dá)式是()
A.p+=2,*(pd++)B.p+=2,*++pC.p+=3,*p++D.p+=2,++*p
60.以下選項(xiàng)中合法的C語(yǔ)言字符常量是
A.'\t'B.AC.67D.A
四、選擇題(20題)61.
62.以下選項(xiàng)中,與k=n++完全等價(jià)的表達(dá)式是A.k=n,n=n+1B.n=n+1,k=nC.k=++nD.k+=n+1
63.有以下程序段:
charname[20】;intnum;
scanf("name=%Snum=%d",name,&num);
當(dāng)執(zhí)行上述程序段,并從鍵盤輸入:name=Lilimum=1001<回車>后,name的值為()。
A.Lili
B.name=Lili
C.Lilinum=
D.name=Lilinum=1001
64.有以下程序
#include<string.h>
main()
{FILE*fp;
inti,k,n;
fp=fopen("data.dat","w+");
for(i=4;i<9;i++)
{fprintf(fp,"%d",i);
if(i%3==0)fprintf(fp,"\n");
}
rewind(fp);
fscanf(fp,"%d%d",&k,&n);
printf("%d%d\n",k,n);
fclose(fp);
}
程序的運(yùn)行結(jié)果是
A.00B.45
C.4578D.45678
65.已定義以下函數(shù):
fun函數(shù)的返回值是()。
A.一個(gè)整數(shù)B.不確定的值C.形參P中存放的值D.形參P的地址值
66.有三個(gè)關(guān)系R、S和T如下:
其中關(guān)系T由關(guān)系R和s通過某種操作得到,該操作為()。
A.選擇B.投影C.交D.井
67.樹是結(jié)點(diǎn)的集合,它的根結(jié)點(diǎn)數(shù)目是()。
A.有且只有1B.1或多于1C.0或1D.至少2
68.
69.
70.下列函數(shù)的功能是()
71.設(shè)有表示學(xué)生選課的三張表,學(xué)生s(學(xué)號(hào),姓名,性別,年齡,身份證號(hào)),課程c(課號(hào),課名),選課SC(學(xué)號(hào),課號(hào),成績(jī)),則表sc的關(guān)鍵字(鍵或碼)為()。
A.課號(hào),成績(jī)B.學(xué)號(hào),成績(jī)C.學(xué)號(hào),課號(hào)D.學(xué)號(hào),姓名,成績(jī)
72.下列敘述中錯(cuò)誤的是()。
A.一個(gè)C語(yǔ)言程序只能實(shí)現(xiàn)一種算法
B.c程序可以由多個(gè)程序文件組成
C.C程序可以由一個(gè)或多個(gè)函數(shù)組成
D.一個(gè)C函數(shù)可以單獨(dú)作為一個(gè)C稃序文件存存
73.
74.
75.數(shù)據(jù)庫(kù)DB、數(shù)據(jù)庫(kù)系統(tǒng)DBS、數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS之間的關(guān)系是()。
A.DB包含DBS和DBMSB.DBMS包含DB和DBSC.DBS包含DB和DBMSD.沒有任何關(guān)系
76.程序運(yùn)行后的輸出結(jié)果是()。A.Qian,f,350,Sun,f,350
B.Qiamf,350,Qian,f,350
C.Qian,f,350,Sun,m,370
D.Zha0,m,290,Sun,m,370
77.設(shè)有如下程序段:
則執(zhí)行P=s;語(yǔ)句后,以下敘述中正確的是()。
A.可以用*P表示s[O]
B.S數(shù)組中元素的個(gè)數(shù)和P所指字符串長(zhǎng)度相等
C.s和P都是指針變量
D.數(shù)組s中的內(nèi)容和指針變量P中的內(nèi)容相等
78.以下選項(xiàng)中關(guān)于程序模塊化的敘述錯(cuò)誤的是()。
A.可采用自底向上、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序
B.把程序分成若干相對(duì)獨(dú)立、功能單一的模塊,可便于重復(fù)使用這些模塊
C.把程序分成若干相對(duì)獨(dú)立的模塊,可便于編碼和調(diào)試
D.可采用自頂向下、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序
79.結(jié)構(gòu)化程序設(shè)計(jì)的三種結(jié)構(gòu)是()。
A.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、轉(zhuǎn)移結(jié)構(gòu)
B.分支結(jié)構(gòu)、等價(jià)結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
C.多分支結(jié)構(gòu)、賦值結(jié)構(gòu)、等價(jià)結(jié)構(gòu)
D.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
80.
五、程序改錯(cuò)題(1題)81.下列給定程序中,proc()函數(shù)的功能是:根據(jù)形參m,計(jì)算下列公式的值。t=1+1/2+1/3+1/4+…+1/m例如,若輸入10,則應(yīng)輸出2.928968。請(qǐng)修改程序中的錯(cuò)誤,使它能計(jì)算出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.下列程序定義了MM的二維數(shù)組,并在主函數(shù)中自動(dòng)賦值。請(qǐng)編寫函數(shù)proc(inta[][M]),該函數(shù)的功能是:使數(shù)組左下半三角元素中的值全部置成0。例如,a數(shù)組中的值為:
注意:部分源程序給出如下。
請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫的若干語(yǔ)句。
試題程序:
參考答案
1.C
2.A當(dāng)y為。時(shí),表達(dá)式y(tǒng)一才為假,循環(huán)結(jié)束,最終y的值為一l,所以答案選擇A)。
3.A
4.B
5.A通常,將軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過程稱為軟件生命周期。也就是說,軟件產(chǎn)品從考慮其概念開始,到該軟件產(chǎn)品不能使用為止的整個(gè)時(shí)期都屬于軟件生命周期。
6.A解析:選項(xiàng)A中(!a==1)&&(!b==0)→(!2==1)&&(!b==0)→(0==1)&&(!b==0)→0&&(!b==0)→0(&&右邊表達(dá)式(!b==0)被“短路”):選項(xiàng)B中(a<b)&&!c||1→(2<3)&&!4||1→1&&0||1→0||1→1;選項(xiàng)C中a&&b→2&&3→1;選項(xiàng)Da||b+b)&&(c-a)→2||(b+b)&&(c-a)→1(||右邊表達(dá)式(b+b)&&(c-a)被“短路”)。所以本題選A。
7.C解析:sort函數(shù)的功能實(shí)際上是對(duì)數(shù)組中奇數(shù)位置上的數(shù)進(jìn)行從大到小排序。排序后的結(jié)果應(yīng)該為9,2,7,4,5,6,3,8,1,10。
8.A
9.C
10.C子函數(shù)funl(doublea)的功能是返回a的平方值的整數(shù)部分。子函數(shù)fun2(doubleX,doubley)的功能是返回X的平方值的整數(shù)部分與Y的平方值的整數(shù)部分的和。又因?yàn)轭}中變量W的定義為double型,函數(shù)fun(2)的定義為int型,按照各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算,整型數(shù)據(jù)被轉(zhuǎn)換為實(shí)型數(shù)據(jù)。所以雙精度型變量w的值為5.0。
11.C在函數(shù)intfun(intx[],intn)的定義中,變量sum為一個(gè)靜態(tài)局部變量。由于在整個(gè)程序運(yùn)行期間,靜態(tài)局部變量在內(nèi)存中的靜態(tài)存儲(chǔ)中占據(jù)著永久的存儲(chǔ)單元。函數(shù)intfun(intx[],intn)的功能是求出數(shù)組x[]各個(gè)元素的和,所以在主函數(shù)中,調(diào)用函數(shù)fun(a,5)后,變量sum=1+2+3+4+5=15,當(dāng)再次調(diào)用fun(b,4)后,變量sum=15+6+7+8+9=45,所以s=15+45=60。
12.C
13.B字符串常量應(yīng)該用雙引號(hào)標(biāo)注,即“cd”,單引號(hào)標(biāo)注的單個(gè)字符表示字符常量,所以B選項(xiàng)中的表示方法錯(cuò)誤。故本題答案為B選項(xiàng)。
14.D
15.B
16.D解析:使用人工或自動(dòng)手段來運(yùn)行或測(cè)定某個(gè)系統(tǒng)的過程,其目的在于檢驗(yàn)它是否滿足規(guī)定的需求或是弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別。軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程。測(cè)試要以查找錯(cuò)誤為中心,而不是為了演示軟件的正確功能。
17.B在實(shí)際應(yīng)用中,隊(duì)列的順序存儲(chǔ)結(jié)構(gòu)一般采用循環(huán)隊(duì)列的形式。當(dāng)循環(huán)隊(duì)列為滿或者為空時(shí),隊(duì)尾指針=隊(duì)頭指針。本題答案為B選項(xiàng)。
18.B解析:本題主要考查結(jié)構(gòu)體和聯(lián)合內(nèi)存使用的區(qū)別:結(jié)構(gòu)中不同的成員分別使用不同的內(nèi)存空間,一個(gè)結(jié)構(gòu)所占內(nèi)存空間的大小是結(jié)構(gòu)中每個(gè)成員所占內(nèi)存空間大小的總和,結(jié)構(gòu)中每個(gè)成員相互獨(dú)立;聯(lián)合所占用的內(nèi)存空間為最長(zhǎng)的成員所占用的空間。
19.A其方法是將要?jiǎng)h除節(jié)點(diǎn)的上一個(gè)節(jié)點(diǎn)的next指向要?jiǎng)h除節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn),然后釋放將要?jiǎng)h除的節(jié)點(diǎn),所以選項(xiàng)A正確。故本題答案為A選項(xiàng)。
20.D
21.55解析:本題的關(guān)鍵在于if(!(i%5))printf('\\n),這句,即如果i可被5整除時(shí),則換行。i值為24,可以被5整除4次,并余4,因此,prnt函數(shù)共輸出5行,最后一行有4個(gè)數(shù)。
22.19
23.6868解析:本題考查如何用指針引用數(shù)組元素。本題先定義了一個(gè)指向字符型數(shù)組str的指針p,指針p指向數(shù)組str的首地址,p+3將指針指向str[3],*(p+3)指的是字符“D”,輸出時(shí)是以“%d”格式輸出的,即輸出其相應(yīng)ASCII碼值68。
24.str[i]str[i+1]"%s"strstr[i]\r\nstr[i+1]\r\n'%s',str解析:本題要求將字符串str中的字符用冒泡排序算法從大到小排列,其實(shí)現(xiàn)過程是將相鄰兩個(gè)字詞進(jìn)行比較,如果當(dāng)前字符小于下一個(gè)字符,則通過中間變量temp將字符兩兩交換,所以第一空應(yīng)填:str[i],第二空應(yīng)填:str[i+1]。最終打印輸出得到的字符串str,所以第三空應(yīng)填:'%s',str。
25.1212解析:本題考查逗號(hào)表達(dá)式的運(yùn)算規(guī)則。逗號(hào)表達(dá)式的基本格式為:“表達(dá)式1,表達(dá)式2,…”,其整個(gè)表達(dá)式的結(jié)果取最后一個(gè)子表達(dá)式的值。本題中首先計(jì)算逗號(hào)表達(dá)式中的第1個(gè)表達(dá)式a=2*3=6,然后計(jì)算第2個(gè)表達(dá)式a*2,這時(shí)整個(gè)表達(dá)式的值為12,但要注意,因?yàn)榈?個(gè)表達(dá)式并沒有給a賦值,因此a的值不變;接下來執(zhí)行最后一個(gè)表達(dá)式a+6=12,所以整個(gè)表達(dá)式最后的值為12。
26.123056009123\r\n05
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年衛(wèi)生保健考試試題及答案
- 2025年小學(xué)眼睛測(cè)試題及答案
- 2025年戰(zhàn)爭(zhēng)主題考試題及答案
- 2025年泰安市一模試題及答案
- 2025年奧拉星考試題及答案
- 2025年高二會(huì)考生物試題及答案
- 機(jī)電設(shè)備故障診斷與維修 第3版 課件 第2章 機(jī)械設(shè)備狀態(tài)監(jiān)測(cè)與故障診斷技術(shù)
- 2025年廚房管理考核試題及答案
- 2025年監(jiān)察局考試試題及答案
- 2025年師生路人測(cè)試題及答案
- 房屋市政工程生產(chǎn)安全重大事故隱患判定標(biāo)準(zhǔn)(2024版)危險(xiǎn)性較大的分部分項(xiàng)工程專項(xiàng)施工方案嚴(yán)重缺陷清單(試行)解讀
- 2025年包頭輕工職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫(kù)新版
- 2025年懷化師范高等??茖W(xué)校單招職業(yè)技能測(cè)試題庫(kù)帶答案
- 2025年湖北幼兒師范高等專科學(xué)校單招職業(yè)技能測(cè)試題庫(kù)含答案
- DeepSeek-V3技術(shù)報(bào)告(中文版)
- 政治-貴州省貴陽(yáng)市2025年高三年級(jí)適應(yīng)性考試(一)(貴陽(yáng)一模)試題和答案
- 公司副總經(jīng)理英文簡(jiǎn)歷
- 2025浙江杭州地鐵運(yùn)營(yíng)分公司校園招聘665人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 第一篇 專題一 第2講 牛頓運(yùn)動(dòng)定律與直線運(yùn)動(dòng)
- 規(guī)劃高中生涯模板
- 中國(guó)卒中學(xué)會(huì)急性缺血性卒中再灌注治療指南 (2024)解讀-指南解讀系列
評(píng)論
0/150
提交評(píng)論