![2021-2022年湖南省長(zhǎng)沙市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷(含答案)_第1頁(yè)](http://file4.renrendoc.com/view/abe5e097244c26af17bde23685cfd428/abe5e097244c26af17bde23685cfd4281.gif)
![2021-2022年湖南省長(zhǎng)沙市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷(含答案)_第2頁(yè)](http://file4.renrendoc.com/view/abe5e097244c26af17bde23685cfd428/abe5e097244c26af17bde23685cfd4282.gif)
![2021-2022年湖南省長(zhǎng)沙市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷(含答案)_第3頁(yè)](http://file4.renrendoc.com/view/abe5e097244c26af17bde23685cfd428/abe5e097244c26af17bde23685cfd4283.gif)
![2021-2022年湖南省長(zhǎng)沙市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷(含答案)_第4頁(yè)](http://file4.renrendoc.com/view/abe5e097244c26af17bde23685cfd428/abe5e097244c26af17bde23685cfd4284.gif)
![2021-2022年湖南省長(zhǎng)沙市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷(含答案)_第5頁(yè)](http://file4.renrendoc.com/view/abe5e097244c26af17bde23685cfd428/abe5e097244c26af17bde23685cfd4285.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021-2022年湖南省長(zhǎng)沙市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.數(shù)據(jù)庫(kù)設(shè)計(jì)的四個(gè)階段是:需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)和______。A.編碼設(shè)計(jì)B.測(cè)試階段C.運(yùn)行階段D.物理設(shè)計(jì)
2.設(shè)x=011050,則x=x&01252的值是()。A.0000001000101000
B.1111110100011001
C.0000001011100010
D.1100000000101000
3.程序運(yùn)行后的輸出結(jié)果是()。A.3B.4C.5D.6
4.以下敘述中錯(cuò)誤的是______。A.C程序中的#include和#define行均不是C語(yǔ)句
B.除逗號(hào)運(yùn)算符外,賦值運(yùn)算符的優(yōu)先級(jí)最低
C.C程序中,j++;是賦值語(yǔ)句
D.C程序中,+、-、*、/、%號(hào)是算術(shù)運(yùn)算符,司用于整型和實(shí)型數(shù)的運(yùn)算
5.在具有n個(gè)結(jié)點(diǎn)的單鏈表中,實(shí)現(xiàn)()的操作,其算法的時(shí)間復(fù)雜度是O。
A.求鏈表的第i個(gè)結(jié)點(diǎn)B.在地址為P的結(jié)點(diǎn)之后插入一個(gè)結(jié)點(diǎn)C.刪除表頭結(jié)點(diǎn)D.刪除地址為P的結(jié)點(diǎn)的后繼結(jié)點(diǎn)
6.
7.有3個(gè)關(guān)系R、S和T如下.
則由關(guān)系R和S得到關(guān)系T的操作是()。A.自然連接B.差C.交D.并
8.
9.若變量已正確定義,在“if(W)Printf(“%d\n”,k);”中,以下不可替代W的是()。
A.a<>b+cB.ch=getchar()C.a==b+cD.a++
10.
11.若有定義inta=5,b=7;,則表達(dá)式a%=(b%2)運(yùn)算后,a的值為()。
A.0B.1C.11D.3
12.有以下程序:#include<stdio.h>#include<string.h>main(){charv[4][10]={“efg”,“abcd”,“mnopq”,“hijkl”},*p[4],*t;inti,j;for(i=0;i<4;i++)p[i]=v[i];for(i=0;i<3;i++) for(j=i+1;j<4;j++) if(strcmp(p[i],p[j])>0) {t=p[i];p[i]=p[j];p[j]=t}for(i=0;i<4;i++) printf(“%s”,p[i]);}程序運(yùn)行后的輸出結(jié)果是()。
A.efgabcdhijklmnopq
B.abcdefghijklmnopq
C.mnopqhijklefgabcd
D.efgabcdmnopqhijkl
13.在inta=3,int*p=&a;中,*p的值是()
A.變量a的地址值B.無(wú)意義C.變量p的地址值D.3
14.以下程序的輸出結(jié)果是()main(){staticchara[10]={"Chinese"};printf("%d",strlen(a));}
A.7B.2C.9D.10
15.以下屬于C語(yǔ)言實(shí)型常量的是()。
A.+6eB.e6+6C.6e+6D..e+6
16.在有序雙向鏈表中定位刪除一個(gè)元素的平均時(shí)間復(fù)雜度為()
A.O(1)B.O(N)C.O(logN)D.O(N*logN)
17.若已定義:inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,I;其中0≤i≤9,則對(duì)a數(shù)組元素不正確的引用是()
A.a[p-a]B.*(&a[i])C.p[i]D.a[10]
18.
19.以下選項(xiàng)中非法的表達(dá)式是()。
A.a+1=a+1
B.a=b==0
C.(Char.(100+100.
D.7<=X<60
20.以下選項(xiàng)中合法的c語(yǔ)言常量是()。
A.,C—STR’B.2014.1C.”\l.0D.2EK
二、2.填空題(20題)21.以下程序的輸出結(jié)果是【】。
intfun(int*x,intn)
{if(n==0)returnx[0];
elsereturnx[0]+fun(x+1,n-1);
}
main()
{inta[]={1,2,3,4,5,6,7};
printf("%d\n",fun(a,3));}
22.在面向?qū)ο蠓椒ㄖ?,信息隱蔽是通過(guò)對(duì)象的______性來(lái)實(shí)現(xiàn)的。
23.有以下程序
intfa(intx){returnx*x;}
intfb(intx){retumx*x*x;}
intf(int(*f1)(),int(*f2)(),intx)
{returnf2(x)-f1(x);}
main()
{inti;i=f(fa,fb,2);printf("%d\n",i);}
程序運(yùn)行后,輸出結(jié)果是【】。
24.下面程序的運(yùn)行結(jié)果是【】。
#defineN10
#defines(x)x*x
#definef(x)(x*x)
main()
{inti1,i2;
i1=1000/s(N);i2=1000/f(N);
printf("%d%d\n",i1,i2);
}
25.軟件的需求分析階段的工作,可以概括為四個(gè)方面:【】、需求分析、編寫(xiě)需求規(guī)格說(shuō)明書(shū)和需求評(píng)審。
26.以下程序的運(yùn)行結(jié)果是【】。
#include<stdio.h>
main()
{intx=1,y=0,a=0,b=0;
switch(x)
{case1:
switch(y)
{case0:a++;break;
case1:b++;break;
}
case2:a++;b++;break;
case3:a++;b++;
}
printf("a=%d,b=%d\n",a,b);
}
27.與結(jié)構(gòu)化需求分析方法相對(duì)應(yīng)的是【】方法。
28.結(jié)構(gòu)化程序設(shè)計(jì)方法的主要原則可以概括為自頂向下、逐步求精、______和限制使用goto語(yǔ)句。
29.以下程序運(yùn)行的結(jié)果是【】。
#include<conio.h>
#include<stdio.h>
#defineM100
voidfun(intm,int*a,int*n)
{inti,j=0;
for(i=1;i<=m;i++)
if(i%7==0‖i%11==0)
a[j++]=i;
*n=j;}
main()
{intaa[M],n,k;
clrscr();
fun(10,aa,&n);
for(k=0;k<n;k++)
if((k+1)%20==0)printf("\n");
elseprintf("%4d",aa[k]);
printf("\n");}
30.在面向?qū)ο蠓椒ㄖ?,類的?shí)例稱為_(kāi)_____。
31.數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式分別為_(kāi)_____模式、內(nèi)部級(jí)模式與外部級(jí)模式。
32.語(yǔ)句"int(*ptr)();"的含義是______是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)。
33.下面程序有兩個(gè)printf語(yǔ)句,如果第一個(gè)printf語(yǔ)句輸出的是194,則第二個(gè)printf語(yǔ)句的輸出結(jié)果是【】。
main()
{inta[10]={1,2,3,4,5,6,7,8,9,0},*p;
p=a;
printf("%x\n",p);
printf("%x\",p+9);
}
34.下列語(yǔ)句能循環(huán)______次。
ints=12;
while(s);
--s;
35.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,類描述的是具有相似性質(zhì)的一組【】。
36.定義inta=5,b;,則執(zhí)行表達(dá)式b=++a*--a之后,變量b的值為【】。
37.二分法查找僅限于這樣的表:表中的數(shù)據(jù)元素必須有序,其存儲(chǔ)結(jié)構(gòu)必須是______。
38.已有定義:charc='';inta=1,b;(此處c的初值為空格字符),執(zhí)行b=!c&Ra;后b的值為_(kāi)_____。
39.設(shè)在主函數(shù)中有以下定義和函數(shù)調(diào)用語(yǔ)句,且函數(shù)fun為void型,請(qǐng)寫(xiě)出函數(shù)fun的首部【】。要求形參名為b。
main()
}doubles[10][22];
intn;
┆
fun(s);
┆
}
40.以下程序的運(yùn)行結(jié)果為【】。
#defineFORMAT"%u,%u"
main()
{inta[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
printf("\n");
printf(FORMAT,**a,*a[0]);
printf(FORMAT,*(a[0]+1),*&a[0][1]);
printf(FORMAT,a[1][0],*(*(a+1)+0));
}
三、1.選擇題(20題)41.有一堆零件(個(gè)數(shù)在100到200之間),如果分成4個(gè)零件一組,則多2個(gè)零件;若分成7個(gè)零件一組,則多3個(gè)零件;若分成9個(gè)零件一組,則多5個(gè)零件。下面的程序是求這堆零件的總數(shù),請(qǐng)選擇填空。#include<stdio.h>main(){inti;for(i=100;i<200;i++)if((i-2)%4==0)if(!((i-3)%7))if(____)printf("%d",i);}
A.i%9=5B.i%9!=5C.(i-5)%9!=0D.(i-5)%9==0
42.設(shè)有定義intn1=0,n2,*p=&n2,*q=&n1;,以下賦值語(yǔ)句中與n2=n1;語(yǔ)句等價(jià)的是______。A.*p=*q;B.p=q;C.*p=&n1;D.p=*q;
43.下列定義數(shù)組的語(yǔ)句中正確的是______。
A.#definesize10charstr1[size],str2[size+2];
B.charstr[];
C.intnum['10'];
D.intn=5;inta[n][n+2];
44.關(guān)系數(shù)據(jù)庫(kù)的數(shù)據(jù)及更新操作必須遵循______等完整性規(guī)則。
A.實(shí)體完整性和參照完整性
B.參照完整性和用戶定義的完整性
C.實(shí)體完整性和用戶定義的完整性
D.實(shí)體完整性、參照完整性和用戶定義的完整性
45.以下程序的功能是()。#include<stdio.h>main(){FILE*fPl;*fp2;fp1:fopen("file1","r");fp2:fopen("file2","w");while(!Feof(fP1))fputc(fgetc(fP1),fp2);fclose(fP1);fclose(fp2);}
A.將磁盤(pán)文件的內(nèi)容顯示在屏幕上
B.將兩個(gè)磁盤(pán)文件合為一個(gè)
C.將一個(gè)磁盤(pán)文件復(fù)制到另一個(gè)磁盤(pán)文件中
D.將兩個(gè)磁盤(pán)文件合并后送屏幕
46.有以下程序段:intk=0,a=1,b=2,c=3;k=a<b?b:a;k=k>c?c:k;執(zhí)行該程序段后,k的值是______。A.3B.2C.1D.0
47.若有以下結(jié)構(gòu)體定義,則______是正確的引用或定義。structexample{intx;inty;}v1;
A.example.x=10
B.examplev2.x=10
C.structv2;v2.x=10
D.structexamplev2={10};
48.以下敘述不正確的是
A.一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成
B.一個(gè)C源程序必須包含一個(gè)main函數(shù)
C.C程序的基本組成單位是函數(shù)
D.在C程序中,注釋說(shuō)明只能位于一條語(yǔ)句的后面
49.下列程序的運(yùn)行結(jié)果為()。#include<stdio.h>voidabc(char*str){inta,b,i,j;for(i=j=0;str[i]!='\0';i++)if(str[i]!='a'str[j++]=str[i];str[j]='\0';}voidmain(){charstr[]="abcdef";abc(str);printf("str[]=%s",str);}
A.str[]=bcdefB.str[]=abcdefC.str[]=aD.str[]=ab
50.在C程序中,判邏輯值時(shí),用“非0”表示邏輯值“真”,又用“0”表示邏輯值“假”。在求邏輯值時(shí),邏輯真和邏輯假可分別表示為
A.10B.01C.非0非0D.11
51.已有定義:Mtx=3,y=4,z=5;,則表達(dá)式!(x/y)+z-1&&y+z/2的值是()。
A.6B.OC.2D.1
52.在不同進(jìn)制的四個(gè)數(shù)中,最小的一個(gè)數(shù)是()
A.(11011001)2B.(75)8C.(37)10D.(2A)16
53.若定義inta=10,則表達(dá)式a+=a-*=a的值是()。
A.0B.-180C.-100D.-90
54.下述關(guān)于C語(yǔ)言文件的操作的結(jié)論中,正確的是______。
A.對(duì)文件操作必須先關(guān)閉文件
B.對(duì)文件操作必須先打開(kāi)文件
C.對(duì)文件操作順序無(wú)要求
D.對(duì)文件操作前必須先測(cè)文件是否存在,然后再打開(kāi)文件
55.下列敘述中,錯(cuò)誤的一條是______。
A.已知i=3,執(zhí)行語(yǔ)句k=(++i)+(++i)+(++i)后,k的值為15
B.邏輯表達(dá)式!(5>3)&&(2<4)的值為0
C.表達(dá)式'c'&&'d'||!(3+4)的值為1
D.整型、實(shí)型、字符型數(shù)據(jù)可以混合運(yùn)算
56.下面語(yǔ)句的輸出結(jié)果是______。printf("%d\n",strlen("\t\"065\xff\n"));
A.14B.8C.5D.輸出項(xiàng)不合法,無(wú)正常輸出
57.main(){floatx=123.456;printf("%-5.2f\n",x);}以上程序輸出的結(jié)果是______。
A.123.4B.123.5C.123.45D.123.46
58.假定所有變量均已正確說(shuō)明,下列程序段運(yùn)行后x的值是a=d=c=0;x=35;if(!a)x=-1,elseif(b);if(c)x=3;elsex=4;
A.34B.4C.35D.3
59.設(shè)a和b均為double型變量,且a=5.5,b=2.5,則表達(dá)式(int)a+b/b的值是A.6.5B.6C.5.5D.6
60.以下程序的運(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.存在語(yǔ)法錯(cuò)誤C.Y=7D.Y=0
四、選擇題(20題)61.下列關(guān)于結(jié)構(gòu)化設(shè)計(jì)原則的描述,錯(cuò)誤的是
A.在塊和進(jìn)程的非正常出口處往往需要調(diào)用GOTO語(yǔ)句,使用GOTO語(yǔ)句使程序執(zhí)行效率提高,但是濫用GOTO語(yǔ)句確實(shí)有害,應(yīng)該避免使用GOTO語(yǔ)句
B.程序設(shè)計(jì)時(shí)應(yīng)該自頂向下,逐步求精
C.程序設(shè)計(jì)時(shí),應(yīng)該將復(fù)雜問(wèn)題進(jìn)行模塊化,就是將程序設(shè)計(jì)的總目標(biāo)分解為若干個(gè)分目標(biāo),再進(jìn)一步分解為具體的小目標(biāo)
D.在進(jìn)行程序設(shè)計(jì)時(shí),應(yīng)該盡量在一行寫(xiě)一條語(yǔ)句,盡量做到效率第一,清晰第二
62.
63.執(zhí)行下列程序中的輸出語(yǔ)句后,a的值是()。main{inta;printf(“%d\n”,(a=2*3,a*5,a+7));}A.17B.37C.6D.13
64.有以下程序:
main
{inti,j;
for(j=10;j<11;j++)
{for(i=9;i<j;i++)
if(!(j%i))break;
if(i==j-1)
printf("%d",j);
}
}
輸出結(jié)果是()。A.A.11B.10C.9D.1011
65.有以下程序:main{intx,i;for(i=l;i<=50;i++){x=i:if(x%2=0)if(x%3=0)if(X%7=0)printf(”%d,i)”;}}輸出結(jié)果是()。A.28B.27C.42D.4l
66.若fp是指向某文件的指針,且已讀到文件末尾,則庫(kù)函數(shù)feof(fp)的返回值是
A.EOFB.-1C.1D.NULL
67.在軟件開(kāi)發(fā)中,需求分析階段產(chǎn)生的主要文檔是()。A.軟件集成測(cè)試計(jì)劃B.軟件詳細(xì)設(shè)計(jì)說(shuō)明書(shū)C.用戶手冊(cè)D.軟件需求規(guī)格說(shuō)明書(shū)
68.以下變量x、y、z均為double類型且已正確賦值,不能正確表示x/(y*z)的C語(yǔ)言表達(dá)式是()。
A.x/y*zB.x*(1/(y*z))C.x/y*1/zD.x/y/z
69.有以下程序:
#include<stdio.h>
#include!(string.h>
voidfun(char*w,intm)
{charS,*pl,*p2;
p1=w;p2=w+m-;
while(pl<p2){s=*pl;*p1=*p2;*p2=s;pl++;p2-;}
}
main()
{chara[]="l23456";
fun(a,strlen(a));puts(a);
}
程序運(yùn)行后的輸出結(jié)果是()。
A.654321
B.116611
C.161616
D.l23456
70.若函數(shù)調(diào)用時(shí)的實(shí)參為變量時(shí),以下關(guān)于函數(shù)形參和實(shí)參的敘述中正確的是()。
A.函數(shù)的實(shí)參和其對(duì)應(yīng)的形參共占同一存儲(chǔ)單元
B.形參只是形式上的存在,不占用具體存儲(chǔ)單元
C.同名的實(shí)參和形參占同一存儲(chǔ)單元
D.函數(shù)的形參和實(shí)參分別占用不同的存儲(chǔ)單元
71.讀取二進(jìn)制文件的函數(shù)調(diào)用形式為:fread(buffersize,count,fp);,其中buffer代表的是()。
A.一個(gè)文件指針,指向待讀取的文件
B.一個(gè)整型變量,代表待讀取的數(shù)據(jù)的字節(jié)數(shù)
C.一個(gè)內(nèi)存塊的首地址,代表讀人數(shù)據(jù)存放的地址
D.一個(gè)內(nèi)存塊的字節(jié)數(shù)
72.設(shè)x=011050,則x=x&01252的值是()。A.0000001000101000
B.1111110100011001
C.0000001011100010
D.1100000000101000
73.有以下程序:
#include<stdio.h>
main()
{inta=7;
while(a--);
print[("%d\n",a);
}
程序運(yùn)行后的輸出結(jié)果是()。
A.-l
B.0
C.1
D.7
74.若有定義語(yǔ)句:doublea,*p=&a;,以下敘述中錯(cuò)誤的是()。
A.定義語(yǔ)句中的*號(hào)是一個(gè)間址運(yùn)算符
B.定義語(yǔ)句中的*號(hào)只是一個(gè)說(shuō)明符
C.定義語(yǔ)句中的P只能存放double類型變量的地址
D.定義語(yǔ)句中,*p=&n把變量a的地址作為初值賦給指針變量P
75.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.LoB.30C.0D.64
76.有以下程序
77.若已建立如下圖所示的單向鏈表結(jié)構(gòu):在該鏈表結(jié)構(gòu)中,指針p、s分別指向圖中所示結(jié)點(diǎn),則不能將s所指的結(jié)點(diǎn)插入到鏈表末尾仍構(gòu)成單向鏈表的語(yǔ)句組是A.p=p->next;s->next=p;p->next=s;
B.p=p->next;s->next=p->next;p->next=s;
C.s->next=NULL;p=p->next;p->next=s;
D.p=(*p).next;(*s).next=(*p).next;(*p).next=s;
78.
79.有以下程序(注:字符a的ASCIl碼值為97)}程序運(yùn)行后的輸出結(jié)果是()。
A.789B.abcC.7890D.979899
80.
五、程序改錯(cuò)題(1題)81.下列給定程序是建立一個(gè)帶頭結(jié)點(diǎn)的單向鏈表,并用隨機(jī)函數(shù)為各結(jié)點(diǎn)數(shù)據(jù)域賦值。函數(shù)proc()的作用是求出單向鏈表結(jié)點(diǎn)(不包括頭結(jié)點(diǎn))數(shù)據(jù)域中的最大值,并且作為函數(shù)值返回。請(qǐng)修改程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.三個(gè)整數(shù)a、b、c,由鍵盤(pán)輸入,輸出其中最大的數(shù)。
參考答案
1.DD)【解析】數(shù)據(jù)庫(kù)設(shè)計(jì)目前一段采用生命周期法.即將整個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開(kāi)分解成目標(biāo)獨(dú)立的若干階段,它們是:需要分析階段、概念設(shè)計(jì)階段、邏輯設(shè)計(jì)階段、物理設(shè)計(jì)階段、編碼階段、測(cè)試階段、運(yùn)行階段、進(jìn)一步修改階段。在數(shù)據(jù)庫(kù)設(shè)計(jì)中采用上面幾個(gè)階段中的前四個(gè)階段,并且重點(diǎn)以數(shù)據(jù)結(jié)構(gòu)和模型設(shè)計(jì)為主線。
2.A本題考查按位與運(yùn)算,按位與就是相同為1,不同為0,把x=011050化成二進(jìn)制為0001001000101000,把01252化成二進(jìn)制為0000001010101010,兩者相與得0000001000101000。
3.B[解析]&按位與,如果兩個(gè)相應(yīng)的二進(jìn)制位都為1.則該位的結(jié)果值為1.否則為0.按位或兩個(gè)相應(yīng)的二進(jìn)制位中只要有一個(gè)為1.該位的結(jié)果值為1.2的二進(jìn)制為0000010.4的二進(jìn)制為000000所以做或運(yùn)算結(jié)果為0000110.該數(shù)與5即00000101做與操作結(jié)果為0000100.即4.
4.D解析:“%”是求余運(yùn)算符,其兩側(cè)的數(shù)值只能為整型,所以它不能用于實(shí)型的運(yùn)算,故選項(xiàng)D錯(cuò)誤。
5.A
6.C
7.B關(guān)系之間的操作分為自然連接、投影、交、并、差等,由圖可知此操作為差操作。
8.D
9.A選項(xiàng)A是非法的表達(dá)式,C語(yǔ)言中沒(méi)有“<>”運(yùn)算符。故本題答案為A選項(xiàng)。
10.D
11.A解析:本題考查'%'運(yùn)算符的使用。運(yùn)算符'%'要求兩個(gè)運(yùn)算對(duì)象都為整型,其結(jié)果是整數(shù)除法的余數(shù)。本題中表達(dá)式ao%=(b%2)等價(jià)于a=a%o(b%2)=5%(7%2)=5%1=0。
12.Bmain函數(shù)中定義一個(gè)二維數(shù)組v,另外還定義一個(gè)指針數(shù)組p。通過(guò)for循環(huán),將v的各個(gè)行(字符串的首地址)賦給P的對(duì)應(yīng)下標(biāo)的元素。然后通過(guò)嵌套的for循環(huán),為該二維數(shù)組中存放的各個(gè)字符串進(jìn)行排序。strcmp函數(shù)返回值大于0時(shí)(p[i]>p[j])交換兩個(gè)字符串,所以每一輪內(nèi)嵌的for循環(huán),都將下標(biāo)為i的字符串放在最終的排序位置上,即排序規(guī)則是按字符串升序排列。字符串排序時(shí),是將兩個(gè)字符串自左向右逐個(gè)字符比較(按字符的ASCII值大?。钡匠霈F(xiàn)不同的字符或遇到‘\\0’為止。排序后,再將v中各個(gè)排序后的字符串輸出。所以程序輸出結(jié)果為:abcdefghijklmnopq。故本題答案為B選項(xiàng)。
13.D
14.A
15.CC語(yǔ)言的實(shí)型常量可以用小數(shù)形式、指數(shù)形式來(lái)表示。題中的選項(xiàng)都是指數(shù)形式,指數(shù)形式的一般形式為:尾數(shù)E(或e)整型指數(shù)。C語(yǔ)言規(guī)定,字母E或e之前必須要有數(shù)字,且E或e后面的指數(shù)必須為整數(shù),E或e的前后以及數(shù)字之間不得插入空格。故本題答案為C選項(xiàng)。
16.B
17.D解析:通常,引用一個(gè)數(shù)組元素可以用下標(biāo)法,如a[P-a]形式,或指針?lè)?,?(&a[i])的形式。本題中a[9]=9,a[10]顯然超出了數(shù)組范圍,注意,數(shù)組的下標(biāo)是從0開(kāi)始的。
18.B
19.A賦值運(yùn)算符的左邊只能是變量,而不能是常量或表達(dá)式。
20.B所謂常量是指在程序運(yùn)行的過(guò)程中,其值不能被改變的量。在C語(yǔ)言中,有整型常量、實(shí)型常量、字符常量和字符串常量等類型。選項(xiàng)A是字符串,但使用單引號(hào),錯(cuò)誤,選項(xiàng)c,D,為實(shí)型常量中指數(shù)形式,但指數(shù)形式e(E)之前必須是數(shù)字,之后必須為整數(shù),錯(cuò)誤。故答案為B選項(xiàng)。
21.1010解析:題目中的fun()函數(shù)直接調(diào)用了自身,所以它是遞歸函數(shù)。函數(shù)中只有一條if語(yǔ)句,意思是:若n為0,則返回x所指內(nèi)容(x[0]等價(jià)于*x),否則返回x所指內(nèi)容加上fun(x+1,n-1)。即,當(dāng)n>0時(shí),fun(x,n)=x[0]+fun(x+1,n-1)=x[0]+x[1]+fun(x+2,n-2)=…=x[0]+x[1]+…+x[n];當(dāng)n=0時(shí),fun(x,n)=x[0];當(dāng)n<0時(shí),函數(shù)將無(wú)限循環(huán)遞歸調(diào)用下去,因?yàn)閚-1下去永遠(yuǎn)也不會(huì)等于0。所以本題中fun(a,3)=a[0]+a[1]+a[2]+a[3]=12+3+4=10。故應(yīng)該填10。
22.封裝封裝
23.44解析:在主函數(shù)中調(diào)用函數(shù)f,函數(shù)f有三個(gè)參數(shù),形參f1與f2分別是兩個(gè)指向函數(shù)的指針。在f中執(zhí)行f2(x)-f1(x),實(shí)際上是執(zhí)行了fb(2)-fa(2),故執(zhí)行i=(fa,fb,2)后i的值為23-22=4。
24.100010100010解析:先將程序中的宏替換掉,兩處的宏替換后分別為i1=1000/10*10和i2=1000/(10*10),即i1=1000,i2=10,所以最后輸出的i1和i2的值分別為1000和10。
25.需求獲取需求獲取解析:軟件的需求分析階段的工作,可以概括為四個(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ū)作為需求分析的階段成果,可以為用戶、分析人員和設(shè)計(jì)人員之間的交流提供方便,可以直接支持目標(biāo)軟件系統(tǒng)的確認(rèn),又可以作為控制軟件開(kāi)發(fā)進(jìn)度的依據(jù);需求評(píng)審是對(duì)需求分析階段的工作進(jìn)行的復(fù)審,驗(yàn)證需求文檔的一致性、可行性、完整性和有效性。
26.a=2b=1a=2,b=1解析:本題考查了switch結(jié)構(gòu)的內(nèi)容。C語(yǔ)言中,程序執(zhí)行完一個(gè)case標(biāo)號(hào)的內(nèi)容后,如果沒(méi)有break語(yǔ)句,控制結(jié)構(gòu)會(huì)轉(zhuǎn)移到下一個(gè)case繼續(xù)執(zhí)行,因?yàn)閏ase常量表達(dá)式只是起語(yǔ)句標(biāo)號(hào)作用,并不是在該處進(jìn)行條件判斷。本題程序在執(zhí)行完內(nèi)部switch結(jié)構(gòu)后,繼續(xù)執(zhí)行了外部switch結(jié)構(gòu)的case2分支,最后a和b的值分別為2和1。
27.結(jié)構(gòu)化設(shè)計(jì)結(jié)構(gòu)化設(shè)計(jì)解析:與結(jié)構(gòu)化需求分析方法相對(duì)應(yīng)的是結(jié)構(gòu)化設(shè)計(jì)方法。結(jié)構(gòu)化設(shè)計(jì)就是采用最佳的可能方法設(shè)計(jì)系統(tǒng)的各個(gè)組成部分以及各個(gè)成分之間的內(nèi)部聯(lián)系的技術(shù)。
28.模塊化模塊化
29.77解析:解答本題的關(guān)鍵是要讀懂程序,要找出能被7或11整除的所有整數(shù),注意數(shù)學(xué)中的“或”和C語(yǔ)言中的“或”的區(qū)別,但在此處,if條件語(yǔ)句中用了“‖”運(yùn)算符,若要找能同時(shí)被7和11整除的所有整數(shù)則在if的條件中應(yīng)使用“&&”運(yùn)算符。
當(dāng)然,如果m的值輸入50,即表達(dá)式fun(10,aa,&n);為fun(50,aa,&n);時(shí)輸入結(jié)果為:711142122283335424449。
30.對(duì)象對(duì)象解析:類描述的是具有相似性質(zhì)的一組對(duì)象。例如,每本具體的書(shū)是一個(gè)對(duì)象,而這些具體的書(shū)都有共同的性質(zhì),它們都屬于更一般的概念“書(shū)”這一類對(duì)象。一個(gè)具體對(duì)象稱為類的實(shí)例。
31.概念(或概念級(jí))概念(或概念級(jí))
32.ptrptr解析:本題考查函數(shù)指針的概念。函數(shù)指針的定義格式是:類型標(biāo)識(shí)符(*旨針變量名)()。注:“類型標(biāo)識(shí)符”為函數(shù)返回值的類型。
33.1a61a6解析:對(duì)于指針變量的運(yùn)算,就是對(duì)地址的運(yùn)算。本題中由于指針指向的是整型變量,所以,使指針變量移動(dòng)9個(gè)位置也就是移動(dòng)18個(gè)字節(jié)。注意,本題是以十六進(jìn)制輸出的。
34.無(wú)限無(wú)限解析:分析程序“while(s)”語(yǔ)句后面有一個(gè)“;”不能執(zhí)行后面的語(yǔ)句,只是執(zhí)行空語(yǔ)句,所以s=12保持不變,因此,沒(méi)有條件限制的能循環(huán)無(wú)限次(即死循環(huán))。
35.對(duì)象對(duì)象解析:將屬性、操作相似的對(duì)象歸為類,也就是說(shuō),類是具有共同屬性、共同方法的對(duì)象的集合。
36.2525解析:#NAME?
37.順序存儲(chǔ)(順序方式存儲(chǔ))順序存儲(chǔ)(順序方式存儲(chǔ))解析:二分法查找對(duì)表的要求是有序的順序表,即第一要求是數(shù)據(jù)元素有序,第二要求是按順序方式存儲(chǔ)。
38.11解析:字符空格的ASCII碼不為0,所以本題中表達(dá)式!c的值為0,b=0&&1的結(jié)果顯然為0。
39.voidfun(double*b)或voidfun(doubleb[10][12])voidfun(double*b)或voidfun(doubleb[10][12])解析:本題考查數(shù)組名作函數(shù)參數(shù)。程序中被調(diào)用函數(shù)fun(s)的實(shí)參s是數(shù)組名,而s為double型數(shù)組名,所以函數(shù)fun的形參類型為double*。
40.113399
41.D解析:本題中需要填空的是第三個(gè)條件,即“若分成9個(gè)零件一組,則多5個(gè)零件”,當(dāng)總零件數(shù)減去5后,并與9取余為0即可滿足本題的條件。
42.A解析:題面中各變量定義后,指針變量p指向了變量n2所在的存儲(chǔ)單元,指針變量q指向了變量n1所在的存儲(chǔ)單元,要使得n1的值賦n2,可用指針變量q所指向的存儲(chǔ)單元的值賦給指針變量p所指向的存儲(chǔ)單元,即*p=*q。
43.A
44.D解析:關(guān)系模型中包括關(guān)系的數(shù)據(jù)結(jié)構(gòu)、關(guān)系的操縱和關(guān)系中的數(shù)據(jù)約束。關(guān)系完整性約束即數(shù)據(jù)完整性,包括實(shí)體完整性、參照完整性和用戶自定義完整性。
45.C解析:程序首先定義了兩個(gè)文件類型的指針fp1、fp2。為讀打開(kāi)文件filel,并讓指針fp1指向該文件;為寫(xiě)打開(kāi)文件file2,并讓指針fp2指向該文件。循環(huán)執(zhí)行從文件file1中讀取一個(gè)字符,輸出到文件file2中,直到文件file1結(jié)束。因此程序的功能是將文件file1中的內(nèi)容復(fù)制到文件file2中。
46.B解析:本題考查的知識(shí)點(diǎn)是條件表達(dá)式.條件運(yùn)算符?:是C語(yǔ)言中唯一的三目運(yùn)算符,它的規(guī)則是先計(jì)算左邊運(yùn)算分量,如果為“真”(非0),則返回中間運(yùn)算分量的值,否則返回右邊運(yùn)算分量的值。本題中因?yàn)閍<b為“真”,所以第1個(gè)條件表達(dá)式的值為b的值2,所以k=2。然后又因?yàn)閗>c為“假’,所以第2個(gè)表達(dá)式的值為k的值2。所以本題應(yīng)該選擇B。
47.D解析:在定義結(jié)構(gòu)體變量時(shí),不能只用結(jié)構(gòu)體名example或關(guān)鍵字struct進(jìn)行定義,必需要用結(jié)構(gòu)缽類型名structexample定義,在引用結(jié)構(gòu)體成員變量時(shí),需要用結(jié)構(gòu)體變量名進(jìn)行引用,所以選D。
48.D解析:本題考查C語(yǔ)言的基本基礎(chǔ)知識(shí)。在C程序中,注釋用符號(hào)“/*”開(kāi)始,而以符號(hào)“*/”結(jié)束。程序的注釋可以放在程序的任何位置。通常將注釋放在程序的開(kāi)始,以說(shuō)明本程序的功能;或者放在程序的某個(gè)語(yǔ)句后面,以對(duì)此語(yǔ)句的功能進(jìn)行描述。無(wú)論將注釋放有何處,在程序進(jìn)行編譯時(shí),編譯程序不會(huì)處理注釋的內(nèi)容;且注釋內(nèi)容也不會(huì)出現(xiàn)在目標(biāo)程序中。
49.A解析:本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。通過(guò)函數(shù)abc的執(zhí)行,將字符串中的字母a去掉,保留剩下的。由于是通過(guò)指針調(diào)用,所以改變字符串的結(jié)果。
50.A解析:在C程序中,判斷邏輯值時(shí),用非0表示真,用0表示假。邏輯表達(dá)式計(jì)算時(shí),邏輯表達(dá)式值為真是用1表示的,若邏輯表達(dá)式的值為假,則用0表示。
51.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,所以整個(gè)表達(dá)式相當(dāng)于4&&6為真,即為1,所以選項(xiàng)D正確。
52.C
53.B解析:算術(shù)運(yùn)算符的運(yùn)算規(guī)則是:從右到左的原則。所以表達(dá)式中先計(jì)算a=a-a*a的值是-90,再計(jì)算a=a+a的值是-180。
54.B解析:在C中對(duì)文件操作必須先打開(kāi)文件,待文件操作完畢后要關(guān)閉文件。對(duì)文件以讀的方式進(jìn)行打開(kāi)操作時(shí),同時(shí)會(huì)執(zhí)行文件的檢查文件是否存在,不存在將會(huì)返回空的文件指針,如果對(duì)文件以寫(xiě)的方式打開(kāi)時(shí),文件不存在,將會(huì)自動(dòng)創(chuàng)建文件,因此在C中打開(kāi)文件前不必對(duì)其檢查文件是否存在,故答案為B。
55.A
56.C解析:在C語(yǔ)言中,以“\\”開(kāi)頭的字符均為轉(zhuǎn)義字符,其中“\\”后可跟1~3位八進(jìn)制數(shù)或在“\\”后跟字母x及1~2位十六進(jìn)制數(shù),以此來(lái)代表一個(gè)特定的字符。
57.D解析:f格式符,用來(lái)輸出實(shí)數(shù),以小數(shù)形式式輸出?!?-m.nf”的含義是:輸出數(shù)據(jù)共占m列,其中n位小數(shù),如果輸出位數(shù)小于m,則右端補(bǔ)空恪。如果總長(zhǎng)度大于列數(shù),則按實(shí)際情況四舍五入輸出。
58.B
59.D解析:本題考查的知識(shí)點(diǎn)是運(yùn)算符的優(yōu)先級(jí)。在這個(gè)表達(dá)式中,優(yōu)先級(jí)最高的是(int)a,也就是對(duì)5.5取整,結(jié)果是5,其次是b/b,即2.5/2.5,結(jié)果是1.000000,最后相加結(jié)果為6.000000(表達(dá)式的最終結(jié)果為實(shí)型),所以4個(gè)選項(xiàng)中D正確。
60.C解析:考查帶參數(shù)的宏替換。宏替換不像函數(shù)調(diào)用要進(jìn)行參數(shù)值的計(jì)算、傳遞等,而只是簡(jiǎn)單按照原格式進(jìn)行字符串的替換。
61.D在結(jié)構(gòu)化程序設(shè)計(jì)過(guò)程中,我們可以根據(jù)下面的原則進(jìn)行:
(1)使用語(yǔ)言中的順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)等有限的基本控制結(jié)構(gòu)表示程序邏輯。
(2)選用的控制結(jié)構(gòu)只準(zhǔn)許有一個(gè)入口和一個(gè)出口。
(3)復(fù)雜結(jié)構(gòu)應(yīng)該用基本控制結(jié)構(gòu)進(jìn)行組合嵌套來(lái)實(shí)現(xiàn)。
(4)語(yǔ)言中沒(méi)有的控制結(jié)構(gòu)可以用一段等價(jià)的程序段來(lái)模擬,但是要求程序段在整個(gè)系統(tǒng)中前后一致。
(5)嚴(yán)格限制GOTO語(yǔ)句。
(6)在編寫(xiě)程序時(shí),強(qiáng)調(diào)使用幾種基本的控制結(jié)構(gòu),通過(guò)組合嵌套,形成程序的控制結(jié)構(gòu)。
(7)在程序設(shè)計(jì)過(guò)程中,盡量采用自頂向下和逐步細(xì)化的原則,由粗到細(xì),一步步展開(kāi)。把一個(gè)模塊的功能逐步分解,細(xì)化為一系列具體的步驟,進(jìn)而翻譯成一系列用某種程序設(shè)計(jì)語(yǔ)言寫(xiě)成的源程序。
總之,在結(jié)構(gòu)化程序設(shè)計(jì)的過(guò)程中,要將清晰放在第一位。因此,本題中的答案D是不正確的。
62.D
63.C本題考查逗號(hào)表達(dá)式。程序輸出時(shí)輸出一個(gè)%d,所以輸出第一個(gè)a的值與后續(xù)無(wú)關(guān)。本題考查逗號(hào)表達(dá)式。本題的返回值是a+7,a=2*3=6,a+7=13(注意:本題問(wèn)的是a的值,而不是程序的輸出值)。
64.B本題考多循環(huán)的使用,當(dāng)j=10,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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年金剛石膜-聲表面波器件(SAW)項(xiàng)目規(guī)劃申請(qǐng)報(bào)告模板
- 2025年絕緣材料:絕緣套管項(xiàng)目提案報(bào)告模范
- 2025年個(gè)體經(jīng)營(yíng)物流配送協(xié)議
- 2025年耐高溫可加工陶瓷項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告
- 2025年發(fā)泡消泡劑項(xiàng)目規(guī)劃申請(qǐng)報(bào)告
- 2025年授權(quán)代理業(yè)務(wù)綜合合同范本
- 2025年建筑器材租賃合同標(biāo)桿
- 2025年倉(cāng)儲(chǔ)物流服務(wù)合作協(xié)議合同
- 2025年工業(yè)外包合同中的環(huán)境管理措施
- 2025年城市綠化養(yǎng)護(hù)服務(wù)合同文本
- 2024年01月江西2024年江西銀行贛州分行招考筆試歷年參考題庫(kù)附帶答案詳解
- 初三數(shù)學(xué)一元二次方程應(yīng)用題附答案
- 教職工安全管理培訓(xùn)
- 云南省曲靖市羅平縣2024-2025學(xué)年高二上學(xué)期期末地理試題( 含答案)
- 2025年春新人教PEP版英語(yǔ)三年級(jí)下冊(cè)課件 Unit 1 Part C 第8課時(shí) Reading time
- 中國(guó)糖尿病防治指南(2024版)要點(diǎn)解讀
- Unit 1 Nice boys and girls【知識(shí)精研】-一年級(jí)英語(yǔ)下學(xué)期(人教PEP版一起)
- 《口腔科學(xué)緒論》課件
- 《消防檢查指導(dǎo)手冊(cè)》(2024版)
- 2024年萍鄉(xiāng)衛(wèi)生職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)標(biāo)準(zhǔn)卷
- 粵教粵科版三年級(jí)下冊(cè)科學(xué)全冊(cè)課時(shí)練(同步練習(xí))
評(píng)論
0/150
提交評(píng)論