版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(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語(yǔ)言程序設(shè)計(jì)真題(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程
B.軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測(cè)試完成的過(guò)程
C.軟件的開(kāi)發(fā)過(guò)程
D.軟件的運(yùn)行維護(hù)過(guò)程
2.有以下程序voidf(int*x,int*y){intt;t=*x;*x=*y;*y=t;}main(){inta[8]={1,2,3,4,5,6,7,8},i,*p,*q;p=a;q=&a[7];while(p<q){f(p,q);p++;q--;}for(i=0;i<8;i++)printf("%d,",a[i]);}程序運(yùn)行后的輸出結(jié)果是
A.8,2,3,4,5,6,7,1,
B.5,6,7,8,1,2,3,4,
C.1,2,3,4,5,6,7,8,
D.8,7,6,5,4,3,2,1
3.在一個(gè)有頭結(jié)點(diǎn)的鏈隊(duì)列中,假設(shè)f和r分別為隊(duì)首和隊(duì)尾指針,則插入s所指的結(jié)點(diǎn)的運(yùn)算是()。
A.f->next=s;f=s;
B.r->next=s;r=s;
C.s->next=r;r=s;
D.s->next=f;f=s;
4.對(duì)于只在表的首、尾兩端進(jìn)行插入操作的線性表,宜采用的存儲(chǔ)結(jié)構(gòu)為()。
A.順序表B.用頭指針表示的循環(huán)單鏈表C.用尾指針表示的循環(huán)單鏈表D.單鏈表
5.下述函數(shù)功能是______。intfun(char*x){char*y=x;while(*y++);returny-x-1;}
A.求字符串的長(zhǎng)度B.求字符串存放的位置C.比較兩個(gè)字符串的大小D.將字符串x連接到字符串y后面
6.以下敘述中正確的是()。
A.a是實(shí)型變量,C允許進(jìn)行賦值a=10,但不可以這樣說(shuō):實(shí)型變量中允許存放整型值
B.在賦值表達(dá)式中,賦值號(hào)左邊既可以是變量也可以是任意表達(dá)式
C.執(zhí)行表達(dá)式a=b后,在內(nèi)存中a和b存儲(chǔ)單元中的原有值都將被改變,a的值已由原值改變?yōu)閎的值,b的值由原值變?yōu)?
D.已有a=3,b=5,當(dāng)執(zhí)行了表達(dá)式a=b,b=a之后,使a中的值為5,b中的值為3
7.下述程序向文件輸出的結(jié)果是______。#include<stdio.h>voidmain(){FILE*fp=fopen("TESY","wb");fprintf(fp,"%d%5.0f%c%d",58,76273.0,'-',2278);fclose(fp);}
A.5876273-2278
B.5876273.000000-2278
C.5876273-2278
D.因文件為二進(jìn)制文件而不可讀
8.一個(gè)隊(duì)列的入隊(duì)序列是a,b,c,d,則出隊(duì)序列是()。
A.a,b,c,dB.a,c,b,dC.d,c,b,aD.a,c,b,d
9.下列運(yùn)算符中優(yōu)先級(jí)最低的算符是()。
A.||B.!=C.<;=D.十
10.下列關(guān)于C語(yǔ)言數(shù)據(jù)文件的敘述中正確的是A.文件由ASCII碼字符序列組成,C語(yǔ)言只能讀寫(xiě)文本文件
B.文件由二進(jìn)制數(shù)據(jù)序列組成,C語(yǔ)言只能讀寫(xiě)二進(jìn)制文件
C.文件由記錄序列組成,可按數(shù)據(jù)的存放形式分為二進(jìn)制文件和文本文件
D.文件由數(shù)據(jù)流形式組成,可按數(shù)據(jù)的存放形式分為二進(jìn)制文件和文本文件
11.算法分析的兩個(gè)主要方面是()。
A.空間復(fù)雜性和時(shí)間復(fù)雜性B.正確性和簡(jiǎn)明性C.可讀性和文檔性D.數(shù)據(jù)復(fù)雜性和程序復(fù)雜性
12.在線索化樹(shù)中,每個(gè)結(jié)點(diǎn)必須設(shè)置一個(gè)標(biāo)志來(lái)說(shuō)明它的左、右鏈指向的是樹(shù)結(jié)構(gòu)信息,還是線索化信息,若0標(biāo)識(shí)樹(shù)結(jié)構(gòu)信息,1標(biāo)識(shí)線索,對(duì)應(yīng)葉結(jié)點(diǎn)的左右鏈域,應(yīng)標(biāo)識(shí)為()。
A.00B.01C.10D.11
13.數(shù)據(jù)處理的最小單位是()。
A.數(shù)據(jù)B.數(shù)據(jù)元素C.數(shù)據(jù)項(xiàng)D.數(shù)據(jù)結(jié)構(gòu)
14.以下敘述中正確的是()。
A.C程序中注釋部分可以出現(xiàn)在程序中任意合適的地方
B.花括號(hào)"{"和"}"只能作為函數(shù)體的定界符
C.構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶(hù)命名
D.分號(hào)是C語(yǔ)句之間的分隔符,不是語(yǔ)句的一部分
15.假設(shè)整型數(shù)i的地址為0x12345678,指針ip地址為0x21850043,則執(zhí)行以下后,k的值為()。A.0x12345678B.0x21850043C.100D.不確定
16.最小堆[0,3,2,5,7,4,6,8],在刪除堆頂元素0之后,其結(jié)果是()
A.[3,2,5,7,4,6,8]
B.[2,3,5,7,4,6,8]
C.[2,3,4,5,7,8,6]
D.[2,3,4,5,6,7,8]
17.有如下程序:#include<stdio.h>msin(){chars[]="ABCD",*P;for(p=s+1;p<s+4;p++)Printf("%s\n",p);}該程序的輸出結(jié)果是()。
A.ABCDBCDCDDB.ABCDC.BCDD.BCDCDD
18.設(shè)一棵二叉樹(shù)有3個(gè)葉子節(jié)點(diǎn),有8個(gè)度為1的節(jié)點(diǎn),則該二叉樹(shù)中總的節(jié)點(diǎn)數(shù)為()
A.12B.13C.14D.15E.16F.17
19.有以下程序#include<stdio.h>structst{intx,y;}data[2]={1,10,2,20};main(){structst*p=data;printf("%d,",p->y);printf("%d\n",(++p)->x);}程序的運(yùn)行結(jié)果是______。A.10,1B.20,1C.10,2D.20,2
20.有以下程序:
程序的運(yùn)行結(jié)果是()。
A.y=0B.y=1C.y=2D.y=3
二、2.填空題(20題)21.數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu),線性鏈表屬于【】。
22.軟件定義時(shí)期主要包括______和需求分析兩個(gè)階段。
23.當(dāng)調(diào)用函數(shù)時(shí),實(shí)參是一個(gè)數(shù)組名,則向函數(shù)傳遞的是【】。
24.若a是血型變量,且a的初值為4,則計(jì)算a+=a-=a*a表達(dá)式后a的值為_(kāi)_____。
25.x、y、x均為int型變量,描述“x、y和z中至少有兩個(gè)為正數(shù)”的表達(dá)式是______。
26.以下程序的功能是:刪去一維數(shù)組中所有相同的數(shù),使之只剩一個(gè)。數(shù)組中的數(shù)已按由小到大的順序排列,函數(shù)返回刪除后數(shù)組中數(shù)據(jù)的個(gè)數(shù)。
例如,若一維數(shù)組中的數(shù)據(jù)是:
2223445666677899101010
刪除后,數(shù)組中的內(nèi)容應(yīng)該是:
2345678910。
請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
#defineN80
infun(inta[],intn)
{inti,j=1;
for(i=1;i<n;i++)
if(a[j-1]【】a[i])
a[j++]=a[i];
【】;
}
main()
{inta[N]={2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10},i,n=19;
printf("Theoriginaldata:\n");
for(i=0;i<n;i++)printf("%3d",a[i]);
n=fun(a,n);
printf("\nThedataafterdeleted:\n");
for(i=0;i<n;i++)printf("%3d",a[i]);printf("\n\n");
}
27.函數(shù)mycmp(char*s,char*t)的功能是比較字符串s和t的大小,當(dāng)s等于t時(shí)返回0,當(dāng)s>t時(shí)返回正值,當(dāng)s<t時(shí)返回負(fù)值。請(qǐng)?zhí)羁铡?/p>
mycmp(char*s,char*t)
{while(*s==*t)
{if(*s=='\0')return0;
++s;++t;
}
return(【】);
}
28.以下程序中函數(shù)f的功能是在數(shù)組x的n個(gè)數(shù)(假定n個(gè)數(shù)互不相同)中找出最大最小數(shù),將其中最小的數(shù)語(yǔ)第一個(gè)數(shù)兌換,把最大的數(shù)語(yǔ)最后一個(gè)數(shù)對(duì)換。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
voidf(intx[],intn)
{intp0,p1,i,j,t,m;
i=j=x[0];p0=p1=0;
for(m=0;m<n;m++)
if(x[m]>i){i=x[m];p0=m;}
elseif(x[m]<j){j=x[m];p1=m;
}
t=x[p0];x[p0]=x[n-1];x[n-1]=t;
t=x[p1];x[p1]=[11];[12]=t;
main()
{inta[10],u;
for(u=0;u<10;u++)scanf("%d",&a[u]);
f(a,10);
for(u=0;u<10;u++)printf("%d",a[u]);
printf("\n");
}
29.設(shè)有定義:intn,*k=&n;以下語(yǔ)句將利用指針變量k讀寫(xiě)變量n中的內(nèi)容,請(qǐng)將語(yǔ)句補(bǔ)充完整。
scanf(“%d”,______);
printf(“%d\n”,______);
30.以下程序運(yùn)行后的輸出結(jié)果是______。
fun(intx)
{if(x/2>0)fun(x/2);
printf("%d",x);
}
main()
{fun(6);}
31.表示條件;10<x<100或x<0的C語(yǔ)言表達(dá)式是【】。
32.執(zhí)行以下程序后的輸出結(jié)果是【】。
main()
{inta=10;
a=(3*5,a+4);printf("a=%d\n",a);
}
33.數(shù)據(jù)的邏輯結(jié)構(gòu)有線性結(jié)構(gòu)和______兩大類(lèi)。
34.對(duì)于圖書(shū)管理數(shù)據(jù)庫(kù),將圖書(shū)表中"人民郵電出版社"的圖書(shū)的單價(jià)漲價(jià)5%。請(qǐng)對(duì)下面的SQL語(yǔ)句填空:UPDATE圖書(shū)【】WHERE出版單位="人民郵電出版社"
35.軟件的需求分析階段的工作,可以概括為四個(gè)方面:【】、需求分析、編寫(xiě)需求規(guī)格說(shuō)明書(shū)和需求評(píng)審。
36.有以下程序:
voidf(inty,int*x)
{y=y+*x;*x=*x+y;}
main()
{intx=2,y=4;
f(y,&x);
ptintf("%d%d\n",x,y);
}
執(zhí)行后輸出結(jié)果是【】。
37.輸出指針數(shù)組各元素所指的整數(shù)值和它存放的地址值。
#include<stdio.h>
main()
{inti;
inta[5]={1,3,5,7,9};
int*num[5];
int【】;
for(i=0;i<5;i++)
num[i]=【】;
p=num+0;
for(i=0;i<5;i++)
{printf("%d%d\n",【】);
p++;
}
}
38.下列程序的運(yùn)行結(jié)果是______。
main()
{intx=1,y=2,z=3;
printf("%d,",x<y?y:x);
printf("%d,",z<y?x++:y++);
printf("%d,%d",x,y);
}
39.已有定義:intx;,執(zhí)行以下語(yǔ)句后的輔出結(jié)果是【】。
x=11/3;y=5;
printf("%%d,%%%d\n",x,y);
40.函數(shù)mycmp(char*s,char*t)的功能提比較字符串s和t的大小,當(dāng)s等于t時(shí)返回0,當(dāng)s>t返回正值,當(dāng)s<t時(shí)返回負(fù)值。請(qǐng)?zhí)羁铡?/p>
mycmp(char*s,char*t)
{while(*s==*t)
{if(*s=='\0')return0;
++s;++t;
}
return(【】)
}
三、1.選擇題(20題)41.設(shè)有以下說(shuō)明語(yǔ)句typedefstruct{intn;charch[8];}PER;則下面敘述中正確的是
A.PER是結(jié)構(gòu)體變量名
B.PER是結(jié)構(gòu)體類(lèi)型名
C.typedefstruct是結(jié)構(gòu)體類(lèi)型
D.struct是結(jié)構(gòu)體類(lèi)型名
42.結(jié)構(gòu)化程序設(shè)計(jì)的核心和基礎(chǔ)是()。
A.結(jié)構(gòu)化分析方法B.結(jié)構(gòu)化設(shè)計(jì)方法C.結(jié)構(gòu)化設(shè)計(jì)理論D.結(jié)構(gòu)化編程方法
43.若有定義:floatx=1.5;inta=1,b=3,c=2;則正確的switch語(yǔ)句是()。
A.switch(x){case1.0:printf("*\n");case2.0:printf("**\n");
B.switch((iht)x);{case1:printf("*\n");case2:printf("**\n");}
C.switch(a+b){case1:printf("*\n");case2+1:printf("**\n");}
D.switch(a+b){case1:pfintf("*\n");casec:pfintf("**\n");}
44.有以下程序main(){inti=0,s=0;for(;;){if(i==3‖i==5)continue;if(i==6)break;i++;s+=i};printf("%d\n",s)}程序運(yùn)行后的輸出結(jié)果是
A.10B.13C.21D.程序進(jìn)入死循環(huán)
45.下列字符串是合法的標(biāo)識(shí)符的是()。
A._HJB.9_studentC.longD.LINE1
46.以下程序的輸出結(jié)果是______。charcchar(charch){if(ch>='A'&&ch<='z')ch=ch-'A'+'a';returnch;}main(){chars[]="ABC+abc=defDEF",*p=s;while(*p){*p=cchar(*p);p++;}printf("%s\n",s);}
A.abe+ABC=DEFdef
B.abc+abe=defdef
C.abcaABCDEFdef
D.abcabcdefdef
47.設(shè)有定義語(yǔ)句:charc1=92,c2=92;,則以下表達(dá)式中值為零的是
A.c1c2
B.c1&c2C.c1~c2D.c1|c2
48.設(shè)x=011050,則x=x&01252的值是()。
A.0000001000101000
B.1111110100011001
C.0000001011100010
D.1100000000101000
49.以下程序的輸出結(jié)果是______。#defineSQR(X)X*Xmain(){inta=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf("d\n",a);}
A.16B.2C.9D.1
50.下列工具中為需求分析常用工具的是()。
A.PADB.PFDC.N-SD.DFD
51.可以在C語(yǔ)言程序中用做用戶(hù)標(biāo)識(shí)符的一組標(biāo)識(shí)符是()。
A.voidB.aa123_abcBBNcasC.as+b3D.6f-123DoIfSIG
52.將E-R圖轉(zhuǎn)換到關(guān)系模式時(shí),實(shí)體與實(shí)體間的聯(lián)系可以表示成()。
A.屬性B.關(guān)系C.鍵D.域
53.下列描述中,錯(cuò)誤的一條是______。
A.已知a=3、b=2、c=l,則表達(dá)式(a>b)氣的值為1
B.C語(yǔ)言的表達(dá)式能構(gòu)成語(yǔ)句
C.表達(dá)式(x1=3*5,x1*4),x1+5的值為20
D.表達(dá)式x1=(b=4)+(c=6)的值為6
54.在下列選項(xiàng)中,______不是一個(gè)算法一般應(yīng)該具有的基本特征。
A.確定性B.可行性C.無(wú)窮性D.擁有足夠的情報(bào)
55.設(shè)有關(guān)鍵碼序列(66,13,51,76,81,26,57,69,23),要按關(guān)鍵碼值遞增的次序排序,若采用快速排序法,并以第一個(gè)元素為劃分的基準(zhǔn),那么第一趟劃分后的結(jié)果為()。
A.23,13,51,57,66,26,81,69,76
B.13,23,26,51,57,66,81,76,69
C.23,13,51,57,26,66,81,69,76
D.23,13,51,57,81,26,66,69,76
56.若有以下結(jié)構(gòu)體定義,則______是正確的引用或定義。structexample{intx;inty;}v1;
A.example.x=10
B.examplev2.x=10
C.structv2;v2.x=10
D.structexamplev2={10};
57.軟件需求分析階段的工作可以分為4個(gè)方面:需求獲取、需求分析、編寫(xiě)需求分析說(shuō)明書(shū)和
A.階段性報(bào)告B.需求評(píng)審C.總結(jié)D.都不正確
58.下列程序執(zhí)行后的輸出結(jié)果是voidfunc(int*a,intb[]){b[0]=*a+6;}main(){inta,b[5];a=0;b[0]=3;func(&a,b);printf("%d\n",b[0]);}
A.6B.7C.8D.9
59.有以下程序:voidfun(char*c,intd){*c=*c+1;d=d+1;printf("%c,%c,",*c,d);}main(){chara='A',b='a';fun(&b,a);printf("%c,%c\n",a,b);}程序運(yùn)行后的輸出結(jié)果是()。
A.B,a,B,aB.a,B,a,BC.A,b,A,bD.b,B,A,b
60.若有定義:inta[2][3];,以下選項(xiàng)中對(duì)a數(shù)組元素正確引用的是A.a[2][!1]B.a[2][3]C.a[0][3]D.a[1>2][!1]
四、選擇題(20題)61.軟件的()設(shè)計(jì)又稱(chēng)總體結(jié)構(gòu)設(shè)計(jì),其主要任務(wù)是建立軟件系統(tǒng)的總體結(jié)構(gòu)。
A.概要B.抽象C.邏輯D.規(guī)劃
62.C語(yǔ)言用_______表示邏輯“真”值。
A.trueB.t或yC.非零整型值D.整型值0
63.(33)分布式數(shù)據(jù)庫(kù)系統(tǒng)不具有的特點(diǎn)是______。
A.分布式
B.數(shù)據(jù)冗余
C.數(shù)據(jù)分布性和邏輯整體性
D.位置透明性和復(fù)制透明性
64.
下列程序中函數(shù)sort()的功能是對(duì)數(shù)組a中的數(shù)據(jù)進(jìn)行由大到小的排序。
#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]);
}
程序運(yù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.1,8,7,6,5,4,3,2,9,10,
D.1,2,10,9,8,7,6,5,4,3,
65.在C語(yǔ)言中,合法的長(zhǎng)整型常數(shù)是()。
A.0.123456B.4962717C.9LD.5.321e2
66.軟件設(shè)計(jì)中,有利于提高模塊獨(dú)立性的一個(gè)準(zhǔn)則是______。A.低內(nèi)聚低耦合B.低內(nèi)聚高耦合C.高內(nèi)聚低耦合D.高內(nèi)聚高耦合
67.
68.c語(yǔ)言規(guī)定,在一個(gè)源程序中,main函數(shù)的位置()。
A.必須在最開(kāi)始B.必須在系統(tǒng)調(diào)用的庫(kù)函數(shù)的后面C.可以任意D.必須在最后
69.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
70.
71.
72.數(shù)字字符0的ASCIl值為48,若有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.3,2B.50,2C.2,2D.2,50
73.以下描述錯(cuò)誤的是
A.C程序中,函數(shù)可以直接或間接調(diào)用自己
B.函數(shù)調(diào)用時(shí),函數(shù)名必須與所調(diào)用的函數(shù)名字完全一致
C.函數(shù)說(shuō)明語(yǔ)句中的類(lèi)型必須與函數(shù)返回值的類(lèi)型一致
D.實(shí)參個(gè)數(shù)可以與形參個(gè)數(shù)不一致
74.
75.
76.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.7B.5C.3D.9
77.有以下程序
78.有以下程序
intf(intn)
{if(n==1)return1;
elsereturnf(n-1)+1;}
main()
{inti,j=0;
for(i=1;i<3;i++)j+=f(i);
printf("%d\n",j);}
程序運(yùn)行后的輸出結(jié)果是
A.4B.3C.2D.1
79.
80.設(shè)有定義語(yǔ)句
則以下敘述正確的是().
A.f是指向函數(shù)的指針變量,該函數(shù)具有_個(gè)int類(lèi)型的形參
B.f是基類(lèi)型為int的指針變量
C.f是指向int類(lèi)型一維數(shù)組的指針變量
D.f是函數(shù)名,該函數(shù)的返回值是基類(lèi)型為int類(lèi)型的地址
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)fun的功能是:計(jì)算整數(shù)n的階乘。請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.編寫(xiě)函數(shù)proc(),它的功能是:根據(jù)公式求p的值,結(jié)果由函數(shù)值帶回。m與n為兩個(gè)正數(shù)且要求m>;n。p=m!/(n!(m-n)!),例如,m=20,n=10時(shí),運(yùn)行結(jié)果為184756.000000。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫(xiě)的若干語(yǔ)句。試題程序:
參考答案
1.A通常,將軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程稱(chēng)為軟件生命周期。也就是說(shuō),軟件產(chǎn)品從考慮其概念開(kāi)始,到該軟件產(chǎn)品不能使用為止的整個(gè)時(shí)期都屬于軟件生命周期。
2.D解析:本題考查循環(huán)和指針做函數(shù)參數(shù),程序的功能是將a[0]和a[7]對(duì)換,a[1]和a[6]對(duì)換,a[2]和a[5]對(duì)換,a[3]和a[4]對(duì)換,最后輸出。
3.B
4.C
5.A解析:在函數(shù)體內(nèi)定義一字符型指針并指向形參,然后遍歷其中各字符直到NULL,最后返回字符串首尾地址的差值,即字符串的長(zhǎng)度。
6.AC語(yǔ)言中語(yǔ)法上規(guī)定實(shí)型變量是不能存放整型類(lèi)型的數(shù)據(jù)的,整型數(shù)據(jù)也不能存放實(shí)型數(shù)據(jù)。是為了避免類(lèi)型轉(zhuǎn)換之間可能會(huì)發(fā)生的錯(cuò)誤。
7.C解析:fprintf函數(shù)工作時(shí),多個(gè)數(shù)據(jù)間不會(huì)自珈口分隔符,選項(xiàng)A錯(cuò)誤;浮點(diǎn)數(shù)的輸出格式是“%5.0f”表明其小數(shù)部分輸出0位,即沒(méi)有輸出,所以選項(xiàng)B也是錯(cuò)誤的。
8.A
9.AC語(yǔ)言中規(guī)定運(yùn)算符的優(yōu)先順序:一元算術(shù)運(yùn)算符一>二元算術(shù)運(yùn)算符一>關(guān)系運(yùn)算符一>邏輯運(yùn)算符一>賦值運(yùn)算符,A項(xiàng)中為邏輯運(yùn)算符,B項(xiàng)和c項(xiàng)都為關(guān)系運(yùn)算符,D項(xiàng)為一元運(yùn)算符。因此最低的是A項(xiàng)。
10.D解析:C語(yǔ)言把文件看成是一個(gè)字符(字節(jié))的序列,即由一個(gè)一個(gè)字符(字節(jié))的數(shù)據(jù)順序組成。根據(jù)數(shù)據(jù)的組織形式,可分為ASCII文件和二進(jìn)制文件。ASCII文件又稱(chēng)文本文件,它的每一個(gè)字節(jié)放一個(gè)ASCII代碼,代表一個(gè)字符。二進(jìn)制文件是把內(nèi)存中的數(shù)據(jù)按其在內(nèi)存中的存儲(chǔ)形式原樣輸出到磁盤(pán)上存放。
11.A
12.D
13.C解析:數(shù)據(jù)處理的最小單位是數(shù)據(jù)項(xiàng);由若干數(shù)據(jù)項(xiàng)組成數(shù)據(jù)元素;而數(shù)據(jù)是指能夠被計(jì)算機(jī)識(shí)別、存儲(chǔ)和加工處理的信息載體;數(shù)據(jù)結(jié)構(gòu)是指數(shù)據(jù)之間的相互關(guān)系和數(shù)據(jù)運(yùn)算。故正確答案為選項(xiàng)C)。
14.A解析:/*與*/之間的信息稱(chēng)為注釋信息,在C語(yǔ)言中,允許在任何能夠插入空格符的位置插入注釋?zhuān)獵語(yǔ)言的注釋不能進(jìn)行嵌套,故選項(xiàng)A正確:在C語(yǔ)言中,函數(shù)體是從花括號(hào){開(kāi)始,到花括號(hào)}結(jié)束。但沒(méi)有規(guī)定花括號(hào){和}只能作為函數(shù)體定界符,故選項(xiàng)B錯(cuò)誤;選項(xiàng)C中前半句是正確的,C程序由一個(gè)或多個(gè)函數(shù)所組成,但不是所有的函數(shù)都由用戶(hù)自己命名,有些函數(shù),比如主函數(shù)main()就不能由用戶(hù)來(lái)命名,故選C不正確;在C語(yǔ)言中明確規(guī)定每條語(yǔ)句以分號(hào);結(jié)束,分號(hào)是語(yǔ)句不可缺少的一部分,故選項(xiàng)D不正確。所以,4個(gè)選項(xiàng)中選項(xiàng)A符合題意。
15.C
16.C
17.D解析:本題考查指向字符串指針的運(yùn)算方法。執(zhí)行p=s+1后,指針變量p就指向字符串中的第二個(gè)字符“B”,然后輸出字符串“BCD”并換行;下面繼續(xù)執(zhí)行循環(huán)語(yǔ)句,指針變量p指向下一個(gè)字符“C”,輸出字符串“CD”,最后一次循環(huán),p指向字符“D”,輸出字符串“D”。
18.B
19.C解析:本題定義了一個(gè)包含兩個(gè)元素(data[0]、data[1])的結(jié)構(gòu)體數(shù)組data,其中data[0].x=1;data[0].y=10;data[1].x=2;\u3000data[1].y=20。在主函數(shù)中,定義了一個(gè)指向結(jié)構(gòu)體數(shù)組的結(jié)構(gòu)體指針變量p,使得p指向結(jié)構(gòu)體數(shù)組的首地址,所以p->y訪問(wèn)的是第一個(gè)鮚構(gòu)體數(shù)組元素的第二個(gè)值,即data[0].y;(++p)->x訪問(wèn)的是第二個(gè)結(jié)構(gòu)體數(shù)組元素的第一個(gè)值,即\u3000data[1].x,所以程序輸出結(jié)果為10,2。
20.D在程序中指針變量P初始指向a[3],執(zhí)行P減1后,P指向a[2],語(yǔ)句y=*P的作用是把a(bǔ)[2]的值賦給變量y,所以輸出為y=3。
21.存儲(chǔ)結(jié)構(gòu)
22.可行性研究可行性研究解析:軟件生命周期一般包括可行性研究與需求分析、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試、交付使用及維護(hù)等,還可以將軟件生命周期分為三個(gè)階段:①軟件定義階段:可行性研究和需求分析;②軟件開(kāi)發(fā)階段:設(shè)計(jì)、實(shí)現(xiàn)和測(cè)試;③軟件運(yùn)行維護(hù)階段:交付使用和維護(hù)。
23.數(shù)組的首地址數(shù)組的首地址解析:在函數(shù)中,可以通過(guò)指針變量來(lái)引用調(diào)用函數(shù)中對(duì)應(yīng)的數(shù)組元素,此操作是通過(guò)傳遞數(shù)組的首地址來(lái)實(shí)現(xiàn)的。
24.-24-24解析:本題考查賦值運(yùn)算符a+=b等價(jià)于a=a+b;a-=a*a等價(jià)于a-a-a*a=4-4*4=-12:a+=a,即a=a+a=-24。
25.((x>0)&&<y>0))‖(x>0)&&(z>0)‖y>0)&&(z>0))((x>0)&&<y>0))‖(x>0)&&(z>0)‖y>0)&&(z>0))解析:題目要求“x、y和z中至少有兩個(gè)為正數(shù)”,即x、y和x這3個(gè)數(shù)中必須有兩個(gè)是正數(shù),且這3個(gè)數(shù)中的哪兩個(gè)數(shù)都有可能是正數(shù),所以它們之間是或的關(guān)系。
26.!=returnj!=\r\nreturnj解析:本題程序的流程是:讓i,j都從1開(kāi)始其中j用于控制刪除后剩下的數(shù)中的下標(biāo),i用于搜索原數(shù)組中的元素。j始終是新數(shù)組已有元素中最后一個(gè)元素的下一個(gè)元素的下標(biāo),所以if()中的條件是a[j-1)!=a[i],其中a[j-1]就是新數(shù)組中的最后一個(gè)元素,若條件成立則表示出現(xiàn)了不同的值,所以a[i]要留下到新數(shù)組中。注本題中i,j的初值都要從1開(kāi)始。該算法只能用于數(shù)組已排序的題目中。
27.*s-*t*s-*t解析:本題考查比較字符串的大小。函數(shù)的兩個(gè)形參是兩個(gè)字符指針變量,指針變量的值是字符串的首地址,*s和*t表示s和t指向的第一個(gè)字符,在while循環(huán)中,通過(guò)s和t指針的移動(dòng),不斷改變所指字符,通過(guò)返回s和t的第一個(gè)不同字符的ASCII碼的差值*s-*t得到結(jié)果。
28.x[0]x[0]x[0]x[0]解析:函數(shù)f()通過(guò)for循環(huán)逐個(gè)比較數(shù)組x中的元素,循環(huán)結(jié)束后,p0和p1分別表示最大值和最小值在數(shù)組中的下標(biāo)位置,然后按照題意將最大值x[p0]和數(shù)組的最后一個(gè)元素x[n-1)交換位置,再將最小值x[p1]和第一個(gè)元素(x[0])進(jìn)行交換,所以空白處應(yīng)該填入x[0]。
29.k*kk*k解析:本題考查的知識(shí)點(diǎn)是scarf()函數(shù)和printf()函數(shù)的用法。scanf()函數(shù)有兩個(gè)參數(shù),第一個(gè)參數(shù)是格式控制部分(格式控制部分是字符串,主要由“%”號(hào)和格式字符組成)第二個(gè)參數(shù)是一地址列表(地址列表是由多個(gè)地址組成,可以是變量的地址,也可以是字符串的首地址)。而第一個(gè)空格處位于scanf()函數(shù)的第二個(gè)參數(shù)處,所以,第一個(gè)空應(yīng)該填地址k。printf()函數(shù)有兩個(gè)參數(shù),第一個(gè)參數(shù)是輸出格式字符串(輸出格式字符串是由控制輸出格式的字符和非格式字符組成的,通常是字符常量。非格式字符作為輸出數(shù)據(jù)的間隔,輸出時(shí)原樣輸出)第二個(gè)參數(shù)為一輸出表達(dá)式表(輸出表達(dá)式表是由若干個(gè)需要計(jì)算和輸出的表達(dá)式組成的,表達(dá)式之間用逗號(hào)分隔開(kāi))。而第;個(gè)空位于printf()函數(shù)的第二個(gè)參數(shù)處,所以應(yīng)該填*K。
30.136136解析:本題考核的知識(shí)點(diǎn)是函數(shù)遞歸。主函數(shù)調(diào)用函數(shù)fun(6),由于6/2>0為真遞歸調(diào)用fun(3),接著遞歸調(diào)用fun(1),輸出1,返回上一層輸出3,在返回上一層輸出6。故空格處應(yīng)該填136。
31.(x>10&&x<100)||x<0
32.a=14a=14解析:逗號(hào)表達(dá)式的值是以逗號(hào)分隔的最后一個(gè)表達(dá)式的值。所以題目中的語(yǔ)句a=(3*5,a+4);就等價(jià)于a=a+4;。故本題輸出結(jié)果是a=14。
33.非線性結(jié)構(gòu)非線性結(jié)構(gòu)
34.SET單價(jià)=單價(jià)*1.05SET單價(jià)=單價(jià)*1.05解析:更新表中元組的值,使用UPDATE命令,一次可以更新表中的一個(gè)或多個(gè)屬性值。UPDATE短語(yǔ)之后指定更新數(shù)據(jù)所屬的表,將新的屬性值或表達(dá)式賦值給對(duì)應(yīng)的屬性名(SET單價(jià)=單價(jià)*1.05),并置于SET短語(yǔ)之后。要求對(duì)人民郵電出版社的圖書(shū)漲5%,需要用WHERE短語(yǔ)對(duì)元組進(jìn)行限制,即對(duì)符合條件的元組進(jìn)行更新。
35.需求獲取需求獲取解析:軟件的需求分析階段的工作,可以概括為四個(gè)方面:需求獲取、需求分析、編寫(xiě)需求規(guī)格說(shuō)明書(shū)和需求評(píng)審。需求獲取的目的是確定對(duì)目標(biāo)系統(tǒng)的各方面需求;需求分析是對(duì)獲取的需求進(jìn)行分析和綜合,最終給出系統(tǒng)的解決方案和目標(biāo)系統(tǒng)的邏輯模型;編寫(xiě)需求規(guī)格說(shuō)明書(shū)作為需求分析的階段成果,可以為用戶(hù)、分析人員和設(shè)計(jì)人員之間的交流提供方便,可以直接支持目標(biāo)軟件系統(tǒng)的確認(rèn),又可以作為控制軟件開(kāi)發(fā)進(jìn)度的依據(jù);需求評(píng)審是對(duì)需求分析階段的工作進(jìn)行的復(fù)審,驗(yàn)證需求文檔的一致性、可行性、完整性和有效性。
36.8484解析:“值傳遞”指實(shí)參將值傳遞給形參后,實(shí)參與形參再無(wú)聯(lián)系。也就是說(shuō)對(duì)行參的改變將不影響實(shí)參;地址傳遞是指地址或數(shù)組名作為形參時(shí)的參數(shù)傳遞,這種情況下對(duì)形參的改變將對(duì)實(shí)參產(chǎn)生影響。函數(shù)f(y,*x)的作用是讓y的值加上指針x所指向變量的值,讓指針x所指向變量的值加上y的值。由于形參y是傳值的,形參x是傳地址的,故調(diào)用該函數(shù)后,作為實(shí)參y的值將不改變,而實(shí)參x的值將改變,故最后輸出的y值為4,而x的值為8。
37.**pa+I**p*p
38.22132,2,1,3解析:本題考查++,--運(yùn)算符和條件運(yùn)算符的使用。
“表達(dá)式1?表達(dá)式2:表達(dá)式3”的功能是:表達(dá)式1的值若非0,則計(jì)算表達(dá)式2的值,且表達(dá)式2的值為最終結(jié)果;若表達(dá)式1的值為0,則計(jì)算表達(dá)式3的值,且為最終結(jié)果。
本題中,x=1,y=2時(shí),x<y成立,輸出y的值2;y=2,z=3時(shí),z<y不成立,執(zhí)行y++,輸出2后y值增1,所以最后一個(gè)輸出x的值不變?yōu)?,y的值為增加后的3。
39.%d%3
40.*s-*t或-*t+*s*s-*t或-*t+*s解析:函數(shù)的兩個(gè)形參是兩個(gè)字符指針變量,字符串的首地址是指針變量的值,*s和*t表示字符串?dāng)?shù)組s和t的第一個(gè)字符,在while循環(huán)中,是通過(guò)s和t值的不斷變化來(lái)改變指針?biāo)赶虻淖址?,要改變s和t所指不同字符的ASCII碼的差值,必須使用“*s-*t”得出。
41.B解析:本題中,typedef聲明新的類(lèi)型名PER來(lái)代替已有的類(lèi)型名,PER代表上面指定的一個(gè)結(jié)構(gòu)體類(lèi)型,此時(shí),也可以用PER來(lái)定義變量。
42.CC?!窘馕觥拷Y(jié)構(gòu)化程序設(shè)計(jì)的核心和基礎(chǔ)是結(jié)構(gòu)化設(shè)計(jì)理論,其中包括:結(jié)構(gòu)化分析方法、結(jié)構(gòu)化設(shè)計(jì)方法和結(jié)構(gòu)化編程方法。
43.C解析:選項(xiàng)A)中case后面的表達(dá)式為浮點(diǎn)型,選項(xiàng)D)中case后面的表達(dá)式存在字符變量c,故選項(xiàng)A)、D)錯(cuò)誤;在選項(xiàng)B)中,switch后面的表達(dá)式加了分號(hào)顯然有錯(cuò)。
44.D解析:本題考核的知識(shí)點(diǎn)是for循環(huán),continue語(yǔ)句和break語(yǔ)句的運(yùn)用。程序中for循環(huán)中省略了判斷退出循環(huán)的表達(dá)式,for循環(huán)將由里面的break語(yǔ)句控制是否結(jié)束循環(huán),第一次循環(huán),第一條if語(yǔ)句后面括號(hào)里的表達(dá)式的值為假,所以該if語(yǔ)句不被執(zhí)行,執(zhí)行下面的第二條語(yǔ)句,此時(shí)該if語(yǔ)句表達(dá)式的值為假,所以該if語(yǔ)句也不執(zhí)行,執(zhí)行下面的語(yǔ)句,i++、s+=i,執(zhí)行完畢后i的值為1,s的值為1,如此循環(huán),直到第三次之后i,s的值都為3,繼續(xù)第四次循環(huán),顯然這時(shí)滿(mǎn)足第一條if語(yǔ)句的,執(zhí)行后面的continue;該次循環(huán)結(jié)束從頭開(kāi)始下次循環(huán),而i的值為3一直沒(méi)有改變,所以第一條語(yǔ)句始終要執(zhí)行,因此for循環(huán)將一直循環(huán)下去,所以,4個(gè)選項(xiàng)中選項(xiàng)D符合題意。
45.A解析:標(biāo)識(shí)符是以字母、數(shù)字和下劃線組成的字符串,且只能是字符或下劃線開(kāi)頭,且C語(yǔ)言的關(guān)鍵字不能用作用戶(hù)自定義的標(biāo)識(shí)符。注意:熟記C語(yǔ)言中常用的關(guān)鍵字。
46.B解析:字符數(shù)組元素作函數(shù)參數(shù)是單向的值傳遞。函數(shù)cchar的功能是將大寫(xiě)字母轉(zhuǎn)換為小寫(xiě)字母。主函數(shù)中while循環(huán)語(yǔ)句的條件是判斷指針p當(dāng)前指向的字符是否為空,若不為空,則調(diào)用函數(shù)cchar,即主函數(shù)中通過(guò)循環(huán)語(yǔ)句將字符串'ABC+abc=defDEF'中的大寫(xiě)字母全部轉(zhuǎn)換為小寫(xiě)字母,因此printf的輸出結(jié)果為選項(xiàng)B。
47.A解析:選項(xiàng)A為異或運(yùn)算符,如果參加運(yùn)算的兩個(gè)位相同,結(jié)果為0,否則為1。顯然選項(xiàng)A中參加運(yùn)算c1和c2相同,故其值位0;選項(xiàng)B為位與運(yùn)算,如果參加運(yùn)算的兩位都為1,則結(jié)果為1,否則結(jié)果為0,選項(xiàng)B中參加運(yùn)算的c1和c2都為真,所以結(jié)果為1;選項(xiàng)C為取反運(yùn)算,用來(lái)對(duì)一個(gè)二進(jìn)制取反,顯然c2取反后不為0,選項(xiàng)D為異或運(yùn)算,參加運(yùn)算的兩位只要有一個(gè)為1,那么運(yùn)算結(jié)果為1,顯然參加運(yùn)算的c1和c2都不為0,故運(yùn)算結(jié)果不為0。
48.A解析:本題主要考查按位與運(yùn)算,x=011050的二進(jìn)制形式為0001001000101000,01252的二進(jìn)制形式為0000001010101010,兩者相與得00000010001010000。
49.D解析:本題考查帶參數(shù)的宏調(diào)用。a/=SQR(k+m)/SQR(k+m)進(jìn)行宏替換后得:a=a/(SQR(k+m)/SQR(k+m))=a/(k+m*k+m/k+m*k+m)=10/(2+1*2+1/2+1*2+1)=10/(2+2+0+2+1)=10/7/1。
50.D解析:需求分析常用的工具有數(shù)據(jù)流圖(DFD)、數(shù)據(jù)字典(DD)、判定樹(shù)和判定表。PAD(問(wèn)題分析圖)、PFD(程序流程圖)、N-S(盒式圖)都是詳細(xì)設(shè)計(jì)的常用工具,不是需求分析的工具。
51.B解析:C語(yǔ)言規(guī)定,標(biāo)識(shí)符是由字母、數(shù)字或下劃線組成,并且它的第一個(gè)字符必須是字母或者下劃線。
52.B解析:將E-R圖轉(zhuǎn)換成指定RDBMS中的關(guān)系模式是數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的主要工作。從E-R圖到關(guān)系模式的轉(zhuǎn)換是比較直接的,實(shí)體和聯(lián)系都可以表示成關(guān)系。
53.D
54.C解析:作為一個(gè)算法,一般應(yīng)具有以下幾個(gè)基本特征。①可行性②確定性③有窮性④擁有足夠的情報(bào)
55.AA)【解析】快速排序是起泡排序的改進(jìn)。在快速排
序中,任取一個(gè)記錄,以它為基準(zhǔn)用交換的方法將所有的記錄分成兩部分,關(guān)鍵碼值比它小的在一部分,關(guān)鍵碼值比它火的在另一部分,再分別對(duì)兩個(gè)部分實(shí)施上述過(guò)程,一直重復(fù)到排序完成。
56.D解析:在定義結(jié)構(gòu)體變量時(shí),不能只用結(jié)構(gòu)體名example或關(guān)鍵字struct進(jìn)行定義,必需要用結(jié)構(gòu)缽類(lèi)型名structexample定義,在引用結(jié)構(gòu)體成員變量時(shí),需要用結(jié)構(gòu)體變量名進(jìn)行引用,所以選D。
57.B解析:本題考查軟件需求分析的四個(gè)階段,分別為需求獲取、需求分析、編寫(xiě)需求分析說(shuō)明書(shū)和需求評(píng)審。
58.A解析:函數(shù)的參數(shù)不僅可以是整型、實(shí)型、字符型等數(shù)據(jù),還可以是指針型。它的作用是將一個(gè)變量的地址傳遞到另一個(gè)函數(shù)中。當(dāng)數(shù)組名作參數(shù)時(shí),如果形參數(shù)組中的各元素的值發(fā)生變化,實(shí)參數(shù)組元素的值也將隨之發(fā)生變化。
59.D解析:程序中定義了
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度燈具研發(fā)與購(gòu)銷(xiāo)合同簡(jiǎn)版
- 二零二五年度出租車(chē)租賃合同車(chē)輛租賃費(fèi)用調(diào)整與結(jié)算協(xié)議
- 二零二五年度絕交協(xié)議書(shū)合同-正式記錄情感決裂事宜
- 2025年度電子產(chǎn)品連鎖門(mén)店品牌代理合同
- 2025年度企業(yè)年金協(xié)議存款管理合同
- 高度檢測(cè)課程設(shè)計(jì)
- 二零二五年度返聘退休人員企業(yè)環(huán)境保護(hù)與能源管理合同
- 2025年度共有產(chǎn)權(quán)房產(chǎn)權(quán)轉(zhuǎn)移合同
- 二零二五年度高端海洋捕撈漁船交易合同
- 二零二五年度公司經(jīng)理職位競(jìng)聘及目標(biāo)合同
- 《工貿(mào)企業(yè)有限空間作業(yè)安全規(guī)定》知識(shí)培訓(xùn)
- 高層次人才座談會(huì)發(fā)言稿
- 垃圾清運(yùn)公司管理制度(人員、車(chē)輛、質(zhì)量監(jiān)督、會(huì)計(jì)管理制度)
- 《建筑工程設(shè)計(jì)文件編制深度規(guī)定》(2022年版)
- 工程項(xiàng)目計(jì)價(jià)結(jié)算付款情況統(tǒng)計(jì)表
- GB/T 20554-2024海帶
- 廣東廣州中醫(yī)藥大學(xué)第一附屬醫(yī)院招聘筆試真題2022
- ISO 15189醫(yī)學(xué)實(shí)驗(yàn)室認(rèn)可內(nèi)審員培訓(xùn)試題附答案
- 高速公路交通安全設(shè)施設(shè)計(jì)及施工技術(shù)規(guī)范-JTJ-074-94
- 第八屆“雄鷹杯”小動(dòng)物醫(yī)師技能大賽備考試題庫(kù)(含答案)
- (正式版)JBT 14587-2024 膠體鉛酸蓄電池 技術(shù)規(guī)范
評(píng)論
0/150
提交評(píng)論