![2021-2022年廣東省深圳市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)重點(diǎn)匯總測(cè)試卷(含答案)_第1頁](http://file4.renrendoc.com/view/b85dae2993717950b065ae2ed6c4cead/b85dae2993717950b065ae2ed6c4cead1.gif)
![2021-2022年廣東省深圳市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)重點(diǎn)匯總測(cè)試卷(含答案)_第2頁](http://file4.renrendoc.com/view/b85dae2993717950b065ae2ed6c4cead/b85dae2993717950b065ae2ed6c4cead2.gif)
![2021-2022年廣東省深圳市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)重點(diǎn)匯總測(cè)試卷(含答案)_第3頁](http://file4.renrendoc.com/view/b85dae2993717950b065ae2ed6c4cead/b85dae2993717950b065ae2ed6c4cead3.gif)
![2021-2022年廣東省深圳市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)重點(diǎn)匯總測(cè)試卷(含答案)_第4頁](http://file4.renrendoc.com/view/b85dae2993717950b065ae2ed6c4cead/b85dae2993717950b065ae2ed6c4cead4.gif)
![2021-2022年廣東省深圳市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)重點(diǎn)匯總測(cè)試卷(含答案)_第5頁](http://file4.renrendoc.com/view/b85dae2993717950b065ae2ed6c4cead/b85dae2993717950b065ae2ed6c4cead5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021-2022年廣東省深圳市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)重點(diǎn)匯總測(cè)試卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.一個(gè)順序棧一旦聲明,其占用空間的大小()。
A.已固定B.可以變動(dòng)C.不能固定D.動(dòng)態(tài)變化
2.在一個(gè)單鏈表HL中,若要在指針q所指結(jié)點(diǎn)的后面插入一個(gè)由指針p所指向的結(jié)點(diǎn),則執(zhí)行____。
A.q一>next=p一>next;p一>next=q;
B.q一>next=p一>next;p一>next=q;
C.p一>next=q一>next;q=p;
D.p一>next=q一>next;q一>next=p;
3.命令“DIRA:*.*/W”的功能是()
A.寬行顯示A盤當(dāng)前目錄的所有文件
B.寬行顯示A盤所有目錄的所有文件
C.寬行顯示A盤的所有目錄
D.顯示A盤中的文件名,每滿一屏后停頓一下
4.以下關(guān)于順序存儲(chǔ)結(jié)構(gòu)的敘述中,()是不正確的。
A.存儲(chǔ)密度大
B.邏輯上相鄰的結(jié)點(diǎn)物理上不必鄰接
C.可以通過計(jì)算機(jī)直接確定第i個(gè)結(jié)點(diǎn)的存儲(chǔ)地址
D.插入、刪除運(yùn)算操作不方便
5.程序中主函數(shù)的名字為()。
A.mainB.MAINC.MainD.任意標(biāo)識(shí)符
6.若ch為char型變量,k為int型變量(已知字符a的ASCII碼是97),則執(zhí)行下列語句后輸出的結(jié)果為()。
cb='b';
k=10;
printf("%X,%o,”,ch,ch,k);
printf("k=%%d\n",k);A.A.因變量類型與格式描述符的類型不匹配,輸出無定值
B.輸出項(xiàng)與格式描述符個(gè)數(shù)不符,輸出為0值或不定值
C.62,142,k=%d
D.62,142,k=%10
7.關(guān)于數(shù)組和指針,以下說法錯(cuò)誤的是()。
A.數(shù)組名本身就是一個(gè)指針,指向數(shù)組內(nèi)存的起始位置
B.既可以讀入數(shù)據(jù)到數(shù)組中,也可以讀入數(shù)據(jù)到未賦初值的指針中
C.可以將指針指向一個(gè)同類型的數(shù)組
D.指針可以指向同類型的數(shù)組中的任意一個(gè)元素
8.某二叉樹的先序序列和后序序列正好相同,則該二叉樹可能是______的二叉樹。
A.高度大于1的左單支B.高度大于1的右單支C.最多只有一個(gè)結(jié)點(diǎn)D.既有左孩子又有右孩子
9.以下不能定義為用戶標(biāo)識(shí)符的是()。
A.VoidB.scanfC.intD._3com_
10.若已定義x和y是整型變量,x=2;,則表達(dá)式y(tǒng)=2.75+x/2的值是()。
A.5.5B.5C.3D.4.0
11.下列哪個(gè)算法是對(duì)一個(gè)list排序的最快方法()
A.快速排序B.冒泡排序C.二分插入排序D.線性排序
12.在10000個(gè)int型變量中找出最大的100個(gè),使用下列排序算法中哪一種用時(shí)最快()
A.冒泡排序B.快速排序C.歸并排序D.堆排序
13.要求通過while循環(huán)不斷讀入字符,當(dāng)讀入字母N時(shí)結(jié)束循環(huán),若變量已正確定義,下列正確的程序段是()。
A.while((ch=getchar())!='N')printf("%c",ch);
B.while(ch=getchar()!='N')printf("%c",ch);
C.while(ch=getchar()=='N')printf("%c",ch);
D.while((ch=getchar())=='N')printf("%c",ch);
14.在一棵高度為5的理想平衡樹中,至少含有16個(gè)結(jié)點(diǎn),最多含有()個(gè)結(jié)點(diǎn)。
A.31B.32C.30D.33
15.以下程序的運(yùn)行結(jié)果是#defineMAX(A,B)(A)>(B)?(A):(B)#definePRINT(Y)printf("Y=%d\t",Y)main(){inta=1,b=2,c=3,d=4,t;t=MAX(a+b,c+d);PRINT(t);}
A.Y=3B.存在語法錯(cuò)誤C.Y=7D.Y=0
16.若在線性表中采用折半查找法查找元素,該線性表應(yīng)該()A.元素按值有序B.構(gòu)采用順序存儲(chǔ)結(jié)C.元素按值有序且采用順序存儲(chǔ)結(jié)構(gòu)D.元素按值有序且采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
17.
18.有以下程序
#include<stdio.h>
voidfun(intP)
{intd=2;
P=d++;printf(“%d”,P);}
main()
{inta=1;
fun(A);prinff(“%.d\n”,A);}
程序運(yùn)行后的輸出結(jié)果是A.32B.12C.21D.22
19.以下選項(xiàng)中的表達(dá)式調(diào)用庫函數(shù)依次求-4.5的絕對(duì)值、-4.0的平方根值、30°角的正弦值和2的3次方值。正確的調(diào)用是()
A.abs(-4.5)B.sqrt(-4.0)C.sin(3.1416/6.0)D.paw(2.0,3.0)
20.設(shè)有定義“intx,y,z;”,且各變量已經(jīng)賦正整數(shù)值,則以下能正確表示代數(shù)式“”的C語言表達(dá)式是()。
A.1.0/x/y/zB.1/x*y*zC.1/(x*y*z)D.1/x/y/(double)z
二、2.填空題(20題)21.棧和隊(duì)列通常采用的存儲(chǔ)結(jié)構(gòu)是【】。
22.以下程序中,函數(shù)SumColumMin的功能是:求出M行N列二維數(shù)組每列元素中的最小值,并計(jì)算它們的和值,和值通過形參傳回主函數(shù)輸出。請(qǐng)?zhí)羁眨?/p>
#include<stdio.h>
#defineM2
#defineN4
voidSumColumMin(inta[M][N],int*sum)
{inti,j,k,s=0;
for(i=0;i<N;i++)
k=O;
for(j=1;j<M;j++)
if(a[k][i]>a[j][i])k=j;
s+:【】;
}
【】=s;
}
main()
{intx[M][N]={3,2,5,1,4,1,8,3},s;
SumColumMin(【】);
printf("%d\n",s);
}
23.將以下程序?qū)懗扇窟\(yùn)算表達(dá)式是【】。
if(a>b)max=a;
elsemax=b;
24.以下程序的輸出結(jié)果是【】。
main()
{char*p[]={"BOOL","OPK","H","SP"};
inti;
for(i=3;i>0;i--,i--)printf("%c",*p[i]);
printf("\n");}
25.結(jié)構(gòu)化程序設(shè)計(jì)的3種基本結(jié)構(gòu)分別是順序、選擇和______。
26.【】是數(shù)據(jù)庫設(shè)計(jì)的核心。
27.若有定義語句chars[100],d[100];intj=0,i==0;且s中已賦字符串,請(qǐng)?zhí)羁找詫?shí)現(xiàn)拷貝。(注:不使用逗號(hào)表達(dá)式)
while(s[i]=【】;j++;}
d[j]=0;
28.軟件危機(jī)出現(xiàn)于60年代末,為了解決軟件危機(jī),人們提出了【】的原理來設(shè)計(jì)軟件,這就是軟件工程誕生的基礎(chǔ)。
29.“printf("%d\n",strlen("\t\"\023\xAB\nC"));”語句的輸出結(jié)果是()。
30.若有定義inta=10,b=9,c=8;,接著順序執(zhí)行下列語句,變量b中的值是【】。
c=(a-=(b-5));
c=(a%11)+(b=3);
31.數(shù)據(jù)流圖的類型有【】和事務(wù)型。
32.Jackson方法是一種面向【】的結(jié)構(gòu)化方法。
33.以下程序的輸出是【】。
main()
{
charstr1[]="Howdoyoudo",*p1=str1;
strcpy(str1+strlen(str1)/2,"esshe");
printf("%s\n",p1);
}
34.下列程序段的運(yùn)行結(jié)果是______。
intx=0,y=0;
while(x<15)y++,x+=++y;
printf("%d,%d",y,x);
35.下面程序的輸出是【】。
main()
{enumem{em1=3,em2=1,em3};
char*aa[]={"AA","BB","CC","DD"};
printf("%s%s%s\n",aa[em1],aa[em2],aa[em3]);
}
36.一個(gè)類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個(gè)方法提高了軟件的【】。
37.設(shè)x、y、z均為int型變量,請(qǐng)寫出描述"x或y中至少有一個(gè)小于z"的表達(dá)式______。
38.若有程序
main()
{inti,j;
scanf("i=%d,j=%d",&i,&j);
pfintf("i=%d,j=%d\n",i,j);
}
要求給i賦10,給j賦20,則應(yīng)該從鍵盤輸入【】。
39.數(shù)據(jù)庫技術(shù)的主要特點(diǎn)為數(shù)據(jù)的集成性、數(shù)據(jù)的高【】和低冗余性、數(shù)據(jù)獨(dú)立性和數(shù)據(jù)統(tǒng)—管理與控制。
40.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{charm;
m='B'+32;printf("%c\n",m);
三、1.選擇題(20題)41.以下程序的輸出結(jié)果是______。main(){inti,k,a[10],p[3];k=5;for(i=0;i<10;i++)a[i]=i;for(i=0;i<3;i++)p[i]=a[i*(i+1)];for(i=0;i<3;i++)k+=p[i]*2;printf("%d\n",k);}
A.20B.21C.22D.23
42.以下程序的輸出結(jié)果是main(){inta=4,b=5,c=0,d;d=!a&&!b||!c;printf("%d\n",d);}
A.1B.0C.非0的數(shù)D.-1
43.下列敘述中正確的是A.線性表是線性結(jié)構(gòu)B.棧與隊(duì)列是非線性結(jié)構(gòu)C.線性鏈表是非線性結(jié)構(gòu)D.二叉樹是線性結(jié)構(gòu)
44.有以下程序main(){intc=35;printf("%d\n”,c&c);}程序運(yùn)行后的輸出結(jié)果是______。
A.0B.70C.35D.1
45.下列程序的輸出結(jié)果是()。#include<stdio.h>voidmain(){inta=0,b=1,C=2;if(++a>0||++b>0)++c;printf("%d,%d,%d",a,b,C);}
A.0,1,2B.1,2,3C.1,1,3D.1,2,2
46.結(jié)構(gòu)化分析方法是面向()的自頂向下、逐步求精進(jìn)行需求分析的方法
A.對(duì)象B.數(shù)據(jù)結(jié)構(gòu)C.數(shù)據(jù)流D.目標(biāo)
47.下列選項(xiàng)中C語言中不合法的字符串常量的是
A.\121B.′y′C.\n\nD.ABCD\x6d
48.下列敘述中正確的是()。A.用E-R圖能夠表示實(shí)體集之間一對(duì)一的聯(lián)系、一對(duì)多的聯(lián)系、多對(duì)多的聯(lián)系
B.用E-R圖只能表示實(shí)體集之間一對(duì)一的聯(lián)系
C.用E-R圖只能表示實(shí)體集之間一對(duì)多的聯(lián)系
D.用E-R圖表示的概念數(shù)據(jù)模型只能轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型
49.下列程序的運(yùn)行結(jié)果是()。#include<stdio.h>#defineADD(x)x+xmain(){intm=1,n=2,k=3;ints=ADD(m+n)*k;printf("s=%d",s);}
A.sum=18B.sum=10C.sum=9D.sum=25
50.設(shè)有以下說明語句typedefstruct{intn;charch[8];}PER;則下面敘述中正確的是
A.PER是結(jié)構(gòu)體變量名
B.PER是結(jié)構(gòu)體類型名
C.typedefstruct是結(jié)構(gòu)體類型
D.struct是結(jié)構(gòu)體類型名
51.若有定義intw[3][5];,則以下不能正確表示該數(shù)組元素的表達(dá)式是A.*(*w+3)B.*(*w+1)[4]C.*(*(*w+1))D.*(&w[0][0]+1)
52.下面的程序段運(yùn)行后,輸出結(jié)果是
inti,j,x=0;
staticinta[8][8];
for(i=0;i<3;i++)
for(j=0;j<3;j++)
a[i][j]=2*i+j;
for(i=0;i<8;i++)
x+=a[i][j];
printf("%d",x);
A.9B.不確定值C.0D.18
53.有以下程序:#include<stdio.h>main(){FILE*fp;inti,k=0,n=0;fp=fopen("d1.dat","w");for(i=1;i<4;i++)fprintf(fp,"%d",i);fclose(fp);fp=fopen("d1.dat","r");fscanf(fp,"%d%d",&k,&n);printf("%d%d\n",k,n);fclose(fp);}執(zhí)行后輸出結(jié)果是()。
A.12B.1230C.123D.00
54.整型變量X和Y的值相等,且為非0值,則以下選項(xiàng)中結(jié)果為0的表達(dá)是______。
A.X||YB.X|YC.X&YD.XY
55.軟件開發(fā)模型包括Ⅰ、瀑布模型Ⅱ、扇形模型Ⅲ、快速原型法模型Ⅳ、螺旋模型
A.Ⅰ、Ⅱ、ⅢB.Ⅰ、Ⅱ、ⅣC.Ⅰ、Ⅲ、ⅣD.Ⅱ、Ⅲ、Ⅳ
56.從工程管理角度,軟件設(shè)計(jì)一般分為兩步完成,它們是()。
A.概要設(shè)計(jì)與詳細(xì)設(shè)計(jì)B.數(shù)據(jù)設(shè)計(jì)與接口設(shè)計(jì)C.軟件結(jié)構(gòu)設(shè)計(jì)與數(shù)據(jù)設(shè)計(jì)D.過程設(shè)計(jì)與數(shù)據(jù)設(shè)計(jì)
57.下列選項(xiàng)中非法的表達(dá)式是________。
A.0<=x<100B.i=j==0C.(char)(65+3)D.x+1=x+1
58.以下程序運(yùn)行時(shí)若要正確輸出函數(shù)的入口地址和輸入數(shù)的絕對(duì)值,應(yīng)在程序空缺處填入的正確選項(xiàng)是()。abs(intx){if(x>=0)returnx:elsereturn-x;}main(){inty,z,(*p)(intx)=abs;scanf("%d",&y);z=(*p)(y);______;}
A.printf("%d%d\n",&p,z)
B.printf("%d%d\n",p,z)
C.printf("%d%d\n",*p,z)
D.Printf("%d%d\n",p,*z)
59.有以下程序:mam(){inti=10,j=1;printf("%d,%d\n",i--,++j);}執(zhí)行后輸出的結(jié)果是()。
A.9,2B.10,2C.9,1D.10,1
60.以下敘述中正確的是()。
A.局部變量說明為static存儲(chǔ)類,其生存期將得到延長(zhǎng)
B.全局變量說明為static存儲(chǔ)類,其作用域?qū)⒈粩U(kuò)大
C.任何存儲(chǔ)類的變量在未賦初值時(shí),其值都是不確定的
D.形參可以使用的存儲(chǔ)類說明符與局部變量完全相同
四、選擇題(20題)61.在面向?qū)ο蠓椒ㄖ校?)描述的是具有相似屬性與操作的一組對(duì)象。
A.屬性B.事件C.方法D.類
62.
63.
64.若有定義語句:A.1B.1.9C.2D.2.4
65.
66.34.有以下程序
#include<stdio.h>
unionpw
{inti;
charch[2];
}a;
main()
{a.ch[0]=13;a.ch[1]=0;
printf("%d\n",a.i);
}
程序的輸出結(jié)果是
A.13B.14
C.0D.20
67.有以下程序:
程序的運(yùn)行結(jié)果是()。
A.Qian,f,95,92
B.Qian,m,85,90
C.Zhao,f,95,92
D.Zhao,m,85,90
68.有以下程序,若從鍵盤上輸入7和3
main()
{inta,b,k;
scanf("%d,%d",&a,&b);
k=a;
if(a<b)k=a%b;
elsek=b%a;
printf("%d\n",k);
}
程序運(yùn)行后的輸出結(jié)果是
A.7B.3
C.1D.0
69.有以下程序
#include<stdio.h>
voidfun(intx)
{if(x/2>1)fun(x/2);
printf("%d",x);
}
main
{fun(7);printf("\n");}
程序運(yùn)行后的輸出結(jié)果是()。
A.137B.731C.73D.37
70.
71.若有定義語句:intm[]={1,2,3,4,5},i=4;,則下面對(duì)m數(shù)組元素的引用中錯(cuò)誤的是
A.m[++i]B.m[1*2]
C.m[m[0]]D.m[m[--i]]
72.以下關(guān)于簡(jiǎn)單程序設(shè)計(jì)的步驟和順序的說法中正確的是()。
A.確定算法后,整理并寫出文檔,最后進(jìn)行編碼和上機(jī)調(diào)試
B.首先確定數(shù)據(jù)結(jié)構(gòu),然后確定算法,再編碼,并上機(jī)調(diào)試,最后整理文檔
C.先編碼和上機(jī)調(diào)試,在編碼過程中確定算法和數(shù)據(jù)結(jié)構(gòu),最后整理文檔
D.先寫好文檔,再根據(jù)文檔進(jìn)行編碼和上機(jī)調(diào)試,最后確定算法和數(shù)據(jù)結(jié)構(gòu)
73.
74.(17)軟件需求分析階段的工作,可以分為四個(gè)方面:需求獲取、需求分析、編寫需求規(guī)格說明書以及()
A.階段性報(bào)告
B.需求評(píng)審
C.總結(jié)
D.都不正確
75.有以下程序:
運(yùn)行后的輸出結(jié)果是()。
A.MtemoonB.AftemoonC.MorningD.orning
76.在黑盒測(cè)試方法中,設(shè)計(jì)測(cè)試用例的主要根據(jù)是()。
A.程序內(nèi)部邏輯B.程序外部功能C.程序數(shù)據(jù)結(jié)構(gòu)D.程序流程圖
77.以下關(guān)于結(jié)構(gòu)化程序設(shè)計(jì)的敘述中正確的是()。
A.一個(gè)結(jié)構(gòu)化程序必須同時(shí)由順序、分支、循環(huán)三種結(jié)構(gòu)組成
B.結(jié)構(gòu)化程序使用goto語句會(huì)很便捷
C.在C語言中,程序的模塊化是利用函數(shù)實(shí)現(xiàn)的
D.由三種基本結(jié)構(gòu)構(gòu)成的程序只能解決小規(guī)模的問題
78.
79.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.1B.2C.3D.4
80.下列程序的輸出結(jié)果是()。
#include<stdio.h>
main()
{inti,s=0;
for(i=1;i<10;i++)
if(!(i%2)&&!(i%3))s+=i;
printf("%d\n",s);
}A.4B.39C.45D.6
五、程序改錯(cuò)題(1題)81.程序改錯(cuò)題(共l8分)下列給定程序中,函數(shù)fun的功能是:傳人一個(gè)整數(shù)m,計(jì)算如下公式的值。例如,若輸入5,則應(yīng)輸出一0.283333。請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!試題程序:
六、程序設(shè)計(jì)題(1題)82.學(xué)生的記錄由學(xué)號(hào)和成績(jī)組成,M名學(xué)生的數(shù)據(jù)已在主函數(shù)中放人結(jié)構(gòu)體數(shù)組stu中,請(qǐng)編寫函數(shù)proc(),其功能是:按分?jǐn)?shù)的高低排列學(xué)生的記錄,高分在前。注意:部分源程序給m如下。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫的若干語句。試題程序:
參考答案
1.A
2.D
3.A
4.B
5.A
6.C第1個(gè)printf函數(shù),格式說明的個(gè)數(shù)是2,而輸出項(xiàng)的個(gè)數(shù)是3,所以對(duì)于多余的輸出項(xiàng)k不予輸出;第2個(gè)printf函數(shù),有兩個(gè)%說明,第1個(gè)%后面的字符要原樣輸出。本題考查printf函數(shù)的格式。①“%x”和“%0”分別表示以十六進(jìn)制和八進(jìn)制無符合型輸出整型數(shù)據(jù)(不帶前導(dǎo)ox或0);②printf函數(shù)中格式說明符之前插入的任何字符都原樣輸出;③格式說明與輸出項(xiàng)的個(gè)數(shù),也要相等,如果格式說明的個(gè)數(shù)少于輸出項(xiàng)的個(gè)數(shù),則對(duì)于多余的輸出項(xiàng)不予輸出。
7.BC語言中,數(shù)組名本身就是一個(gè)指針,指向數(shù)組內(nèi)存的起始位置,選項(xiàng)A正確;已經(jīng)定義的數(shù)組被分配了內(nèi)存空間,所以可以讀入數(shù)據(jù)到數(shù)組中,未賦初值的指針沒有分配內(nèi)存空間,不可以讀入數(shù)據(jù),選項(xiàng)B錯(cuò)誤;可以將指針指向一個(gè)同類型的數(shù)組,選項(xiàng)C正確;指針指向一個(gè)數(shù)組后,可以通過移動(dòng)指針,指向該數(shù)組中的任意一個(gè)元素,選項(xiàng)D正確。故本題答案為B選項(xiàng)。
8.C
9.C標(biāo)識(shí)符的命名可以由字母、數(shù)字或下劃線組成,并且第1個(gè)字符必須為字母或下劃線,另外用戶標(biāo)識(shí)符不能使用關(guān)鍵字。選項(xiàng)A中的Void可以定義為用戶標(biāo)識(shí)符,因?yàn)镃語言對(duì)大小寫敏感,Void與關(guān)鍵字void屬于不同的標(biāo)識(shí)符;選項(xiàng)B中的scanf是庫函數(shù)名,屬于預(yù)定義標(biāo)識(shí)符,它也可以作為用戶標(biāo)識(shí)符使用,不過通常不建議這么使用;選項(xiàng)C中的int屬于關(guān)鍵字,錯(cuò)誤;選項(xiàng)D符合標(biāo)識(shí)符的命名規(guī)則,也不屬于關(guān)鍵字,可以作為標(biāo)識(shí)符使用。本題答案為C選項(xiàng)。
10.C
11.A
12.B
13.A解析:while循環(huán)的執(zhí)行過程如下:(1)計(jì)算while后面圓括號(hào)中表達(dá)式的值.當(dāng)值為非0時(shí),執(zhí)行步驟(2);當(dāng)值為0時(shí),執(zhí)行步驟(4)。(2)執(zhí)行循環(huán)體一次。(3)轉(zhuǎn)去執(zhí)行步驟(1)。(4)退出循環(huán)。在選項(xiàng)A)中,表達(dá)式(ch=getchar())!='N'表示輸入的字符不等于N,如果這個(gè)條件表達(dá)式成立,則執(zhí)行循環(huán)體,打印輸出輸入的字符。如果這個(gè)條件表達(dá)式不成立,即輸入的字符等于N,則退出循環(huán).所以選項(xiàng)A)為正確答案。
14.A
15.C解析:宏替換不像函數(shù)調(diào)用要進(jìn)行參數(shù)值的計(jì)算、傳遞等,而只是簡(jiǎn)單按照原格式進(jìn)行字符串的替換。注意:宏定義的命令格式。
16.C
17.C
18.C程序運(yùn)行后,首先輸出的是p的值,然后再輸出a的值。p=d++,得到p的值為d的初始值2;a的值不變,仍為1。
19.C
20.A代數(shù)式“”的結(jié)果為小數(shù),轉(zhuǎn)為C語言的表達(dá)式必須是浮點(diǎn)數(shù)。A選項(xiàng)由于1.0為浮點(diǎn)數(shù),計(jì)算結(jié)果自動(dòng)轉(zhuǎn)換為浮點(diǎn)數(shù)。選項(xiàng)B、C、D的表達(dá)式均為0,因此只有選項(xiàng)A正確。故本題答案為A選項(xiàng)。
21.鏈?zhǔn)酱鎯?chǔ)和順序存儲(chǔ)鏈?zhǔn)酱鎯?chǔ)和順序存儲(chǔ)
22.a[k][i]*sumx&sa[k][i]\r\n*sum\r\nx,&s解析:程序段for(j=1;j<M;j++)if(a[k][i]>a[j][i]))k=j;是找出第i列的最小值,第一處應(yīng)該是每列最小值累加,所以填a[k][i];和值要通過形參傳回主函數(shù),第二處應(yīng)該填*sum;根據(jù)形參可以確定第三處應(yīng)該填x,&s。
23.max=(a>b)?a:b;max=(a>b)?a:b;解析:本題考查三目運(yùn)算符的用法,條件運(yùn)算符要求有三個(gè)操作對(duì)象,稱三目(元)運(yùn)算符,它是C語言中惟一的一個(gè)三目運(yùn)算符。條件表達(dá)式的一般形式為:表達(dá)式1?表達(dá)式2:表達(dá)式3所以,我們可以寫成(a,b)?a:b,它是一個(gè)“條件表達(dá)式”。執(zhí)行順序是:如果(a>b)條件為真,則條件表達(dá)式取值a,否則取值b。注意:逗號(hào)表達(dá)式的執(zhí)行原理。
24.SOSO解析:考查用指針引用字符串?dāng)?shù)組中元素的方法。題中需要注意兩個(gè)問題:一是for循環(huán)的修正表達(dá)式共執(zhí)行兩次'i--'操作;二是*p[i]是對(duì)某個(gè)字符的引用。
25.重復(fù)(循環(huán))重復(fù)(循環(huán))解析:結(jié)構(gòu)化程序設(shè)計(jì)包括3種基本的結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)和重復(fù)結(jié)構(gòu)(循環(huán)結(jié)構(gòu)),利用這3種結(jié)構(gòu)就足以表達(dá)出各種其他形式結(jié)構(gòu)的程序設(shè)計(jì)方法。其中利用循環(huán)結(jié)構(gòu),可以簡(jiǎn)化大量的程序執(zhí)行。
26.數(shù)據(jù)模型數(shù)據(jù)模型
27.s[i++]s[i++]解析:本題中為了能實(shí)現(xiàn)字符串的拷貝,需要使字符數(shù)組s從頭到尾依次遍歷其所有元素。本題應(yīng)使用i的自增后置來實(shí)現(xiàn)。
28.軟件工程學(xué)軟件工程學(xué)
29.66解析:strlen()函數(shù)的作用是計(jì)算字符串的長(zhǎng)度并作為函數(shù)的返回值,這里的長(zhǎng)度不包括串尾的結(jié)束標(biāo)志\'\\0\'。\'\\t\'是轉(zhuǎn)義字符,代表橫向跳若干格;\'\\'\'是轉(zhuǎn)義字符,代表雙引號(hào):\'\\023\'也只代表一個(gè)字符,而不管轉(zhuǎn)義字符后面有幾個(gè)符;\'\\xAB\'是以兩位十六進(jìn)制數(shù)AB表示的ASCII碼字符,只代表一個(gè)字符;\'\\n\'是轉(zhuǎn)義字符,代表回車換行。題中語句中的字符串有5個(gè)字符常量各代表一個(gè)字符,再加上字母C,所以返回的長(zhǎng)度是6。
30.33解析:這里:b-5=4,a-=4之后a的值為6,并把它賦給c。此時(shí)b的值并未被改變。在第2個(gè)表達(dá)式中,也只有賦值表達(dá)式b=3改變了b的值。所以兩行語句執(zhí)行完畢,b的值應(yīng)該為3。
31.變換型典型的數(shù)據(jù)流類型有兩種:變換型和事務(wù)型。變換型是指信息沿輸入通路進(jìn)入系統(tǒng),同時(shí)由外部形式變換成內(nèi)部形式,進(jìn)入系統(tǒng)的信息通過變換中心,經(jīng)加工處理以后再沿輸出通路變換成外部形式離開軟件系統(tǒng);在很多軟件應(yīng)用中,存在某種作業(yè)數(shù)據(jù)流,它可以引發(fā)一個(gè)或多個(gè)處理,這些處理能夠完成該作業(yè)要求的功能,這種數(shù)據(jù)流就叫做事務(wù)。
32.數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)解析:Jackson方法是—‘種面向數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)化方法。
33.HowdoessheHowdoesshe解析:strcpy(str1,s1);字符串拷貝函數(shù),作用是將字符串s1拷貝到字符數(shù)組strl中去。strlen(str):測(cè)試字符串str的長(zhǎng)度,函數(shù)的值為字符串中實(shí)際長(zhǎng)度,不包括\'\\0\'在內(nèi)。本題中strlen(str1)的值為13,則strcpy(strl+strlen(strl)/2,'esshe');相當(dāng)于strcpy(strl+6,'esshe');,因此可得答案為Howdoesshe
34.8208,20解析:本題考查while循環(huán)和++運(yùn)算符的運(yùn)用。x=0符合條件x<15,則執(zhí)行y++,x+=++y后,y=1,x=0+2=2后y=2,符合條件繼續(xù)循環(huán),y=3,x=x+4=6后y=4,再循環(huán)y=5,x=x+6=6+6=12后,y=6,繼續(xù)循環(huán)y=7,x=x+8=12+8-20,此時(shí)y=8。
35.DDBBCCDDBBCC解析:C語言對(duì)枚舉的定義規(guī)定:在枚舉中聲明的各個(gè)枚舉元素,如果沒有明確指出某個(gè)枚舉元素的值,它的上一個(gè)元素存在并有明確值的情況下,這個(gè)枚舉元素的值為其上一個(gè)元素的值+1。在本題中,沒有明確說明枚舉元素em3的值,則em3=em2+1=1+1=2,進(jìn)而可知,在printf()打印函數(shù)中,要打印的數(shù)組元素是aa[3]、aa[1]、aa[2],因此最后的打印結(jié)果應(yīng)當(dāng)為“DDBBCC”。
36.可重用性繼承的優(yōu)點(diǎn):相似的對(duì)象可以共享程序代碼和數(shù)據(jù)結(jié)構(gòu),從而大大減少了程序中的冗余,提高軟件的可重用性。
37.X<Z||y<zX<Z||y<z解析:本題考查邏輯運(yùn)算符和邏輯表達(dá)式。x或y中至少有一個(gè)小于z,即X<Z或y<z,是“或”的關(guān)系。
38.i=0j=20i=0,j=20解析:scanf()函數(shù)的使用,該函數(shù)的第一個(gè)參數(shù)是格式字符串,主要由兩類字符組成,一類是非格式符要求原樣輸入,一類是格式符對(duì)應(yīng)要輸入的變量,所以說本題中應(yīng)該原樣輸入i=,j=,后面分別給變量0和20,所以說空格處應(yīng)該填入i=0,j=20。
39.共享性共享性解析:數(shù)據(jù)庫技術(shù)的主要特點(diǎn)有以下幾個(gè)方面:數(shù)據(jù)的集成性,數(shù)據(jù)的高共享性與低冗余性,數(shù)據(jù)的獨(dú)立性,數(shù)據(jù)統(tǒng)—管理與控制。
40.bb解析:在ASCII碼表中,至少有3個(gè)值考生得記?。?,0,的ASCII碼為48;‘A’的ASCII碼為65;‘a(chǎn)’的ASCII碼為97。因?yàn)橛涀∵@3個(gè)后,其他字母和數(shù)字的ASCII碼就可以很容易推出來了。本題中,“B”的ASCII碼為‘A’+1=66,所以,字符類型m的ASCII為66+32=98=97+1=‘a(chǎn)’+1,所以最后輸出的結(jié)果為字符‘b’。
41.B解析:第1個(gè)循環(huán)對(duì)數(shù)組a進(jìn)行賦值:第2個(gè)循環(huán)對(duì)數(shù)組p進(jìn)行賦值;第3個(gè)循環(huán)對(duì)k進(jìn)行累加,k的初值等于5,第1次循環(huán),k=k+p[0]*2=5+0*2=5,第2次循環(huán),k=k+p[1]*2=5+2*2=9,第3次循環(huán),k=k+p[2]*2=9+6*2=21并輸出。
42.A解析:本題考核的知識(shí)點(diǎn)是邏輯運(yùn)算符的運(yùn)用。由于單目運(yùn)算符優(yōu)先級(jí)高于“&&”和“‖”、運(yùn)算,所以先計(jì)算!a、!b和!c分別為“假”、“假”、“真”,然后是&&運(yùn)算和“‖”運(yùn)算,原表達(dá)式就等價(jià)于“假”&&“假”‖“真”又由于“&&”的優(yōu)先級(jí)高于“‖”運(yùn)算符,所以先計(jì)算“假”&&“假”,還是為假,最后是“假”‖,“真”為真。因此最后d被賦值為1,故最后輸出為1。所以,4個(gè)選項(xiàng)中A為所選。
43.A根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間前后件關(guān)系的復(fù)雜程度,一般將數(shù)據(jù)結(jié)構(gòu)分為兩大類型:線性結(jié)構(gòu)與非線性結(jié)構(gòu)。如果一個(gè)非空的數(shù)據(jù)結(jié)構(gòu)滿足下列兩個(gè)條件:1,有且只有一根節(jié)結(jié)點(diǎn),2,每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件,則稱該數(shù)據(jù)結(jié)構(gòu)為線性結(jié)構(gòu),又稱線性表。所以線性表、棧與隊(duì)列、線性鏈表都是線性結(jié)構(gòu),而二叉樹是非線性結(jié)構(gòu)。
44.C解析:本題考查的是對(duì)位與運(yùn)算符&的理解。位與運(yùn)算是將兩個(gè)運(yùn)算分量看作兩個(gè)二進(jìn)制數(shù),然后對(duì)兩個(gè)二進(jìn)制數(shù)的相應(yīng)位進(jìn)行與運(yùn)算,若同時(shí)為1則結(jié)果相應(yīng)位為1,否則結(jié)果相應(yīng)位為0。因此,當(dāng)兩個(gè)運(yùn)算分量相同時(shí),它們的相應(yīng)位肯定也相同,即不同為1就同為0。所以得到的結(jié)果和運(yùn)算分量也相同。所以,4個(gè)選項(xiàng)中選項(xiàng)C)符合題意。
45.C解析:本題考查if語句。先判斷if語句的條件是否成立,++a->0,此條件成立,又因?yàn)槭沁M(jìn)行邏輯或運(yùn)算,在己知其中一個(gè)運(yùn)算對(duì)象為真的情況下,不必判斷另外一個(gè)運(yùn)算符的真假,即不進(jìn)行++b操作,就可以直接得出整個(gè)表達(dá)式的值為邏輯1,執(zhí)行下列的++c。
46.CC?!窘馕觥拷Y(jié)構(gòu)化分析方法是面向數(shù)據(jù)流進(jìn)行需求分析的方法,采用自頂向下、逐層分解,建立系統(tǒng)的處理流程,以數(shù)據(jù)流圖和數(shù)據(jù)字典為主要工具,建立系統(tǒng)的邏輯模型。
47.B解析:字符串常量是由雙引號(hào)括起來的一串字符,其中的雙引號(hào)不可缺少。由此可知,選項(xiàng)A)、C)、D)都是合法的字符串常量,而選B)是一個(gè)字符常量。
48.A解析:用E-R圖可以簡(jiǎn)單明了地描述實(shí)體及其相互之間的聯(lián)系,用E-R圖還可以方便地描述多個(gè)實(shí)體集之間的聯(lián)系和一個(gè)實(shí)體集內(nèi)部實(shí)體之間的聯(lián)系。因此,選項(xiàng)A中的說法是正確的,而選項(xiàng)B與C中的說法都是錯(cuò)誤的。
為了建立用戶所要求的數(shù)據(jù)庫.必須把概念結(jié)構(gòu)(用E-R圖表示的概念數(shù)據(jù)模型)轉(zhuǎn)換為某個(gè)具體的數(shù)據(jù)庫管理系統(tǒng)所支持的數(shù)據(jù)模型,這就是邏輯結(jié)構(gòu)設(shè)計(jì)所要完成的任務(wù)。
在已給定數(shù)據(jù)庫管理系統(tǒng)的情況下,數(shù)據(jù)庫的邏輯設(shè)計(jì)可以分兩步來進(jìn)行:
①將概念模型轉(zhuǎn)換成一般的數(shù)據(jù)模型;
②將一般的數(shù)據(jù)模型轉(zhuǎn)換為特定的數(shù)據(jù)庫管理系統(tǒng)所支持的數(shù)據(jù)模型。
由此可知,用E-R圖表示的概念數(shù)據(jù)模型不僅能轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型,還可以轉(zhuǎn)換為其他數(shù)據(jù)模型,如網(wǎng)狀模型和層次模型等。因此,選項(xiàng)D中的說法也是錯(cuò)誤的。
49.B解析:本題考查帶參數(shù)的宏的定義及相關(guān)運(yùn)算:S=m+n+m+n*k=1+2+1+2*3=10。
50.B解析:本題中,typedef聲明新的類型名PER來代替已有的類型名,PER代表上面指定的一個(gè)結(jié)構(gòu)體類型,此時(shí),也可以用PER來定義變量。
51.C在C語言中,二維數(shù)組的名字表示的是二維數(shù)組的地址,表達(dá)式*(W+1)表示的是二維數(shù)組的第一行的第二個(gè)元素。在其前面再加上*(*(w+1))就是錯(cuò)誤的表達(dá)式。
52.C解析:本題主要考查的是用二維數(shù)組首地址和下標(biāo)來引用二維數(shù)組元素的方法。通過分析可知,程序中的雙重循環(huán)定義了一個(gè)如下的二維數(shù)組:
012
234
456
由于數(shù)組的下標(biāo)是從0開始的,所以二維數(shù)組元素a[i][j]表示的是二維數(shù)組a的第i+1行、第j+1列對(duì)應(yīng)位置的元素。
53.B解析:函數(shù)fopen(constchar*filename,constchar*mode)的功能,是以mode指定的模式打開filename指定的磁盤文件;fclose(FILE*fp)的功能是關(guān)閉文件指針fp指向的文件;函數(shù)fscanf(FILE*fp,constchar*format[,address,--])的功能是根據(jù)format中的格式從fP指向的文件中讀取數(shù)據(jù),并存入到相應(yīng)的address指向的變量中。函數(shù)fprintf(FILE*fp,constchar*format[,argument,--])的功能是把a(bǔ)rgument列表中的表達(dá)式值寫到fp所指向的文件中:本題中首先定義了一個(gè)文件指針fp,然后通過函數(shù)fopen以“w”的方式打開文件“d1.dat”,直接通過一個(gè)for循環(huán),每循環(huán)一次調(diào)用函數(shù)fpfintf將i的值寫進(jìn)fP所指的文件中,該循環(huán)共循環(huán)3次,循環(huán)完后fP所指文件的內(nèi)容為123,然后通過fclose函數(shù)關(guān)閉fp所指文件。接著通過fscanf函數(shù)將fP所指文件的內(nèi)容讀出并賦值給變量k和變量n,由于fp所指文件中只有123沒有分隔符,故只給k賦值為123,變量n的值依然為以前的值,故最后輸出k和n的值為123。
54.D解析:“||”為或運(yùn)算符,當(dāng)其左右表達(dá)式中只要一個(gè)為非零則整個(gè)表達(dá)式的值1。是按位或,&是按位與,^是按位異或,這三位運(yùn)算符是按值的二進(jìn)制位來比較的。
55.C解析:軟件開發(fā)模型包括瀑布模型、快速原型法模型和螺旋模型。
56.A解析:從工程管理的角度看,軟件設(shè)計(jì)可分為概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩大步驟。概要設(shè)計(jì)是根據(jù)需求確定軟件和數(shù)據(jù)的總體框架;詳細(xì)設(shè)計(jì)是將其進(jìn)一步精化成軟件的算法或表示和數(shù)據(jù)結(jié)構(gòu)。而在技術(shù)上,概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)又由若干活動(dòng)組成,包括總體結(jié)構(gòu)設(shè)計(jì)/數(shù)據(jù)設(shè)計(jì)和過程設(shè)計(jì)。因此,本題的正確答案是A。
57.D解析:賦值表達(dá)式的左側(cè)不能為常量或表達(dá)式,所以D是非法的表達(dá)式。
58.B解析:可以使用函數(shù)指針來調(diào)用函數(shù)。調(diào)用形式為:(*指針變量)(實(shí)參表列)。注意:調(diào)用函數(shù)和被調(diào)用函數(shù)之間的數(shù)據(jù)傳遞。
59.B解析:++、--運(yùn)算符在變量之前是先使變量的值加1或減1,然后再使用變量的值:如果在變量之后則先使用變量之前的值,再把變量的值加1或減1。顯然,程序中表達(dá)式“i--”的值為10,“++j”的值為2,所以最后輸出的值為10和2,所以,B選項(xiàng)為所選。
60.A解析:局部變量在執(zhí)行到它所在的程序塊時(shí)產(chǎn)生,執(zhí)行完時(shí)被摧毀,而靜態(tài)局部變量的生存期將一直延長(zhǎng)到程序運(yùn)行結(jié)束,故選項(xiàng)A正確;全局變量的只有一種靜態(tài)存儲(chǔ)類別,故全局變量說明為static存儲(chǔ)類,和沒有說明為static存儲(chǔ)類其生存期都是一直延長(zhǎng)到程序運(yùn)行結(jié)束,故選項(xiàng)B不正確:未賦初值的局部變量的初值是隨機(jī)的,故選項(xiàng)C不正確;形參只能是一般局部變量,不能使用任何存儲(chǔ)類說明符,故選項(xiàng)D不正確。所以,4個(gè)選項(xiàng)中選項(xiàng)A符合題意。
61.D解析:類(calss)描述的是具有相似屬性與操作的一組對(duì)象,而一個(gè)具體對(duì)象則
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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年全球及中國(guó)生物基FDCA(2,5-呋喃二甲酸)行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 聘用臨時(shí)工合同范本
- 錨桿勞務(wù)分包合同
- 塔吊司機(jī)勞動(dòng)合同
- 小企業(yè)勞動(dòng)合同
- 勞務(wù)合同報(bào)酬
- 小產(chǎn)權(quán)房房屋租賃合同
- 大貨車貨物運(yùn)輸合同
- 知識(shí)產(chǎn)權(quán)合同條款分析
- 城區(qū)中心亮化維修工程采購(gòu)合同
- 改革開放教育援藏的創(chuàng)新及其成效
- 第3課+中古時(shí)期的西歐(教學(xué)設(shè)計(jì))-【中職專用】《世界歷史》(高教版2023基礎(chǔ)模塊)
- 山東省濟(jì)寧市2023年中考數(shù)學(xué)試題(附真題答案)
- 班組建設(shè)工作匯報(bào)
- 供應(yīng)鏈金融與供應(yīng)鏈融資模式
- 工程類工程公司介紹完整x
- 板帶生產(chǎn)工藝熱連軋帶鋼生產(chǎn)
- 關(guān)鍵工序特殊過程培訓(xùn)課件精
- 輪機(jī)備件的管理(船舶管理課件)
- 統(tǒng)編《道德與法治》三年級(jí)下冊(cè)教材分析
- 國(guó)際尿失禁咨詢委員會(huì)尿失禁問卷表
評(píng)論
0/150
提交評(píng)論