版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021年湖北省黃岡市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.若有定義“inta=3;doubleb=0.1263;charch=‘a(chǎn)’;”,則以下選項(xiàng)中敘述有錯(cuò)的是()。
A.逗號(hào)表達(dá)式的計(jì)算結(jié)果是最后一個(gè)表達(dá)式的運(yùn)算結(jié)果
B.運(yùn)算符“%”只能對(duì)整數(shù)類型的變量進(jìn)行運(yùn)算
C.語(yǔ)句“ch=(unsignedint)a+b;”是對(duì)a與b之和進(jìn)行強(qiáng)制類型轉(zhuǎn)換,結(jié)果賦值給變量ch
D.復(fù)合運(yùn)算“a*=b+ch”是將變量b、ch之和與a相乘,結(jié)果再賦值給a
2.設(shè)一棵二叉樹(shù)共有50個(gè)葉子結(jié)點(diǎn)(終端結(jié)點(diǎn)),則共有___個(gè)度為2的結(jié)點(diǎn)。
A.25B.49C.50D.51
3.有以下程序main()inta[10]={1,2,3,4,5,6,7,8,9,10},*p=.&a[3],*q=p+2;printf("%d\n",*p+*q);程序運(yùn)行后輸出結(jié)查是
A.16B.10C.8D.6
4.以下程序運(yùn)行后的輸出結(jié)果是()。
A.2B.1C.3D.O
5.某線性表中最常用的操作是在最后一個(gè)元素之后插入一個(gè)元素和刪除第一個(gè)元素,則采用()存儲(chǔ)方式最節(jié)省運(yùn)算時(shí)間。
A.單鏈表B.僅有頭指針的單循環(huán)鏈表C.雙鏈表D.僅有尾指針的單循環(huán)鏈表
6.下面程序的運(yùn)行結(jié)果是______。#include<stdio.h>#include<string.h>fun(char*w,intn){chart,*s1,*s2;s1=w;s2=w+n-1;while(s1<s2){t=*s1++;*s1=*s2--;*s2=t;}}main(){char*p;p="1234567";fun(p,strlen(p));puts(p);}
A.7654321B.1714171C.1711717D.7177171
7.
8.
9.若以下選項(xiàng)中的變量已正確定義,則正確的賦值語(yǔ)句是()。
A.x1=26.8%3B.1+2=x2C.x3=0x12D.x4=1+2=3
10.設(shè)有定義:intk=1,m=2;noatf=7;則下列選項(xiàng)中錯(cuò)誤的表達(dá)式是()。
A.k=k>=kB.-k++C.k%int(f)D.k>=f>=m
11.已知char**s,下面正確的語(yǔ)句是()。A.A.s="ABCDEF";
B.*s="ABCDEF";
C.**s="ABCDEF";
D.*s='A';
12.隊(duì)和棧的主要區(qū)別是________
A.邏輯結(jié)構(gòu)不同B.存儲(chǔ)結(jié)構(gòu)不同C.所包含的運(yùn)算個(gè)數(shù)不同D.限定插入和刪除的位置不同
13.以下敘述正確的是
A.continue語(yǔ)句的作用是結(jié)束整個(gè)循環(huán)的執(zhí)行
B.只能在循環(huán)體內(nèi)和switch語(yǔ)句體內(nèi)使用break語(yǔ)句
C.在循環(huán)體內(nèi)使用break語(yǔ)句或continue語(yǔ)句的作用相同
D.從多層循環(huán)嵌套中退出時(shí),只能使用goto語(yǔ)句
14.(7-6-3-5-4-1-2)堆排序,升序排列,3的位置改變幾次()
A.1B.2C.3D.4E.5F.6
15.
16.設(shè)有定義:int?x=2,以下表達(dá)式中,值不為6的是()。
A.2*<.x+=2B.x++.2*xC.x=x*(1+x)D.x*=x+1
17.以下敘述中錯(cuò)誤的是()。
A.在同一源文件中,函數(shù)名必須唯一
B.凡是帶有返回值的庫(kù)函數(shù),都不能通過(guò)加分號(hào)而作為獨(dú)立的語(yǔ)句出現(xiàn)
C.不同函數(shù)中的形式參數(shù)可以同名
D.返回基本數(shù)據(jù)類型的庫(kù)函數(shù)的調(diào)用,均可以出現(xiàn)在賦值號(hào)右邊的表達(dá)式中
18.程序設(shè)計(jì)的任務(wù)包括()。
A.編寫程序代碼并上機(jī)調(diào)試B.確定所用數(shù)據(jù)結(jié)構(gòu)C.確定所用算法D.以上選項(xiàng)均正確
19.已知有double型變量x=2.5,y=4.7,整型變量a=7,則表達(dá)式x+a%3*(int)(x+y)%2/4的值是()。
A.2.4B.2.5C.2.75D.0
20.已知i,j,k為int型變量,若從鍵盤輸入:1,2,3<回車>,使i的值為1,j的值為2,k的值為3,以下選項(xiàng)中正確的輸入語(yǔ)句是A.scanf("%2d%2d%2d",&i,&j,&k);
B.scanf("%d%d%d",&i,&j,&k);
C.scanf("%d,%d,%d",&i,&j,&k);
D.scanf("i=%d,j=%d,k=%d",&i,&j,&k);
二、2.填空題(20題)21.以下程序的輸出結(jié)果是【】。
fun(intx,inty,intz)
{z=x*x+y*y;}
main()
{inta=31;
fun(6,3,a)
printf("%d,a)
}
22.程序的功能是將文件filel.c的內(nèi)容輸出到屏幕上并復(fù)制到文件file2.c中,請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{FILE【】;
fp1=fopen("filel.c","r");
fp2=fopen("file2.c","w");
while(!feof(fp1))putchar(getc(fp1));
rewind(fp1);
while(!feof(fp1))putc(【】);
fclose(fp1);
fclose(fp2);
}
23.下列程序的輸出結(jié)果是______。
10ngfun5(intn)
{longs;
if((n==1)‖(n==2))
s=2;
else
s=n+fun5(n-1);
return(s);
}
main()
{longx;
x=fun5(4);
printf("%1d\n",x);}
24.【】是數(shù)據(jù)庫(kù)設(shè)計(jì)的核心。
25.下列程序的輸出結(jié)果是______。
main()
{inta=2,b=4,e=6;
int*p1=&a,*p2=&b,*p;
*(p=&c)=*p1*(*p2);
printf("%d\n",c);
}
26.C語(yǔ)言用于結(jié)構(gòu)化程序設(shè)計(jì)的3種基本結(jié)構(gòu)是______、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。
27.下列程序的運(yùn)行結(jié)果是_______。
main()
{intx=1,y=2,z=3;
printf("%d,",x<y?y:x);
primf("%d,",z<y?x++:y++);
primf("%d,%d",x,y);
}
28.設(shè)Y是int型變量,請(qǐng)寫出判斷Y為奇數(shù)的關(guān)系表達(dá)【】。
29.下列程序執(zhí)行后輸出的結(jié)果是【】。
main()
{intarr[10],i,k=0);
fot(i=0;i<10;i++)art[i]=i;
for(i=1:i<4;i++)k+=arr[i]+i;
printf("%d\n",k);
}
30.數(shù)據(jù)庫(kù)理論中,數(shù)據(jù)的獨(dú)立性一般可分為物理獨(dú)立性和______。
31.設(shè)有定義“stmct{inta;floatb;charc}abc,*p_abc=&abc;”,則對(duì)結(jié)構(gòu)體成員a的引用方法可以是abc.a和p_abc______。
32.#define命令出現(xiàn)在程序中函數(shù)的外面,宏名的有效范圍為_(kāi)_____。
33.在宏定義#definePI3.14159中,用宏名PI代替一個(gè)______。
34.以下程序運(yùn)行后的輸出結(jié)果是______。
fun(intx)
{if(x/2>0)fun(x/2);
printf("%d",x);
}
main()
{fun(6);}
35.診斷和改正程序中錯(cuò)誤的工作通常稱為【】。
36.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{chars[]="9876",*p;
for(p=s;p<s+2;p++)printf("%s\n",p);
}
37.隊(duì)列是限定在表的一端進(jìn)行插入和在另一端進(jìn)行刪除操作的線性表。允許刪除的一端稱作()。
38.對(duì)軟件是否能達(dá)到用戶所期望的要求的測(cè)試稱為【】。
39.以下程序的輸出結(jié)果是【】。
#include<stdio.h>
main()
{structstru
{inta;
floatb;
chard[4];
};
printf("%d\n",sizeof(structstru));}
40.下列程序的功能是將字符串s中所有的字符c刪除。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{chars[80];
inti,j;
gets(S);
for(i=j(luò)0;s[i]!'\0';i++)
if(s[i]!='c')______;
s[j]='\0;
puts(S);
}
三、1.選擇題(20題)41.算法一般都可以用______控制結(jié)構(gòu)組合而成。
A.循環(huán)、分支、遞歸B.順序、循環(huán)、嵌套C.循環(huán)、遞歸、選擇D.順序、選擇、循環(huán)
42.以下程序的輸出結(jié)果是()structHAR{intx,y;structHAR*p;}h[2];main(){h[0].x=1;h[0].y=2;h[1].x=3;h[1].y=4;h[0].p=&h[1];h[1].p=h;printf("%d%d\n"h[0].p)->x,(h[1].p)->y);}
A.12B.23C.14D.32
43.下列選項(xiàng)中合法的賦值語(yǔ)句是()。
A.a=b=34B.a=34,b=34C.i-1;D.m=(int)(x+y);
44.軟件需求分析階段的工作,可以分為4個(gè)方面:需求獲取、需求分析、編寫需求規(guī)格說(shuō)明書(shū)以及()。
A.階段性報(bào)告B.需求評(píng)審C.總結(jié)D.都不正確
45.棧和隊(duì)列的共同點(diǎn)是()。
A.都是先進(jìn)后出B.都是先進(jìn)先出C.只允許在端點(diǎn)處插入和刪除元素D.沒(méi)有共同點(diǎn)
46.若以“a+”方式打開(kāi)一個(gè)已存在的文件,則下列敘述正確的是()。
A.文件打開(kāi)時(shí),原有文件內(nèi)容不被刪除,位置指針移到文件末尾,可以進(jìn)行添加或讀操作
B.文件打開(kāi)時(shí),原有文件內(nèi)容不被刪除,只能進(jìn)行讀操作
C.文件打開(kāi)時(shí),原有文件內(nèi)容被刪除,只能進(jìn)行寫操作
D.以上三種說(shuō)法都不正確
47.在一棵二叉樹(shù)上,第5層的結(jié)點(diǎn)數(shù)最多是()A.8B.9C.15D.16
48.有以下程序:#include<stdio.h>main(){chars[]="ABCD",*p;for(p=s+1;p<s+4;p++)pfintf("%s\n",p);}
A.ABCDBCDCDDB.ABCC.BCDD.BCDCDD
49.簡(jiǎn)單的交換排序方法是()。
A.快速排序B.選擇排序C.堆排序D.冒泡排序
50.有以下程序main(){chara[]={'a','b','c','d','e','f','g','h','\0'};inti,j;i=sizeof(a);j=strlen(a);printf("%d,%d\b",i,j);}程序運(yùn)行后的輸出結(jié)果是
A.9,9B.8,9C.1,8D.9,8
51.下面程序的功能是輸出以下形式的金字塔圖案:****************main(){inti,j;for(i=1;i<=4;i++;){for(j=1;j<=4-i;j++)printf("");for(j=1;;j<=________;j++)printf("*");printf("\n");}}在下劃線處應(yīng)填入的是______。
A.iB.2*i-1C.2*i+1D.i+2
52.若函數(shù)調(diào)用時(shí),參數(shù)為基本數(shù)據(jù)類型的變量,下列敘述中正確的是()。
A.實(shí)參與其對(duì)應(yīng)的形參共占存儲(chǔ)單元
B.只有當(dāng)實(shí)參與其對(duì)應(yīng)的形參同名時(shí)才共占存儲(chǔ)單元
C.實(shí)參與其對(duì)應(yīng)的形參分別占用不同的存儲(chǔ)單元
D.實(shí)參將數(shù)據(jù)傳遞給形參后,立即釋放原先占用的存儲(chǔ)單元
53.以下合法的賦值語(yǔ)句是()
A.x=y=100B.d--;C.x+y;D.c=int(a+b);
54.定義如下變量和數(shù)組:intk;inta[3][3]={9,8,7,6,5,4,3,2,1};則下面語(yǔ)句的輸出結(jié)果是()。for(k=0;k<3;k++)printf("%d",a[k][k]);
A.753B.951C.963D.741
55.若x,i,j和k都是int型變量,則計(jì)算表達(dá)式x=(i=4,j=16,k=32)后,x的值為()。
A.4B.16C.32D.52
56.若有定義血b[8],*p=b;則p+6表示()。
A.數(shù)組元素b[6]的值B.數(shù)組元素b[6]的地址C.數(shù)組元素b[7]的地址D.數(shù)組元素b[0]的值加上6
57.C語(yǔ)言結(jié)構(gòu)體類型變量在程序運(yùn)行期間
A.TC環(huán)境在內(nèi)存中僅僅開(kāi)辟一個(gè)存放結(jié)構(gòu)體變量地址的單元
B.所有的成員一直駐留在內(nèi)存中
C.只有最開(kāi)始的成員駐留在內(nèi)存中
D.部分成員駐留在內(nèi)存中
58.軟件詳細(xì)設(shè)計(jì)的主要任務(wù)是確定每個(gè)模塊的()。
A.算法和使用的數(shù)據(jù)結(jié)構(gòu)B.外部接口C.功能D.編程
59.下列敘述中,不屬于軟件需求規(guī)格說(shuō)明書(shū)的作用的是()
A.便于用戶,開(kāi)發(fā)人員進(jìn)行理解和交流
B.反映出用戶問(wèn)題的結(jié)構(gòu),可以作為軟件開(kāi)發(fā)工作的基礎(chǔ)和依據(jù)
C.作為確認(rèn)測(cè)試和驗(yàn)收的依據(jù)
D.便于開(kāi)發(fā)人員進(jìn)行需求分析
60.下列關(guān)系運(yùn)算中,能使經(jīng)運(yùn)算后得到的新關(guān)系中元組個(gè)數(shù)少于原來(lái)關(guān)系中元組個(gè)數(shù)的是()。
A.選擇B.投影C.連接D.并
四、選擇題(20題)61.以下選項(xiàng)中,能用作數(shù)據(jù)常量的是______。A.o115B.0118C.1.5e1.5D.115L
62.以下選項(xiàng)中,能表示邏輯值“假”的是()
A.1B.0.000001C.0D.100.0
63.
64.下列關(guān)于C語(yǔ)言的敘述錯(cuò)誤的是()。
A)大寫字母和小寫字母的意義相同
B)不同類型的變量可以在一個(gè)表達(dá)式中
C)在賦值表達(dá)式中等號(hào)(=)左邊的變量和右邊的值可以是不同類型
D)同一個(gè)運(yùn)算符號(hào)在不同的場(chǎng)合可以有不同的含義
65.有以下程序
66.
67.
68.設(shè)變量已正確定義并賦值,以下正確的表達(dá)式是()。
A.X=Y+z+5,++YB.int(15.8%5)C.X=Y*5=X+ZD.X=25%5.0
69.
70.(24)對(duì)建立良好的程序設(shè)計(jì)風(fēng)格,下面描述正確的是()
A.程序應(yīng)簡(jiǎn)單、清晰、可讀性好
B.符號(hào)名的命名要符合語(yǔ)法
C.充分考慮程序的執(zhí)行效率
D.程序的注釋可有可無(wú)
71.有以下函數(shù)intaaa(char*s){char*t=s;while(*t+t);t--:return(t-s);}以下關(guān)于aaa函數(shù)的功能敘述正確的是()。A.求字符串S的長(zhǎng)度B.比較兩個(gè)串的大小C.將串S復(fù)制到串tD.求字符串S所占字節(jié)數(shù)
72.
73.以下程序的輸出結(jié)果是()。
A.1B.7C.9D.13
74.已有定義:charc;,程序前面已在命令行中包含ctype.h文件,不能用于判斷e中的字符是否為大寫字母的表達(dá)式是()。
A.isupper(c)
B.A<=c<=Z
C.A<=cc<=Z
D.c<=(z-32)(a-32)<=c
75.
76.
77.以下關(guān)于typedef的敘述錯(cuò)誤的是()。A.用tyFedef可以增加新類型
B.typedef只是將已存在的類型用一個(gè)新的名字來(lái)代表
C.用typedef可以為各種類型說(shuō)明一個(gè)新名,但不能用來(lái)為變量說(shuō)明一個(gè)新名
D.用typedef為類型說(shuō)明一個(gè)新名,通常可以增加程序的可讀性
78.軟件生命周期是指()。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ò)程
79.語(yǔ)句:“printf("%d",(a=)&&(b=-2));”的輸出結(jié)果是()。A.A.無(wú)輸出B.結(jié)果是不確定C.-1D.1
80.
五、程序改錯(cuò)題(1題)81.下列給定程序中函數(shù)fun()的功能是:求出如下分?jǐn)?shù)序列的前n項(xiàng)之和,結(jié)果通過(guò)函數(shù)值返回。例如,若n=5,則應(yīng)輸出8.391667。請(qǐng)改正程序中的錯(cuò)誤,使其得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!試題程序:
六、程序設(shè)計(jì)題(1題)82.編寫函數(shù)fun(),其功能是:求出1~1000中能被7或11整除,但不能同時(shí)被7和ll整除的所有整數(shù),并將其放在a所指的數(shù)組中,通過(guò)n返回這些數(shù)的個(gè)數(shù)。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入所編寫的若干語(yǔ)句。試題程序:
參考答案
1.C逗號(hào)表達(dá)式的計(jì)算結(jié)果是最后一個(gè)表達(dá)式的運(yùn)算結(jié)果,選項(xiàng)A正確;運(yùn)算符“%”是求余運(yùn)算符,只能對(duì)整數(shù)類型的變量進(jìn)行運(yùn)算,選項(xiàng)B正確;在語(yǔ)句“ch=(unsignedint)a+b”中,圓括號(hào)優(yōu)先級(jí)最高,所以首先將a強(qiáng)制轉(zhuǎn)換成無(wú)符號(hào)整型,再與b相加,結(jié)果賦值給ch,選項(xiàng)C錯(cuò)誤;復(fù)合運(yùn)算“a*=b+ch”,先計(jì)算“b+ch”的值,再將a與b、ch之和相乘,結(jié)果再賦值給a,選項(xiàng)D正確。故本題答案為C選項(xiàng)。
2.B難易程度:易
3.B解析:本題考查的是指針的簡(jiǎn)單應(yīng)用。題目中首先定義了一個(gè)int型數(shù)組a并初始化了,然后定義了兩個(gè)指針變量p和q,并分別初始化p為指向數(shù)組元素a[3]、q指向p后面的第2個(gè)元素即指向a[5]。所以最終輸出的值為a[3]+a[5]的值10。應(yīng)該選B。
4.A參數(shù)r的傳遞是地址傳遞,函數(shù)調(diào)用會(huì)改變其值。函數(shù)f的功能是:判斷n是否為3或5的倍數(shù),如果是,則將指針r所指的內(nèi)存空間賦值為n除以3或5的商;否則n遞減,直到它可以被3或5整除。初始時(shí)調(diào)用函數(shù)f(7,&r);n=7,執(zhí)行else子句,調(diào)用f(6,&r1);后n=6,執(zhí)行語(yǔ)句if(n%3==0)r1=n/3;,此后執(zhí)行語(yǔ)句*r=rl;。所以r=6/3=2。
5.D
6.C
7.D
8.D
9.C解析:賦值的一般形式為:變量名:表達(dá)式;,賦值的方向?yàn)橛捎蚁蜃?,即將:右?cè)表達(dá)式的值賦給:左側(cè)的變量,執(zhí)行步驟是先計(jì)算再賦值。選項(xiàng)A中運(yùn)算符%的運(yùn)算對(duì)象必須為整數(shù),而選項(xiàng)A中26.8不為整數(shù),故選項(xiàng)A不正確;選項(xiàng)B將一個(gè)變量賦值給一個(gè)常量,這在C語(yǔ)言中是不允許的,故選項(xiàng)B不正確;選項(xiàng)D中也是將一個(gè)常量3賦值給一個(gè)常量,故選項(xiàng)D不正確;所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。
10.C解析:在C語(yǔ)言中,求余運(yùn)算符“%”兩邊的運(yùn)算對(duì)象都應(yīng)為整型數(shù)據(jù),所以需要對(duì)變量f進(jìn)行強(qiáng)制類型轉(zhuǎn)換,正確的寫法為k%(int)f。在C語(yǔ)言中,邏輯運(yùn)算符與賦值運(yùn)算符、算術(shù)運(yùn)算符、關(guān)系運(yùn)算符之間從高到低的運(yùn)算優(yōu)先次序是:!(邏輯“非”)、算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、&&(邏輯“與”)、‖(邏輯“或”)、賦值運(yùn)算符。根據(jù)運(yùn)算符的優(yōu)先級(jí)與結(jié)合性,對(duì)于選項(xiàng)A),先計(jì)算k>=k的值(為真,即1),再用1對(duì)k進(jìn)行賦值。對(duì)于選取項(xiàng)B),先計(jì)算k什的值,再對(duì)其取負(fù)數(shù)。對(duì)于選項(xiàng)D),先計(jì)算k>=f的值(為假,即0),再用0與m進(jìn)行比較,故最終結(jié)果為0。
11.C
12.D
13.B解析:continue是結(jié)束本次循環(huán),直接進(jìn)入到下次循環(huán)中,break用于循環(huán)語(yǔ)句中的作用是直接跳出本層循環(huán),能從多層循環(huán)中退出的語(yǔ)句除了goto語(yǔ)句,exit,return等語(yǔ)句也能直接跳出多層循環(huán)。注意:continue和break語(yǔ)句在while語(yǔ)句中的作用。
14.B
15.B
16.A?A)選項(xiàng)中逗號(hào)表達(dá)式先計(jì)算第一表達(dá)式2*x,然后計(jì)算表達(dá)式x+=2的值,即x=x+2即4,整個(gè)逗號(hào)表達(dá)式為第二個(gè)表達(dá)式的值4,所以選A)。B)選項(xiàng)中首先計(jì)算逗號(hào)表達(dá)式中第一一個(gè)表達(dá)式x++,此時(shí)x為3,再執(zhí)行第二個(gè)表達(dá)式2*x=2*3=6,所以逗號(hào)表達(dá)式為第二個(gè)表達(dá)式的值6。C)選項(xiàng)的賦值表達(dá)式可以表示為x=x*(1+x)=2*(1+2)=6。D)選項(xiàng)中的表達(dá)式可以表示為x=x*(x+1)=2*3=6。
17.B在同一源文件中,函數(shù)名必須唯一,選項(xiàng)A正確。函數(shù)的調(diào)用有兩種形式:①出現(xiàn)在表達(dá)式中,可以出現(xiàn)在賦值號(hào)右邊的表達(dá)式中;②作為獨(dú)立的語(yǔ)句完成某種操作。因此選項(xiàng)B錯(cuò)誤,選項(xiàng)D正確。不同函數(shù)中的形參可以同名,它們的作用域都限制在各自的函數(shù)體內(nèi),選項(xiàng)C正確。故本題答案為B選項(xiàng)。
18.D程序設(shè)計(jì)是一門技術(shù),需要相應(yīng)的理論、技術(shù)、方法和工具來(lái)支持。程序設(shè)計(jì)的任務(wù)包括選項(xiàng)A)、B)、c)等方面。
19.B
20.C
21.3131解析:在函數(shù)調(diào)用時(shí),形參值和改變,不會(huì)改變實(shí)參的值。
22.*fp1*fp2getc(fp1)fp2*fp1,*fp2\r\ngetc(fp1),fp2解析:本題主要考查函數(shù)intputc(intch,FILE*fp)的功能,把ch中的字符輸出到fp所指文件,以及intgetc(FILE*fp),從fp所指文件中讀取一個(gè)字符。
23.99解析:考查ifelse語(yǔ)句,n==4不滿足條件,所以fun5(4)=4+fun5(3),n==3也不滿足條件,fun5(3)=3+fun5(2),n==2滿足條件fun5(2)=2,故x=4+3+2=9。
24.數(shù)據(jù)模型數(shù)據(jù)模型
25.88解析:本程序定義了3個(gè)指針變量p1、p2、p,并且將a、b的地址分別賦給p1、p2,則*p1=a=2,*p2=b=4,所以表達(dá)式*p1*(*p2)的值是8。在賦值語(yǔ)句的左邊是*(p=&c),即使指針p指向了變量c,因而*(P)代表了c的存儲(chǔ)單元,賦值語(yǔ)句“*(p=&c)=*p1*(*p2);”是把整數(shù)8賦給了變量c。
26.順序結(jié)構(gòu)順序結(jié)構(gòu)解析:結(jié)構(gòu)化程序有3種摹本結(jié)構(gòu),即順序結(jié)構(gòu)、選擇結(jié)構(gòu)(包括if語(yǔ)句和switch語(yǔ)句)和循環(huán)結(jié)構(gòu)(包括for語(yǔ)句、while語(yǔ)句、do…while語(yǔ)句)。
27.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。
28.Y%2=1或Y%2!=0Y%2=1或Y%2!=0解析:判斷變量是否為奇數(shù)可以用變量與2取模,判斷結(jié)果是為1或不為0。本題具體做法如下:Y%2=1或Y%2!=0。
29.1212解析:本題的第一個(gè)for循環(huán)用于給數(shù)組arr賦初值,第二個(gè)for循環(huán)用于求和運(yùn)算。由于第二個(gè)for循環(huán)初始值為1,而循環(huán)條件為i<4,所以求的是arr[1]到arr[3]及i的和,所以輸出結(jié)果為12。
30.邏輯獨(dú)立性邏輯獨(dú)立性解析:數(shù)據(jù)的獨(dú)立性一般可分為物理獨(dú)立性和邏輯獨(dú)立性。
31.若結(jié)構(gòu)體變量abc有成員a,并有指針p_abc指向結(jié)構(gòu)變量abe,則引用變量abe成員s的標(biāo)記形式有abe.a和p_abc->a。
32.從定義到本源文件結(jié)束從定義到本源文件結(jié)束解析:C語(yǔ)言規(guī)定,宏名的有效范圍為從定義宏到本源程序結(jié)束。
33.字符串字符串解析:本題考查字符替換格式:#define標(biāo)識(shí)符字符串。
34.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。
35.程序調(diào)試程序調(diào)試解析:程序調(diào)試的任務(wù)是診斷和改正程序中的錯(cuò)誤。程序調(diào)試與軟件測(cè)試不同,軟件測(cè)試是盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤。先要發(fā)現(xiàn)軟件的錯(cuò)誤,然后借助于調(diào)試工具找出軟件錯(cuò)誤的具體位置。軟件測(cè)試貫穿整個(gè)軟件生命期,而調(diào)試主要在開(kāi)發(fā)階段。
36.98768769876\r\n876解析:指針是一種數(shù)據(jù)類型,這種數(shù)據(jù)類型的變量用來(lái)存放內(nèi)存中分配的存儲(chǔ)單元的首地址。指針的定義:
類型說(shuō)明符*指針變量名;
37.隊(duì)頭隊(duì)頭解析:隊(duì)列是只允許在一端刪除,在另一端插入的順序表,在隊(duì)列中,允許插入的一端叫做“隊(duì)尾”,允許刪除的一端叫做“隊(duì)頭”。
38.有效性測(cè)試有效性測(cè)試
39.14
40.s[j++]=s[i]s[j++]=s[i]解析:循環(huán)開(kāi)始后如果數(shù)組s中儲(chǔ)存值與字符c相同,則i++直接跳過(guò)當(dāng)前值;如果不相同,則將當(dāng)前值賦予數(shù)組指定位置,并通過(guò).j++將下標(biāo)加1,指向下一元素要存儲(chǔ)的位置。
41.D解析:算法的控制結(jié)構(gòu)給出了算法的基本框架,不僅決定了算法中各操作的執(zhí)行順序,也直接反映了算法的設(shè)計(jì)是否符合結(jié)構(gòu)化原則。一個(gè)算法一般都可以用順序、選擇、循環(huán)三種基本控制結(jié)構(gòu)組合而成。
42.D解析:本題中是一個(gè)含有兩個(gè)結(jié)點(diǎn)的循環(huán)鏈表。
C語(yǔ)言中結(jié)構(gòu)體的定義為:
struct結(jié)構(gòu)題類型名
{
成員項(xiàng)表;
};
43.D解析:選項(xiàng)A)是一個(gè)合法的賦值表達(dá)式,但結(jié)尾沒(méi)加分號(hào),所以它不是一個(gè)賦值語(yǔ)句;選項(xiàng)B)是一個(gè)逗號(hào)表達(dá)式,也因?yàn)榻Y(jié)尾沒(méi)有加分號(hào)而不是合法的賦值語(yǔ)句,選項(xiàng)C)是一個(gè)算術(shù)表達(dá)式,雖然有分號(hào),但這個(gè)表達(dá)式?jīng)]有賦值操作,因此,也不是一條賦值語(yǔ)句。
44.B解析:需求分析是軟件定義時(shí)期的最后一個(gè)階段。可以概括為4個(gè)方面:①需求獲?。虎谛枨蠓治?;⑧編寫需求規(guī)格說(shuō)明書(shū);④需求評(píng)審。
45.C棧和隊(duì)列都是一種特殊的操作受限的線性表,只允許在端點(diǎn)處進(jìn)行插入和刪除。二者的區(qū)別是:棧只允許在表的一端進(jìn)行插入或刪除操作,是一種“后進(jìn)先出”的線性表;而隊(duì)列只允許在表的一端進(jìn)行插入操作,在另一端進(jìn)行刪除操作,是一種“先進(jìn)先出”的線性表:本題答案為C)。
46.A解析:本題考查文件使用方式標(biāo)識(shí)符,以“a+”方式打開(kāi)一個(gè)已存在的文件,則表示保留文件中原有的數(shù)據(jù),文件的位置指針在文件末尾,此時(shí),可以進(jìn)行追加或讀操作。
47.DD)根據(jù)二叉樹(shù)的性質(zhì):二叉樹(shù)第i(i≥1)層上至多多有2i-1個(gè)結(jié)點(diǎn)。得到第5層的結(jié)點(diǎn)數(shù)最多是16個(gè)。
48.D解析:p=s+1是指將s(1)的地址賦給p,循環(huán)的終止條件是p<s+4,s+4表示的是s[4]的地址,總共3次循環(huán),因?yàn)槌绦蛑惺前础?s”格式符輸出,所以應(yīng)該輸出3個(gè)字符串,而且每次輸出字符串的字符個(gè)數(shù)減少1。由此可得選項(xiàng)D)正確。
49.D解析:所謂的交換類排序方法是指借助數(shù)據(jù)元素之間的互相交換進(jìn)行排序的一種方法,包括冒泡排序和快速排序,冒泡排序是一種最簡(jiǎn)單的交換排序方法,它通過(guò)相鄰元素的交換,逐步將線性表變成有序。
50.D解析:本題首先定義了字符數(shù)組a,由于它的長(zhǎng)度省略,所以其長(zhǎng)度由初值個(gè)數(shù)確定,為9。接著將sizeof()函數(shù)返回的值賦給i(sizeof()函數(shù)的作用是返回運(yùn)算對(duì)象占用的字符數(shù)),所以i值為9。然后將strlen()函數(shù)的返回值賦給j(strlen()函數(shù)的作用是返回字符串的長(zhǎng)度,不包括字符串的結(jié)束標(biāo)記'\\0'),所以j值為8,故最后輸出的i,j值為9,8。4個(gè)選項(xiàng)中D正確。
51.B解析:根據(jù)題意可知第二個(gè)j循環(huán)結(jié)束的條件是第i行打印出的'*'的個(gè)數(shù)。
52.C解析:本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。函數(shù)的形參是函數(shù)定義時(shí)由用戶定義的形式上的變量,實(shí)參是函數(shù)調(diào)用時(shí),主調(diào)函數(shù)為被調(diào)函數(shù)提供的原始數(shù)據(jù)。在函數(shù)調(diào)用時(shí),實(shí)參和其所對(duì)應(yīng)的形參分別占用不同的存儲(chǔ)單元,彼此之間不影響。
53.B解析:選項(xiàng)A的結(jié)尾沒(méi)用‘;’,所以不是一條語(yǔ)句:選項(xiàng)C中的表達(dá)式不會(huì)改變?nèi)魏巫兞康膬?nèi)容,也不是合法的賦值語(yǔ)句;選項(xiàng)D有語(yǔ)法錯(cuò)誤,int應(yīng)該加上括號(hào)。所以,4個(gè)選項(xiàng)中只有選項(xiàng)B符合題意,運(yùn)行后d的內(nèi)容被減一。
54.B解析:本題中的二維數(shù)組的每個(gè)元素就是一個(gè)由3個(gè)元素構(gòu)成的一維數(shù)組,根據(jù)條件for(k=0;k<3;++)和要求的a[k][k]可以得出本題的答案應(yīng)該是951。
55.C本題主要考查逗號(hào)表達(dá)式。逗號(hào)是一個(gè)特殊的運(yùn)算符,它具有所有運(yùn)算符中最低的優(yōu)先級(jí)。在C語(yǔ)言中,用它可以將兩個(gè)表達(dá)式連接起來(lái),逗號(hào)表達(dá)式的一般表現(xiàn)形式為:
表達(dá)式1,表達(dá)式2,…,表達(dá)式n
逗號(hào)表達(dá)式的求解過(guò)程是:先求解表達(dá)式1,再求解表達(dá)式2,依次往后計(jì)算,整個(gè)逗號(hào)表達(dá)式的值是最后一個(gè)表達(dá)式的值,如“3+5,5+6”的值是11。
在本題中,逗號(hào)表達(dá)式為i=4,j=16,k=32,根據(jù)上面的分析,計(jì)算逗號(hào)表達(dá)式得到的結(jié)果為k=32,最后將逗號(hào)表達(dá)式的結(jié)果賦值給變量x,那么變量x的值為32。因此,本題的正確答案選C。
56.B解析:指針中存放的是變量的地址,指針也可以進(jìn)行增減運(yùn)算,這時(shí)指針移動(dòng)的最小單位是一個(gè)存儲(chǔ)單元,而不是一個(gè)字節(jié)。所以題中將p+6指的是將指針向后移動(dòng)了6個(gè)存儲(chǔ)單元,指向b[6],存放的是b[6]的地址。
57.B解析:結(jié)構(gòu)體類型的變量在程序運(yùn)行期間要作為一個(gè)整體占用連續(xù)的內(nèi)存單元。
58.A解析:從軟件開(kāi)發(fā)的工程化觀點(diǎn)來(lái)看,在使用程序設(shè)計(jì)語(yǔ)言編制程序以前,需要對(duì)所采用算法的邏輯關(guān)系進(jìn)行分析,設(shè)計(jì)出全部必要的過(guò)程細(xì)節(jié),并給予清晰的表達(dá)。詳細(xì)設(shè)計(jì)的任務(wù)就是要決定各個(gè)模塊的實(shí)現(xiàn)算法,并精確表達(dá)出這些算法。本題正確答案為選項(xiàng)A。
59.D解析:軟件需求規(guī)格說(shuō)明書(shū)SRS,SoftwareRequirementSpecification)是需求分析階段的最后成果,是軟件開(kāi)發(fā)中的重要文檔之一。它有以下幾個(gè)方面的作用,①便于用戶、開(kāi)發(fā)人員進(jìn)行理解和交流;②反映出用戶問(wèn)題的結(jié)構(gòu),可以作為軟件開(kāi)發(fā)工作的基礎(chǔ)和依據(jù);③作為確認(rèn)測(cè)試和驗(yàn)收的依據(jù)。
60.A解析:選擇運(yùn)算是在指定的關(guān)系中選取所有滿足給定條件的元組,構(gòu)成一個(gè)新的關(guān)系,而這個(gè)新的關(guān)系是原關(guān)系的一個(gè)子集。因此,一個(gè)關(guān)系經(jīng)選擇運(yùn)算后得到的新關(guān)系中,元組個(gè)數(shù)少于原來(lái)關(guān)系中元組個(gè)數(shù)。
61.D在C語(yǔ)言中,有整型常量、實(shí)型常量、字符常量和字符串常量等類型。整型常量和實(shí)型常量又稱數(shù)值型常量?;菊统A恐荒苡脭?shù)字表示,不帶小數(shù)點(diǎn),例如12、-1和0等,在VC6.0中可以在整型常量的后面加—個(gè)字母l(L的小寫)或L;實(shí)型常量必須用帶小數(shù)點(diǎn)的數(shù)表示,例如3.14159、-2.71828、0.0等;選項(xiàng)A中字母o不符合要求,選頂B中超出八進(jìn)制的范圍,選項(xiàng)C中e后面的不為整數(shù),因此選頂D是正確的。
62.C\n本題考查邏輯值假,在程序中非0字符表示邏輯真,0表示邏輯假,所以答案選擇C。
\n
63.D
64.AC語(yǔ)言中,大小寫代表不同的兩個(gè)標(biāo)識(shí)符。
65.Ap->x值為l,p->y值為2,前置自增表達(dá)式分別為23,所以選擇A)。
66.B
67.C
68.A?B)與D)選項(xiàng)中取模運(yùn)算符%的左右兩個(gè)操作數(shù)均應(yīng)為整數(shù),所以B)、D)錯(cuò)誤。C)選項(xiàng)中不能將x+z的值賦給表達(dá)式y(tǒng)*5,所以C)錯(cuò)誤。
69.B
70.A
71.A在while循環(huán)開(kāi)始前,指針t和s都指向字符串的起始位置。while循環(huán)的判斷條件中,判斷t所指位置是否為字符串的結(jié)束標(biāo)志,同時(shí)讓t右移一位。當(dāng)while循環(huán)結(jié)束時(shí),t自減1,此時(shí)t指向的位置是字符串的結(jié)束標(biāo)志,故t-s的值是字符串的長(zhǎng)度。
72.B
73.C1題中用動(dòng)態(tài)存儲(chǔ)分配函數(shù)mMloc分配了一個(gè)int型數(shù)據(jù)長(zhǎng)度大1小的內(nèi)存,然后指針p指向了這段內(nèi)存,函數(shù)f中對(duì)P所指1向的數(shù)據(jù)進(jìn)行了賦值,P[1][1]為二維數(shù)組第二行第二列的元素,對(duì)應(yīng)于實(shí)參a的元素9,所以輸出結(jié)果為9。
74.B解析:在本題中,選項(xiàng)B,實(shí)際是先計(jì)算關(guān)系表達(dá)式“‘A<=c’”的值是0還是1,再比較該值與字符‘Z’之間的大小關(guān)系,顯然不能實(shí)現(xiàn)題目所要求的功能,而選項(xiàng)A,C,D都可以。
75.D
76.C
77.A用typedef沒(méi)有增加新類型,所以選擇A)。
78.A通常,將軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程稱為軟件生命周期。也就是說(shuō),軟件產(chǎn)品從考慮其概念開(kāi)始,到該軟件產(chǎn)品不能使用為止的整個(gè)時(shí)期都屬于軟件生命周期。
79.D因?yàn)樵谶壿嫳磉_(dá)式中,兩邊的賦值表達(dá)式都成立,即值為1,故選擇D選項(xiàng)。
80.C
81.(1)錯(cuò)誤:fun(intn)
正確:doublefun(intn)
(2)錯(cuò)誤:s=s+(Double)a/b;
正確:s=s+(double)a/b;
【解析】本題考查函數(shù)的定義規(guī)則。函數(shù)定義的一般形式為類型標(biāo)識(shí)符函數(shù)名(形式參數(shù)表列){函數(shù)體}。fun()函數(shù)中,最后返回的是變量s,由變量s的定義可知,返回值是double型,所以fun()函數(shù)定義時(shí)應(yīng)明確注明標(biāo)識(shí)符double類型。Double為書(shū)寫問(wèn)題,寫程序時(shí)切記書(shū)寫格式。
82.
【解析】根據(jù)題意,所寫函數(shù)要用for循環(huán)實(shí)現(xiàn)對(duì)整數(shù)1~1000的遍歷;通過(guò)if語(yǔ)句找出能被7或11整除,但不能同時(shí)被7和11整除的所有整數(shù),因?yàn)橥瑫r(shí)被7和11整除的整數(shù)一定能被77整除,且不能被77整除的數(shù)不一定就是能被7或11整除,可得出表達(dá)式“(i%7==0||i%11==O)&&i%77!=0”;再按題目要求,將找出來(lái)的整數(shù)放在a所指的數(shù)組中,通過(guò)n返回這些數(shù)的個(gè)數(shù)即可。
2021年湖北省黃岡市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.若有定義“inta=3;doubleb=0.1263;charch=‘a(chǎn)’;”,則以下選項(xiàng)中敘述有錯(cuò)的是()。
A.逗號(hào)表達(dá)式的計(jì)算結(jié)果是最后一個(gè)表達(dá)式的運(yùn)算結(jié)果
B.運(yùn)算符“%”只能對(duì)整數(shù)類型的變量進(jìn)行運(yùn)算
C.語(yǔ)句“ch=(unsignedint)a+b;”是對(duì)a與b之和進(jìn)行強(qiáng)制類型轉(zhuǎn)換,結(jié)果賦值給變量ch
D.復(fù)合運(yùn)算“a*=b+ch”是將變量b、ch之和與a相乘,結(jié)果再賦值給a
2.設(shè)一棵二叉樹(shù)共有50個(gè)葉子結(jié)點(diǎn)(終端結(jié)點(diǎn)),則共有___個(gè)度為2的結(jié)點(diǎn)。
A.25B.49C.50D.51
3.有以下程序main()inta[10]={1,2,3,4,5,6,7,8,9,10},*p=.&a[3],*q=p+2;printf("%d\n",*p+*q);程序運(yùn)行后輸出結(jié)查是
A.16B.10C.8D.6
4.以下程序運(yùn)行后的輸出結(jié)果是()。
A.2B.1C.3D.O
5.某線性表中最常用的操作是在最后一個(gè)元素之后插入一個(gè)元素和刪除第一個(gè)元素,則采用()存儲(chǔ)方式最節(jié)省運(yùn)算時(shí)間。
A.單鏈表B.僅有頭指針的單循環(huán)鏈表C.雙鏈表D.僅有尾指針的單循環(huán)鏈表
6.下面程序的運(yùn)行結(jié)果是______。#include<stdio.h>#include<string.h>fun(char*w,intn){chart,*s1,*s2;s1=w;s2=w+n-1;while(s1<s2){t=*s1++;*s1=*s2--;*s2=t;}}main(){char*p;p="1234567";fun(p,strlen(p));puts(p);}
A.7654321B.1714171C.1711717D.7177171
7.
8.
9.若以下選項(xiàng)中的變量已正確定義,則正確的賦值語(yǔ)句是()。
A.x1=26.8%3B.1+2=x2C.x3=0x12D.x4=1+2=3
10.設(shè)有定義:intk=1,m=2;noatf=7;則下列選項(xiàng)中錯(cuò)誤的表達(dá)式是()。
A.k=k>=kB.-k++C.k%int(f)D.k>=f>=m
11.已知char**s,下面正確的語(yǔ)句是()。A.A.s="ABCDEF";
B.*s="ABCDEF";
C.**s="ABCDEF";
D.*s='A';
12.隊(duì)和棧的主要區(qū)別是________
A.邏輯結(jié)構(gòu)不同B.存儲(chǔ)結(jié)構(gòu)不同C.所包含的運(yùn)算個(gè)數(shù)不同D.限定插入和刪除的位置不同
13.以下敘述正確的是
A.continue語(yǔ)句的作用是結(jié)束整個(gè)循環(huán)的執(zhí)行
B.只能在循環(huán)體內(nèi)和switch語(yǔ)句體內(nèi)使用break語(yǔ)句
C.在循環(huán)體內(nèi)使用break語(yǔ)句或continue語(yǔ)句的作用相同
D.從多層循環(huán)嵌套中退出時(shí),只能使用goto語(yǔ)句
14.(7-6-3-5-4-1-2)堆排序,升序排列,3的位置改變幾次()
A.1B.2C.3D.4E.5F.6
15.
16.設(shè)有定義:int?x=2,以下表達(dá)式中,值不為6的是()。
A.2*<.x+=2B.x++.2*xC.x=x*(1+x)D.x*=x+1
17.以下敘述中錯(cuò)誤的是()。
A.在同一源文件中,函數(shù)名必須唯一
B.凡是帶有返回值的庫(kù)函數(shù),都不能通過(guò)加分號(hào)而作為獨(dú)立的語(yǔ)句出現(xiàn)
C.不同函數(shù)中的形式參數(shù)可以同名
D.返回基本數(shù)據(jù)類型的庫(kù)函數(shù)的調(diào)用,均可以出現(xiàn)在賦值號(hào)右邊的表達(dá)式中
18.程序設(shè)計(jì)的任務(wù)包括()。
A.編寫程序代碼并上機(jī)調(diào)試B.確定所用數(shù)據(jù)結(jié)構(gòu)C.確定所用算法D.以上選項(xiàng)均正確
19.已知有double型變量x=2.5,y=4.7,整型變量a=7,則表達(dá)式x+a%3*(int)(x+y)%2/4的值是()。
A.2.4B.2.5C.2.75D.0
20.已知i,j,k為int型變量,若從鍵盤輸入:1,2,3<回車>,使i的值為1,j的值為2,k的值為3,以下選項(xiàng)中正確的輸入語(yǔ)句是A.scanf("%2d%2d%2d",&i,&j,&k);
B.scanf("%d%d%d",&i,&j,&k);
C.scanf("%d,%d,%d",&i,&j,&k);
D.scanf("i=%d,j=%d,k=%d",&i,&j,&k);
二、2.填空題(20題)21.以下程序的輸出結(jié)果是【】。
fun(intx,inty,intz)
{z=x*x+y*y;}
main()
{inta=31;
fun(6,3,a)
printf("%d,a)
}
22.程序的功能是將文件filel.c的內(nèi)容輸出到屏幕上并復(fù)制到文件file2.c中,請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{FILE【】;
fp1=fopen("filel.c","r");
fp2=fopen("file2.c","w");
while(!feof(fp1))putchar(getc(fp1));
rewind(fp1);
while(!feof(fp1))putc(【】);
fclose(fp1);
fclose(fp2);
}
23.下列程序的輸出結(jié)果是______。
10ngfun5(intn)
{longs;
if((n==1)‖(n==2))
s=2;
else
s=n+fun5(n-1);
return(s);
}
main()
{longx;
x=fun5(4);
printf("%1d\n",x);}
24.【】是數(shù)據(jù)庫(kù)設(shè)計(jì)的核心。
25.下列程序的輸出結(jié)果是______。
main()
{inta=2,b=4,e=6;
int*p1=&a,*p2=&b,*p;
*(p=&c)=*p1*(*p2);
printf("%d\n",c);
}
26.C語(yǔ)言用于結(jié)構(gòu)化程序設(shè)計(jì)的3種基本結(jié)構(gòu)是______、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。
27.下列程序的運(yùn)行結(jié)果是_______。
main()
{intx=1,y=2,z=3;
printf("%d,",x<y?y:x);
primf("%d,",z<y?x++:y++);
primf("%d,%d",x,y);
}
28.設(shè)Y是int型變量,請(qǐng)寫出判斷Y為奇數(shù)的關(guān)系表達(dá)【】。
29.下列程序執(zhí)行后輸出的結(jié)果是【】。
main()
{intarr[10],i,k=0);
fot(i=0;i<10;i++)art[i]=i;
for(i=1:i<4;i++)k+=arr[i]+i;
printf("%d\n",k);
}
30.數(shù)據(jù)庫(kù)理論中,數(shù)據(jù)的獨(dú)立性一般可分為物理獨(dú)立性和______。
31.設(shè)有定義“stmct{inta;floatb;charc}abc,*p_abc=&abc;”,則對(duì)結(jié)構(gòu)體成員a的引用方法可以是abc.a和p_abc______。
32.#define命令出現(xiàn)在程序中函數(shù)的外面,宏名的有效范圍為_(kāi)_____。
33.在宏定義#definePI3.14159中,用宏名PI代替一個(gè)______。
34.以下程序運(yùn)行后的輸出結(jié)果是______。
fun(intx)
{if(x/2>0)fun(x/2);
printf("%d",x);
}
main()
{fun(6);}
35.診斷和改正程序中錯(cuò)誤的工作通常稱為【】。
36.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{chars[]="9876",*p;
for(p=s;p<s+2;p++)printf("%s\n",p);
}
37.隊(duì)列是限定在表的一端進(jìn)行插入和在另一端進(jìn)行刪除操作的線性表。允許刪除的一端稱作()。
38.對(duì)軟件是否能達(dá)到用戶所期望的要求的測(cè)試稱為【】。
39.以下程序的輸出結(jié)果是【】。
#include<stdio.h>
main()
{structstru
{inta;
floatb;
chard[4];
};
printf("%d\n",sizeof(structstru));}
40.下列程序的功能是將字符串s中所有的字符c刪除。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{chars[80];
inti,j;
gets(S);
for(i=j(luò)0;s[i]!'\0';i++)
if(s[i]!='c')______;
s[j]='\0;
puts(S);
}
三、1.選擇題(20題)41.算法一般都可以用______控制結(jié)構(gòu)組合而成。
A.循環(huán)、分支、遞歸B.順序、循環(huán)、嵌套C.循環(huán)、遞歸、選擇D.順序、選擇、循環(huán)
42.以下程序的輸出結(jié)果是()structHAR{intx,y;structHAR*p;}h[2];main(){h[0].x=1;h[0].y=2;h[1].x=3;h[1].y=4;h[0].p=&h[1];h[1].p=h;printf("%d%d\n"h[0].p)->x,(h[1].p)->y);}
A.12B.23C.14D.32
43.下列選項(xiàng)中合法的賦值語(yǔ)句是()。
A.a=b=34B.a=34,b=34C.i-1;D.m=(int)(x+y);
44.軟件需求分析階段的工作,可以分為4個(gè)方面:需求獲取、需求分析、編寫需求規(guī)格說(shuō)明書(shū)以及()。
A.階段性報(bào)告B.需求評(píng)審C.總結(jié)D.都不正確
45.棧和隊(duì)列的共同點(diǎn)是()。
A.都是先進(jìn)后出B.都是先進(jìn)先出C.只允許在端點(diǎn)處插入和刪除元素D.沒(méi)有共同點(diǎn)
46.若以“a+”方式打開(kāi)一個(gè)已存在的文件,則下列敘述正確的是()。
A.文件打開(kāi)時(shí),原有文件內(nèi)容不被刪除,位置指針移到文件末尾,可以進(jìn)行添加或讀操作
B.文件打開(kāi)時(shí),原有文件內(nèi)容不被刪除,只能進(jìn)行讀操作
C.文件打開(kāi)時(shí),原有文件內(nèi)容被刪除,只能進(jìn)行寫操作
D.以上三種說(shuō)法都不正確
47.在一棵二叉樹(shù)上,第5層的結(jié)點(diǎn)數(shù)最多是()A.8B.9C.15D.16
48.有以下程序:#include<stdio.h>main(){chars[]="ABCD",*p;for(p=s+1;p<s+4;p++)pfintf("%s\n",p);}
A.ABCDBCDCDDB.ABCC.BCDD.BCDCDD
49.簡(jiǎn)單的交換排序方法是()。
A.快速排序B.選擇排序C.堆排序D.冒泡排序
50.有以下程序main(){chara[]={'a','b','c','d','e','f','g','h','\0'};inti,j;i=sizeof(a);j=strlen(a);printf("%d,%d\b",i,j);}程序運(yùn)行后的輸出結(jié)果是
A.9,9B.8,9C.1,8D.9,8
51.下面程序的功能是輸出以下形式的金字塔圖案:****************main(){inti,j;for(i=1;i<=4;i++;){for(j=1;j<=4-i;j++)printf("");for(j=1;;j<=________;j++)printf("*");printf("\n");}}在下劃線處應(yīng)填入的是______。
A.iB.2*i-1C.2*i+1D.i+2
52.若函數(shù)調(diào)用時(shí),參數(shù)為基本數(shù)據(jù)類型的變量,下列敘述中正確的是()。
A.實(shí)參與其對(duì)應(yīng)的形參共占存儲(chǔ)單元
B.只有當(dāng)實(shí)參與其對(duì)應(yīng)的形參同名時(shí)才共占存儲(chǔ)單元
C.實(shí)參與其對(duì)應(yīng)的形參分別占用不同的存儲(chǔ)單元
D.實(shí)參將數(shù)據(jù)傳遞給形參后,立即釋放原先占用的存儲(chǔ)單元
53.以下合法的賦值語(yǔ)句是()
A.x=y=100B.d--;C.x+y;D.c=int(a+b);
54.定義如下變量和數(shù)組:intk;inta[3][3]={9,8,7,6,5,4,3,2,1};則下面語(yǔ)句的輸出結(jié)果是()。for(k=0;k<3;k++)printf("%d",a[k][k]);
A.753B.951C.963D.741
55.若x,i,j和k都是int型變量,則計(jì)算表達(dá)式x=(i=4,j=16,k=32)后,x的值為()。
A.4B.16C.32D.52
56.若有定義血b[8],*p=b;則p+6表示()。
A.數(shù)組元素b[6]的值B.數(shù)組元素b[6]的地址C.數(shù)組元素b[7]的地址D.數(shù)組元素b[0]的值加上6
57.C語(yǔ)言結(jié)構(gòu)體類型變量在程序運(yùn)行期間
A.TC環(huán)境在內(nèi)存中僅僅開(kāi)辟一個(gè)存放結(jié)構(gòu)體變量地址的單元
B.所有的成員一直駐留在內(nèi)存中
C.只有最開(kāi)始的成員駐留在內(nèi)存中
D.部分成員駐留在內(nèi)存中
58.軟件詳細(xì)設(shè)計(jì)的主要任務(wù)是確定每個(gè)模塊的()。
A.算法和使用的數(shù)據(jù)結(jié)構(gòu)B.外部接口C.功能D.編程
59.下列敘述中,不屬于軟件需求規(guī)格說(shuō)明書(shū)的作用的是()
A.便于用戶,開(kāi)發(fā)人員進(jìn)行理解和交流
B.反映出用戶問(wèn)題的結(jié)構(gòu),可以作為軟件開(kāi)發(fā)工作的基礎(chǔ)和依據(jù)
C.作為確認(rèn)測(cè)試和驗(yàn)收的依據(jù)
D.便于開(kāi)發(fā)人員進(jìn)行需求分析
60.下列關(guān)系運(yùn)算中,能使經(jīng)運(yùn)算后得到的新關(guān)系中元組個(gè)數(shù)少于原來(lái)關(guān)系中元組個(gè)數(shù)的是()。
A.選擇B.投影C.連接D.并
四、選擇題(20題)61.以下選項(xiàng)中,能用作數(shù)據(jù)常量的是______。A.o115B.0118C.1.5e1.5D.115L
62.以下選項(xiàng)中,能表示邏輯值“假”的是()
A.1B.0.000001C.0D.100.0
63.
64.下列關(guān)于C語(yǔ)言的敘述錯(cuò)誤的是()。
A)大寫字母和小寫字母的意義相同
B)不同類型的變量可以在一個(gè)表達(dá)式中
C)在賦值表達(dá)式中等號(hào)(=)左邊的變量和右邊的值可以是不同類型
D)同一個(gè)運(yùn)算符號(hào)在不同的場(chǎng)合可以有不同的含義
65.有以下程序
66.
67.
68.設(shè)變量已正確定義并賦值,以下正確的表達(dá)式是()。
A.X=Y+z+5,++YB.int(15.8%5)C.X=Y*5=X+ZD.X=25%5.0
69.
70.(24)對(duì)建立良好的程序設(shè)計(jì)風(fēng)格,下面描述正確的是()
A.程序應(yīng)簡(jiǎn)單、清晰、可讀性好
B.符號(hào)名的命名要符合語(yǔ)法
C.充分考慮程序的執(zhí)行效率
D.程序的注釋可有可無(wú)
71.有以下函數(shù)intaaa(char*s){char*t=s;while(*t+t);t--:return(t-s);}以下關(guān)于aaa函數(shù)的功能敘述正確的是()。A.求字符串S的長(zhǎng)度B.比較兩個(gè)串的大小C.將串S復(fù)制到串tD.求字符串S所占字節(jié)數(shù)
72.
73.以下程序的輸出結(jié)果是()。
A.1B.7C.9D.13
74.已有定義:charc;,程序前面已在命令行中包含ctype.h文件,不能用于判斷e中的字符是否為大寫字母的表達(dá)式是()。
A.isupper(c)
B.A<=c<=Z
C.A<=cc<=Z
D.c<=(z-32)(a-32)<=c
75.
76.
77.以下關(guān)于typedef的敘述錯(cuò)誤的是()。A.用tyFedef可以增加新類型
B.typedef只是將已存在的類型用一個(gè)新的名字來(lái)代表
C.用typedef可以為各種類型說(shuō)明一個(gè)新名,但不能用來(lái)為變量說(shuō)明一個(gè)新名
D.用typedef為類型說(shuō)明一個(gè)新名,通常可以增加程序的可讀性
78.軟件生命周期是指()。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ò)程
79.語(yǔ)句:“printf("%d",(a=)&&(b=-2));”的輸出結(jié)果是()。A.A.無(wú)輸出B.結(jié)果是不確定C.-1D.1
80.
五、程序改錯(cuò)題(1題)81.下列給定程序中函數(shù)fun()的功能是:求出如下分?jǐn)?shù)序列的前n項(xiàng)之和,結(jié)果通過(guò)函數(shù)值返回。例如,若n=5,則應(yīng)輸出8.391667。請(qǐng)改正程序中的錯(cuò)誤,使其得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!試題程序:
六、程序設(shè)計(jì)題(1題)82.編寫函數(shù)fun(),其功能是:求出1~1000中能被7或11整除,但不能同時(shí)被7和ll整除的所有整數(shù),并將其放在a所指的數(shù)組中,通過(guò)n返回這些數(shù)的個(gè)數(shù)。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入所編寫的若干語(yǔ)句。試題程序:
參考答案
1.C逗號(hào)表達(dá)式的計(jì)算結(jié)果是最后一個(gè)表達(dá)式的運(yùn)算結(jié)果,選項(xiàng)A正確;運(yùn)算符“%”是求余運(yùn)算符,只能對(duì)整數(shù)類型的變量進(jìn)行運(yùn)算,選項(xiàng)B正確;在語(yǔ)句“ch=(unsignedint)a+b”中,圓括號(hào)優(yōu)先級(jí)最高,所以首先將a強(qiáng)制轉(zhuǎn)換成無(wú)符號(hào)整型,再與b相加,結(jié)果賦值給ch,選項(xiàng)C錯(cuò)誤;復(fù)合運(yùn)算“a*=b+ch”,先計(jì)算“b+ch”的值,再將a與b、ch之和相乘,結(jié)果再賦值給a,選項(xiàng)D正確。故本題答案為C選項(xiàng)。
2.B難易程度:易
3.B解析:本題考查的是指針的簡(jiǎn)單應(yīng)用。題目中首先定義了一個(gè)int型數(shù)組a并初始化了,然后定義了兩個(gè)指針變量p和q,并分別初始化p為指向數(shù)組元素a[3]、q指向p后面的第2個(gè)元素即指向a[5]。所以最終輸出的值為a[3]+a[5]的值10。應(yīng)該選B。
4.A參數(shù)r的傳遞是地址傳遞,函數(shù)調(diào)用會(huì)改變其值。函數(shù)f的功能是:判斷n是否為3或5的倍數(shù),如果是,則將指針r所指的內(nèi)存空間賦值為n除以3或5的商;否則n遞減,直到它可以被3或5整除。初始時(shí)調(diào)用函數(shù)f(7,&r);n=7,執(zhí)行else子句,調(diào)用f(6,&r1);后n=6,執(zhí)行語(yǔ)句if(n%3==0)r1=n/3;,此后執(zhí)行語(yǔ)句*r=rl;。所以r=6/3=2。
5.D
6.C
7.D
8.D
9.C解析:賦值的一般形式為:變量名:表達(dá)式;,賦值的方向?yàn)橛捎蚁蜃?,即將:右?cè)表達(dá)式的值賦給:左側(cè)的變量,執(zhí)行步驟是先計(jì)算再賦值。選項(xiàng)A中運(yùn)算符%的運(yùn)算對(duì)象必須為整數(shù),而選項(xiàng)A中26.8不為整數(shù),故選項(xiàng)A不正確;選項(xiàng)B將一個(gè)變量賦值給一個(gè)常量,這在C語(yǔ)言中是不允許的,故選項(xiàng)B不正確;選項(xiàng)D中也是將一個(gè)常量3賦值給一個(gè)常量,故選項(xiàng)D不正確;所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。
10.C解析:在C語(yǔ)言中,求余運(yùn)算符“%”兩邊的運(yùn)算對(duì)象都應(yīng)為整型數(shù)據(jù),所以需要對(duì)變量f進(jìn)行強(qiáng)制類型轉(zhuǎn)換,正確的寫法為k%(int)f。在C語(yǔ)言中,邏輯運(yùn)算符與賦值運(yùn)算符、算術(shù)運(yùn)算符、關(guān)系運(yùn)算符之間從高到低的運(yùn)算優(yōu)先次序是:!(邏輯“非”)、算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、&&(邏輯“與”)、‖(邏輯“或”)、賦值運(yùn)算符。根據(jù)運(yùn)算符的優(yōu)先級(jí)與結(jié)合性,對(duì)于選項(xiàng)A),先計(jì)算k>=k的值(為真,即1),再用1對(duì)k進(jìn)行賦值。對(duì)于選取項(xiàng)B),先計(jì)算k什的值,再對(duì)其取負(fù)數(shù)。對(duì)于選項(xiàng)D),先計(jì)算k>=f的值(為假,即0),再用0與m進(jìn)行比較,故最終結(jié)果為0。
11.C
12.D
13.B解析:continue是結(jié)束本次循環(huán),直接進(jìn)入到下次循環(huán)中,break用于循環(huán)語(yǔ)句中的作用是直接跳出本層循環(huán),能從多層循環(huán)中退出的語(yǔ)句除了goto語(yǔ)句,exit,return等語(yǔ)句也能直接跳出多層循環(huán)。注意:continue和break語(yǔ)句在while語(yǔ)句中的作用。
14.B
15.B
16.A?A)選項(xiàng)中逗號(hào)表達(dá)式先計(jì)算第一表達(dá)式2*x,然后計(jì)算表達(dá)式x+=2的值,即x=x+2即4,整個(gè)逗號(hào)表達(dá)式為第二個(gè)表達(dá)式的值4,所以選A)。B)選項(xiàng)中首先計(jì)算逗號(hào)表達(dá)式中第一一個(gè)表達(dá)式x++,此時(shí)x為3,再執(zhí)行第二個(gè)表達(dá)式2*x=2*3=6,所以逗號(hào)表達(dá)式為第二個(gè)表達(dá)式的值6。C)選項(xiàng)的賦值表達(dá)式可以表示為x=x*(1+x)=2*(1+2)=6。D)選項(xiàng)中的表達(dá)式可以表示為x=x*(x+1)=2*3=6。
17.B在同一源文件中,函數(shù)名必須唯一,選項(xiàng)A正確。函數(shù)的調(diào)用有兩種形式:①出現(xiàn)在表達(dá)式中,可以出現(xiàn)在賦值號(hào)右邊的表達(dá)式中;②作為獨(dú)立的語(yǔ)句完成某種操作。因此選項(xiàng)B錯(cuò)誤,選項(xiàng)D正確。不同函數(shù)中的形參可以同名,它們的作用域都限制在各自的函數(shù)體內(nèi),選項(xiàng)C正確。故本題答案為B選項(xiàng)。
18.D程序設(shè)計(jì)是一門技術(shù),需要相應(yīng)的理論、技術(shù)、方法和工具來(lái)支持。程序設(shè)計(jì)的任務(wù)包括選項(xiàng)A)、B)、c)等方面。
19.B
20.C
21.3131解析:在函數(shù)調(diào)用時(shí),形參值和改變,不會(huì)改變實(shí)參的值。
22.*fp1*fp2getc(fp1)fp2*fp1,*fp2\r\ngetc(fp1),fp2解析:本題主要考查函數(shù)intputc(intch,FILE*fp)的功能,把ch中的字符輸出到fp所指文件,以及intgetc(FILE*fp),從fp所指文件中讀取一個(gè)字符。
23.99解析:考查ifelse語(yǔ)句,n==4不滿足條件,所以fun5(4)=4+fun5(3),n==3也不滿足條件,fun5(3)=3+fun5(2),n==2滿足條件fun5(2)=2,故x=4+3+2=9。
24.數(shù)據(jù)模型數(shù)據(jù)模型
25.88解析:本程序定義了3個(gè)指針變量p1、p2、p,并且將a、b的地址分別賦給p1、p2,則*p1=a=2,*p2=b=4,所以表達(dá)式*p1*(*p2)的值是8。在賦值語(yǔ)句的左邊是*(p=&c),即使指針p指向了變量c,因而*(P)代表了c的存儲(chǔ)單元,賦值語(yǔ)句“*(p=&c)=*p1*(*p2);”是把整數(shù)8賦給了變量c。
26.順序結(jié)構(gòu)順序結(jié)構(gòu)解析:結(jié)構(gòu)化程序有3種摹本結(jié)構(gòu),即順序結(jié)構(gòu)、選擇結(jié)構(gòu)(包括if語(yǔ)句和switch語(yǔ)句)和循環(huán)結(jié)構(gòu)(包括for語(yǔ)句、while語(yǔ)句、do…while語(yǔ)句)。
27.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。
28.Y%2=1或Y%2!=0Y%2=1或Y%2!=0解析:判斷變量是否為奇數(shù)可以用變量與2取模,判斷結(jié)果是為1或不為0。本題具體做法如下:Y%2=1或Y%2!=0。
29.1212解析:本題的第一個(gè)for循環(huán)用于給數(shù)組arr賦初值,第二個(gè)for循環(huán)用于求和運(yùn)算。由于第二個(gè)for循環(huán)初始值為1,而循環(huán)條件為i<4,所以求的是arr[1]到arr[3]及i的和,所以輸出結(jié)果為12。
30.邏輯獨(dú)立性邏輯獨(dú)立性解析:數(shù)據(jù)的獨(dú)立性一般可分為物理獨(dú)立性和邏輯獨(dú)立性。
31.若結(jié)構(gòu)體變量abc有成員a,并有指針p_abc指向結(jié)構(gòu)變量abe,則引用變量abe成員s的標(biāo)記形式有abe.a和p_abc->a。
32.從定義到本源文件結(jié)束從定義到本源文件結(jié)束解析:C語(yǔ)言規(guī)定,宏名的有效范圍為從定義宏到本源程序結(jié)束。
33.字符串字符串解析:本題考查字符替換格式:#define標(biāo)識(shí)符字符串。
34.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。
35.程序調(diào)試程序調(diào)試解析:程序調(diào)試的任務(wù)是診斷和改正程序中的錯(cuò)誤。程序調(diào)試與軟件測(cè)試不同,軟件測(cè)試是盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤。先要發(fā)現(xiàn)軟件的錯(cuò)誤,然后借助于調(diào)試工具找出軟件錯(cuò)誤的具體位置。軟件測(cè)試貫穿整個(gè)軟件生命期,而調(diào)試主要在開(kāi)發(fā)階段。
36.98768769876\r\n876解析:指針是一種數(shù)據(jù)類型,這種數(shù)據(jù)類型的變量用來(lái)存放內(nèi)存中分配的存儲(chǔ)單元的首地址。指針的定義:
類型說(shuō)明符*指針變量名;
37.隊(duì)頭隊(duì)頭解析:隊(duì)列是只允許在一端刪除,在另一端插入的順序表,在隊(duì)列中,允許插入的一端叫做“隊(duì)尾”,允許刪除的一端叫做“隊(duì)頭”。
38.有效性測(cè)試有效性測(cè)試
39.14
40.s[j++]=s[i]s[j++]=s[i]解析:循環(huán)開(kāi)始后如果數(shù)組s中儲(chǔ)存值與字符c相同,則i++直接跳過(guò)當(dāng)前值;如果不相同,則將當(dāng)前值賦予數(shù)組指定位置,并通過(guò).j++將下標(biāo)加1,指向下一元素要存儲(chǔ)的位置。
41.D解析:算法的控制結(jié)構(gòu)給出了算法的基本框架,不僅決定了算法中各操作的執(zhí)行順序,也直接反映了算法的設(shè)計(jì)是否符合結(jié)構(gòu)化原則。一個(gè)算法一般都可以用順序、選擇、循環(huán)三種基本控制結(jié)構(gòu)組合而成。
42.D解析:本題中是一個(gè)含有兩個(gè)結(jié)點(diǎn)的循環(huán)鏈表。
C語(yǔ)言中結(jié)構(gòu)體的定義為:
struct結(jié)構(gòu)題類型名
{
成員項(xiàng)表;
};
43.D解析:選項(xiàng)A)是一個(gè)合法的賦值表達(dá)式,但結(jié)尾沒(méi)加分號(hào),所以它不是一個(gè)賦值語(yǔ)句;選項(xiàng)B)是一個(gè)逗號(hào)表達(dá)式,也因?yàn)榻Y(jié)尾沒(méi)有加分號(hào)而不是合法的賦值語(yǔ)句,選項(xiàng)C)是一個(gè)算術(shù)表達(dá)式,雖然有分號(hào),但這個(gè)表達(dá)式?jīng)]有賦值操作,因此,也不是一條賦值語(yǔ)句。
44.B解析:需求分析是軟件定義時(shí)期的最后一個(gè)階段??梢愿爬?個(gè)方面:①需求獲取;②需求分析;⑧編寫需求規(guī)格說(shuō)明書(shū);④需求評(píng)審。
45.C棧和隊(duì)列都是一種特殊的操作受限的線性表,只允許在端點(diǎn)處進(jìn)行插入和刪除。二者的區(qū)別是:棧只允許在表的一端進(jìn)行插入或刪除操作,是一種“后進(jìn)先出”的線性表;而隊(duì)列只允許在表的一端進(jìn)行插入操作,在另一端進(jìn)行刪除操作,是一種“先進(jìn)先出”的線性表:本題答案為C)。
46.A解析:本題考查文件使用方式標(biāo)識(shí)符,以“a+”方式打開(kāi)一個(gè)已存在的文件,則表示保留文件中原有的數(shù)據(jù),文件的位置指針在文件末尾,此時(shí),可以進(jìn)行追加或讀操作。
47.DD)根據(jù)二叉樹(shù)的性質(zhì):二叉樹(shù)第i(i≥1)層上至多多有2i-1個(gè)結(jié)點(diǎn)。得到第5層的結(jié)點(diǎn)數(shù)最多是16個(gè)。
48.D解析:p=s+1是指將s(1)的地址賦給p,循環(huán)的終止條件是p<s+4,s+4表示的是s[4]的地址,總共3次循環(huán),因?yàn)槌绦蛑惺前础?s”格式
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 城市透水磚鋪設(shè)協(xié)議3篇
- 公租房選房抽簽全權(quán)代表委托協(xié)議3篇
- 加強(qiáng)勞務(wù)分包合同效率3篇
- 呼和浩特市度假村租賃合同3篇
- 發(fā)廊共營(yíng)合同3篇
- 企業(yè)合同管理實(shí)踐3篇
- 停車場(chǎng)設(shè)備運(yùn)營(yíng)合同范例
- 廠房購(gòu)買合同精要3篇
- 生產(chǎn)主任聘用合同范例
- 共有工程承包合作保證金協(xié)議3篇
- 2024年河北中考語(yǔ)文試題及答案
- HG/T 22820-2024 化工安全儀表系統(tǒng)工程設(shè)計(jì)規(guī)范(正式版)
- 偏微分方程智慧樹(shù)知到期末考試答案章節(jié)答案2024年山東大學(xué)(威海)
- 村集體經(jīng)濟(jì)入股分紅協(xié)議書(shū)
- 新時(shí)代大學(xué)生勞動(dòng)教育智慧樹(shù)知到期末考試答案章節(jié)答案2024年黑龍江農(nóng)業(yè)經(jīng)濟(jì)職業(yè)學(xué)院
- MOOC 計(jì)量經(jīng)濟(jì)學(xué)-西南財(cái)經(jīng)大學(xué) 中國(guó)大學(xué)慕課答案
- MOOC 高等數(shù)學(xué)(上)-西北工業(yè)大學(xué) 中國(guó)大學(xué)慕課答案
- 毛澤東思想概論智慧樹(shù)知到期末考試答案2024年
- 中醫(yī)診所消防應(yīng)急預(yù)案
- 2024版國(guó)開(kāi)電大法學(xué)本科《國(guó)際經(jīng)濟(jì)法》歷年期末考試總題庫(kù)
- 2024年學(xué)前兒童科學(xué)教育知識(shí)題庫(kù)及答案(含各題型)
評(píng)論
0/150
提交評(píng)論