版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021-2022年內(nèi)蒙古自治區(qū)呼倫貝爾市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.在inta=3,int*p=&a;中,*p的值是()
A.變量a的地址值B.無(wú)意義C.變量p的地址值D.3
2.將兩個(gè)字符串連接起來(lái)組成一個(gè)字符串時(shí),選用()函數(shù)。A.strlen()B.strcpy()C.strcat()D.strcmp()
3.數(shù)據(jù)庫(kù)DB、數(shù)據(jù)庫(kù)系統(tǒng)DBS、數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS之間的關(guān)系是()。
A.DB包括DBS和DBMSB.DBMS包括DB和DBSC.DBS包括DB和DBMSD.沒(méi)有任何關(guān)系
4.在下面的字符數(shù)組定義中,哪一個(gè)有語(yǔ)法錯(cuò)誤()。A.chara[20]=”abcdefg”;
B.chara[]=”x+y=55.”;
C.chara[15];
D.chara[10]=’5’;
5.
6.對(duì)n個(gè)數(shù)進(jìn)行排序,哪種算法,其時(shí)間復(fù)雜度在最壞和最好都是O(nlogn)()
A.快速排序B.希爾排序C.堆排序D.選擇排序
7.二進(jìn)制數(shù)1110111.11轉(zhuǎn)換成十進(jìn)制數(shù)是()。
A.119.375B.119.75C.119.125D.119.3
8.
下列程序的輸出結(jié)果是()。
main
{inta,b,d=25;
a=d/10%9;
b=a&&(一1);
printf("%d,%d\n",a,b);}
A.6,1B.2,1C.6,0D.2,0
9.以下程序的輸出結(jié)果是
longfun(intn)
{longs;
if(n==1||n==2)s=2;
elses=n-fun(n-1);
returns;}
main()
{printf("%ld\n",fun(3));}
A.1B.2C.3D.4
10.[0,2,1,4,3,9,5,8,6,7]是以數(shù)組形式存儲(chǔ)的最小堆,刪除堆頂元素0后的結(jié)果是()
A.[2,1,4,3,9,5,8,6,7]
B.[1,2,5,4,3,9,8,6,7]
C.[2,3,1,4,7,9,5,8,6]
D.[1,2,5,4,3,9,7,8,6]
11.下列敘述中錯(cuò)誤的是()。
A.C語(yǔ)言程序必須由一個(gè)或一個(gè)以上的函數(shù)組成
B.函數(shù)調(diào)用可以作為一個(gè)獨(dú)立的語(yǔ)句存在
C.若函數(shù)有返回值,必須通過(guò)return語(yǔ)句返回
D.函數(shù)形參的值也可以傳回給對(duì)應(yīng)的實(shí)參
12.下列敘述中正確的是()。
A.數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)獨(dú)立的系統(tǒng),不需要操作系統(tǒng)的支持
B.數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的共享問(wèn)題
C.數(shù)據(jù)庫(kù)管理系統(tǒng)就是數(shù)據(jù)庫(kù)系統(tǒng)
D.以上三種說(shuō)法都不對(duì)
13.
14.下列定義數(shù)組的語(yǔ)句中,正確的是()。A.#defineN10?intx[N];
B.intN=10;int[N];
C.intx0..10];
D.Intx[];.
15.
16.下列條件語(yǔ)句中,輸出結(jié)果與其他語(yǔ)句不同的是()。
A.if(a!=0)printf(“%d\n”,x);elseprintf(“%d\n”,y);
B.if(a==0)printf(“%d\n”,y);elseprintf(“%d\n”,x);
C.if(a==0)printf(“%d\n”,x);elseprintf(“%d\n”,y);
D.if(a)printf(“%d\n”,x);elseprintf(“%d\n”,y);
17.
18.對(duì)包含N個(gè)元素的散列表進(jìn)行檢索,平均檢索長(zhǎng)度________
A.為o(log2N)B.為o(N)C.不直接依賴于ND.上述三者都不是
19.下面描述中,符合結(jié)構(gòu)化程序設(shè)計(jì)風(fēng)格的是()。
A.使用順序、選擇和重復(fù)(循環(huán).三種基本控制結(jié)構(gòu)表示程序的控制邏輯
B.模塊只有一個(gè)入口,可以有多個(gè)出口
C.注重提高程序的執(zhí)行效率
D.不使用goto語(yǔ)句
20.以下程序的輸出結(jié)果是______。
A.54321
B.12345
C.12345
D.543210main(){intw=5;fun(w);printf("\n");}fun(intk){if(k>0)fun(k-1);printf("%d"",k);}
二、2.填空題(20題)21.在面向?qū)ο蟮脑O(shè)計(jì)中,用來(lái)請(qǐng)求對(duì)象執(zhí)行某一處理或回答某些信息的要求稱為【】。
22.設(shè)y為血型變量,請(qǐng)寫(xiě)出描述“y是偶數(shù)”的表達(dá)式______。
23.在軟件生命周期中,【】階段是花費(fèi)最多、持續(xù)時(shí)間最長(zhǎng)的階段。
24.算法執(zhí)行過(guò)程中所需要的存儲(chǔ)空間稱為算法的______。
25.寫(xiě)出下列程序的輸出結(jié)果______。
main()
{intn=0;
while(n++<=1);
printf("%d,",n);
printf("%d",n++);
}
26.以下程序用于判斷a,b,c能否構(gòu)成三角形,若能,輸出YES,否則輸出NO。當(dāng)給a,b,c輸入三角形三條邊長(zhǎng)時(shí),確定a,b,c能構(gòu)成三角形的條件是需同時(shí)滿足三個(gè)條件:a+b>c,a+c>b,b+c>a。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{floata,b,c;
scanf("%f%f%f",&a,&b,&c);
if(【】)printf("YES\n");/*a.b.c能構(gòu)成三角形*/
elseprinff("NO\n");/*a.b.c不能構(gòu)成三解形*/
}
27.下列程序的輸出結(jié)果是【】。
main()
{
inta[]={2,4,6},*ptr=&a[0],x=8,y,z;
for(y=0;y<3;y++)
z=(*(ptr+y)<x)?*(ptr+y):x;
printf("%d\n",z);
}
28.按照邏輯結(jié)構(gòu)分類,數(shù)據(jù)結(jié)構(gòu)可分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),隊(duì)列屬于______。
29.數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它通常包括5個(gè)部分,即數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、______和處理過(guò)程。
30.若按功能劃分,軟件測(cè)試的方法通常分為白盒測(cè)試方法和【】測(cè)試方法。
31.以下程序的作用是:從名為filea.dat的文本文件中逐個(gè)讀入字符并顯示在屏幕上。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{FILE*fp;charch;
fp=fopen(【】);
ch=fgetc(fp);
while(!feof(fp)){putchar(ch);ch=fgetc(fp);}
putchar('\n');fclose(fp);
}
32.以下程序的功能是輸出如下形式的方陣:
13141516
9101112
5678
1234
請(qǐng)?zhí)羁铡?/p>
main()
{inti,i,x;
for(j=4;j______;j--)
{for(i=1;i<4;i++)
{x=(j-1)*4+______;
printf("%4d",x);
}
printf("\n");
}
33.以下程序段打開(kāi)文件后,先利用fseek函數(shù)將文件位置指針定位在文件末尾,然后調(diào)用ftell函數(shù)返回當(dāng)前文件位置指針的具體位置,從而確定文件長(zhǎng)度,請(qǐng)?zhí)羁铡?/p>
FILE*myf;longf1;
myf=【】("test.t","rb");
fscek(myf,(),SEEK_END);f1+ftell(myf);
fclose(myf);
printf("%1d\n",f1);
34.一個(gè)類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個(gè)方法提高了軟件的【】。
35.下列程序輸出的結(jié)果是______。
intm=17;
intfun(intx,inty)
{intm=3;
return(x*Y-m);
}
main()
{inta=5,b=7;
printf("%d\n",fun(a,B)/m);
}
36.計(jì)算圓的周長(zhǎng)、面積和球體積。
#definePI3.1415926
#define【】L=2*PI*R;【】;V=4.0/3.0*PI*R*R*R
main()
{floatr,l,s,v;
printf("inputaradus:");
scanf("%f",&r);
CIRCLE(r,l,s,v);
printf("r=%.2f\nl=%.2f\ns=%.2f\nv=%.2f\n",【】);
}
37.在進(jìn)行模塊測(cè)試時(shí),要為每個(gè)被測(cè)試的模塊另外設(shè)計(jì)兩類模塊:驅(qū)動(dòng)模塊和承接模塊,其中______的作用是將測(cè)試數(shù)據(jù)傳送給被測(cè)試的模塊,并顯示被測(cè)試模塊所產(chǎn)生的結(jié)果。
38.下面程序的輸出結(jié)果是【】。
structaa
{intx,*y;
}*p;
inta[8]={10,20,30,40,50,60,70,80};
structaab[4]={100,&a[1],200,&a[3],10,&a[5],20,&a[7]};
main()
{p=b;
printf(%d",*++p->y);
printf("%d\n",++(p->x));
}
39.閱讀下面程序,則程序的執(zhí)行結(jié)果為【】。
#include"stdio.h"
fun(intk,int*p)
{inta,b;
if(k==1‖k==2)
*p=1;
else{fun(k-1,&a);
fun(k-2,&b);
*p=a+b;}}
main()
{intx;
fun(6,&x);
printf("%d\n",x);}
40.函數(shù)my_cmp()的功能是比較字符串s和t的大小,當(dāng)s等于t時(shí)返回0,否則返回s和t的第一個(gè)不同字符的ASCII碼差值,即s>t時(shí)返回正值,s<t時(shí)返回負(fù)值。請(qǐng)?zhí)羁铡?/p>
My_cmp(char*s,char*t)
{while(*s==*t)
{if(*s==′\0)return0;
++s;++t;
}return【】;
}
三、1.選擇題(20題)41.結(jié)構(gòu)化程序設(shè)計(jì)的主要特點(diǎn)是()。
A.每個(gè)控制結(jié)構(gòu)要模塊化B.每個(gè)控制結(jié)構(gòu)具有封裝性C.每個(gè)控制結(jié)構(gòu)具有獨(dú)立性D.每個(gè)控制結(jié)構(gòu)只有一個(gè)入口和一個(gè)出口
42.已知大寫(xiě)字母A的ASCII碼是65,小寫(xiě)字母a的ASCII碼是97。下列不能將變量c中的大寫(xiě)字母轉(zhuǎn)換為對(duì)應(yīng)小寫(xiě)字母的語(yǔ)句是()。
A.c=(c-'A')%26+'a'
B.c=c+32
C.c=C-'A'+'a'
D.c=('A'+C)%26-'a'
43.下面語(yǔ)句的輸出結(jié)果是______。printf("%d\n",strlen("\t\"065\xff\n"));
A.14B.8C.5D.輸出項(xiàng)不合法,無(wú)正常輸出
44.若有以下定義和語(yǔ)句:ints[4][5],(*ps)[5];ps=s;則對(duì)s數(shù)組元素的正確引用形式是
A.ps+1B.*(ps+3)C.ps[0][2]D.*(ps+1)+3
45.有程序:voidfun(inta,intb,intc){a=456;b=567;c=678;}main(){intx=10,y=20,z=30;fun(x,y,Z);printf("%d,%d,%d\n",z,y,x);}輸出結(jié)果是()
A.30,20,10B.10,20,30C.456,567,678D.678,567,456
46.在執(zhí)行下述程序時(shí),若從鍵盤(pán)輸入6和8,則結(jié)果為
main()
{inta,b,s;
scanf("%d%d",&a,&b);
S=a
if(a<b)
s=b;
S*=s;
printf("%d",s);}
A.36B.64C.48D.以上都不對(duì)
47.下列哪一條不屬于數(shù)據(jù)庫(kù)設(shè)計(jì)的任務(wù)?()
A.設(shè)計(jì)數(shù)據(jù)庫(kù)應(yīng)用結(jié)構(gòu)B.設(shè)計(jì)數(shù)據(jù)庫(kù)概淪結(jié)構(gòu)C.設(shè)計(jì)數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)D.設(shè)計(jì)數(shù)據(jù)庫(kù)物理結(jié)構(gòu)
48.有以下程序段charch;intk;ch='a';k=12;printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);已知字符a的ASCII碼值為97,則執(zhí)行上述程序段后輸出結(jié)果是
A.因變量類型與格式描述符的類型不匹配輸出無(wú)定值
B.輸出項(xiàng)與格式描述符個(gè)數(shù)不符,輸出為零值或不定值
C.a,97,12k=12
D.a,97,k=12
49.有如下程序intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(func(x,y),z);printf("%d\n",r);}該程序的輸出結(jié)果是______。
A.12B.13C.14D.15
50.現(xiàn)有定義inta;doubleb;floatc;chark;,則表達(dá)式a/b+c-k值的類型為:
A.intB.doubleC.floatD.char
51.以下能正確定義且賦初值的語(yǔ)句是______。
A.iht=n1=n2=10;
B.charc=32;
C.floatf=f+1.1;
D.doublex=12.3E2.5
52.有如下程序main(){intx=3;do{printf("%d",x--);}while(!x);}該程序的執(zhí)行結(jié)果是______。
A.321B.3C.不輸出任何內(nèi)容D.陷入死循環(huán)
53.下面程序的輸出結(jié)果()main(){unsigneda=32768;printf("a=%d\n",a);}
A.a=32768B.a=32767C.a=-32768D.a=-1
54.以下程序的輸出結(jié)果是______。#defineM(x,y,z)x*y+zmain(){inta=1,b=2,c=3;printf("%d\n",M(a+b,b+c,c+a));}
A.19B.17C.15D.12
55.一個(gè)源文件中的外部變量的作用域?yàn)?)。
A.本文件的全部范圍B.本程序的全部范圍C.本函數(shù)的全部范圍D.從定義該變量的位置開(kāi)始到本文件結(jié)束
56.若有以下定義語(yǔ)句:char*sl="12345",*s2="1234";printf("%d"n",strlen(strcpy(s1,s2)));則輸出結(jié)果是()
A.4B.5C.9D.10
57.若有以下說(shuō)明和語(yǔ)句intc[4][5],(*p)[5];p=c;能夠正確引用c數(shù)組元素的是
A.p+1B.*(p+3)C.*(p+1)+3D.*(P[0]+2)
58.有以下程序
#include<stdio.h>
main()
{intc;
while((c=getchar())!=′\n)
{switch(c-′2′)
{case0:
case1:putchar(c+4);
case2:putchar(c+4);break;
case3:putchar(c+3);
case4:putchar(c+3);break;}}
printf("\n")}
從第一列開(kāi)始輸入以下數(shù)據(jù)<CR>代表一個(gè)回車(chē)符。
2743<CR>
程序的輸出結(jié)果是
A.66877B.668966C.6677877D.6688766
59.下列程序的輸出結(jié)果是______。main(){inti=3;switch(i){case1:case2:printf("%d",i);case3:case4:break;default:printf("OK");}}
A.0B.3C.OKD.沒(méi)有任何輸出
60.不合法的main函數(shù)命令行參數(shù)表示形式是______。
A.main(inta,char*c[])
B.main(intarc,char**arv)
C.main(intargc,char*argv)
D.main(intargv,char*argc[])
四、選擇題(20題)61.下列關(guān)于單目運(yùn)算符++、--的敘述中正確的是A.它們的運(yùn)算對(duì)象可以是任何變量和常量
B.它們的運(yùn)算對(duì)象可以是char型變量和int型變量,但不能是float型變量
C.它們的運(yùn)算對(duì)象可以是int型變量,但不能是double型變量和float型變量
D.它們的運(yùn)算對(duì)象可以是char型變量、int型變量和float型變量
62.
63.
64.
65.
66.
67.有以下程序程序運(yùn)行后的輸出結(jié)果是()。
A.21B.11C.6D.120
68.
69.下列敘述中正確的是()。
A.循環(huán)隊(duì)列有隊(duì)頭和隊(duì)尾兩個(gè)指針,因此,循環(huán)隊(duì)列是非線性結(jié)構(gòu)
B.在循環(huán)隊(duì)列中,只需要隊(duì)頭指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況
C.在循環(huán)隊(duì)列中,只需要隊(duì)尾指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況
D.循環(huán)隊(duì)列中元素的個(gè)數(shù)是由隊(duì)頭指針和隊(duì)尾指針共同決定的
70.
71.下列敘述中正確的是()。A.在棧中,棧中元素隨棧底指針與棧頂指針的變化而動(dòng)態(tài)變化
B.在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動(dòng)態(tài)變化
C.在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動(dòng)態(tài)變化
D.在棧中,棧中元素不會(huì)隨棧底指針與棧頂指針的變化而動(dòng)態(tài)變化
72.
73.
以下程序的輸出結(jié)果是()。
main
{intx=0.5;charz=a;
printf("%d\n",(x&1)&&(z<2));}
A.0B.1C.2D.3
74.下列敘述中正確的是()。
A.程序執(zhí)行的效率與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)密切相關(guān)
B.程序執(zhí)行的效率只取決于程序的控制結(jié)構(gòu)
C.程序執(zhí)行的效率只取決于所處理的數(shù)據(jù)量
D.以上三種說(shuō)法都不對(duì)
75.
76.有以下程序:
#include<stdio.h>
voidfunc(intn)
{staticintnum=1);
num=num+n;printf("%d",num);
}
main()
{funo(3);func(4);printf("n");}
程序運(yùn)行后的輸出結(jié)果是()。
A.48B.34C.35D.45
77.
78.
以下程序的輸出結(jié)果是()。
main
{inta=1,b;
for(b=1,b<=10;b++)
{if(a>=8)break;
if(a%2==1){a+=5;continue;}
a=3;}
printf("%d\n",b);
A.3B.4C.5D.6
79.若有定義語(yǔ)句:“intx=12,y=8,z;”,在其后執(zhí)行語(yǔ)句“z=0.9+x/y;”,則z的值為()。A.1.9B.1C.2D.2.4
80.以下能定義為用戶標(biāo)識(shí)符的是()。
A.printfB.charC._8abcD.Void
五、程序改錯(cuò)題(1題)81.下列給定程序、中,函數(shù)proc()的功能是:先將字符串s中的字符按順序存放到t中,然后把s中的字符按正序連接到t的后面。例如,當(dāng)s中的字符串為WXYZ時(shí),則t中的字符串應(yīng)為WXYZWXYZ。請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.編寫(xiě)函數(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)中填入所編寫(xiě)的若干語(yǔ)句。試題程序:
參考答案
1.D
2.C將兩個(gè)字符串連接起來(lái)組成一個(gè)字符串,選用strcat函數(shù)來(lái)連接。
3.CC?!窘馕觥繑?shù)據(jù)庫(kù)系統(tǒng)(DBS)由數(shù)據(jù)庫(kù)(DBS)、數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)、數(shù)據(jù)庫(kù)管理員、硬件平臺(tái)和軟件平臺(tái)五個(gè)部分組成,可見(jiàn)DB和DBMS都是DBS的組成部分。
4.D
5.A
6.C
7.B
8.B
\n當(dāng)邏輯運(yùn)算符“&&”兩邊的值是非零時(shí),邏輯表達(dá)式的值為真(即為1)。所以b=2&&(-1)=1,2%9=2,故a=2,故先算a/10=25/10=2。
\n
9.A解析:該題考查的是遞歸函數(shù)的調(diào)用,題中讀fun函數(shù)進(jìn)行了遞歸調(diào)用,第1次調(diào)用:fun(3)n=3s=3-fun(2);第二次調(diào)用時(shí):fun(2)n=2s=2返回第一次調(diào)用后,s=3-2=1。
10.D
11.D形參是定義函數(shù)時(shí)由用戶定義的。實(shí)參是函數(shù)調(diào)用時(shí),主調(diào)函數(shù)為被調(diào)函數(shù)提供的原始數(shù)據(jù)。在C語(yǔ)言中,實(shí)參向形參傳送數(shù)據(jù)的方式是“值傳遞'是單向傳遞。故本題答案為D選項(xiàng)。
12.B解析:本題考查數(shù)據(jù)庫(kù)系統(tǒng)的基本概念和知識(shí)。
數(shù)據(jù)庫(kù)系統(tǒng)除了數(shù)據(jù)庫(kù)管理軟件之外,還心須有其他相關(guān)軟件的支持。這些軟件包括操作系統(tǒng)、編譯系統(tǒng)、應(yīng)用軟件開(kāi)發(fā)工具等。對(duì)于大型的多用戶數(shù)據(jù)庫(kù)系統(tǒng)和網(wǎng)絡(luò)數(shù)據(jù)庫(kù)系統(tǒng),還需要多用戶系統(tǒng)軟件和網(wǎng)絡(luò)系統(tǒng)軟件的支持。因此,選項(xiàng)A的說(shuō)法是錯(cuò)誤的。
數(shù)據(jù)庫(kù)可以看成是長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi)的、大量的、有結(jié)構(gòu)的和可共享的數(shù)據(jù)集合。因此,數(shù)據(jù)庫(kù)具有為各種用戶所共享的特點(diǎn)。不同的用戶可以使用同一個(gè)數(shù)據(jù)庫(kù),可以取出它們所需要的子集,而且容許子集任意重疊。數(shù)據(jù)庫(kù)的根本目標(biāo)是要解決數(shù)據(jù)的共享問(wèn)題。因此,選項(xiàng)B的說(shuō)法是正確的。
通常將引入數(shù)據(jù)庫(kù)技術(shù)的計(jì)算機(jī)系統(tǒng)稱為數(shù)據(jù)庫(kù)系統(tǒng)。一個(gè)數(shù)據(jù)庫(kù)系統(tǒng)通常由五個(gè)部分組成,包括相關(guān)計(jì)算機(jī)的硬件、數(shù)據(jù)庫(kù)集合、數(shù)據(jù)庫(kù)管理系統(tǒng)、相關(guān)軟件和人員。
因此,選項(xiàng)C的說(shuō)法是錯(cuò)誤的。
因此,本題的正確答案是選項(xiàng)B。
13.B
14.A數(shù)組說(shuō)明的一般形式為:類型說(shuō)明符數(shù)組名[常量表達(dá)式]。B)中N是變量,不能用變量定義數(shù)組長(zhǎng)度。C)選項(xiàng)中數(shù)組長(zhǎng)度是非法的一串?dāng)?shù)字。定義數(shù)組時(shí)必須為其指明長(zhǎng)度,D)選項(xiàng)中數(shù)組長(zhǎng)度為空,所以非法。
15.C
16.CA、B、D選項(xiàng)的含義均為:a的值如果為0,輸出y的值,否則輸出x的值。而C選項(xiàng)的含義是:a的值為0時(shí)輸出x的值,不為0時(shí)輸出y的值,與其他選項(xiàng)正好相反。故本題答案為C選項(xiàng)。
17.C
18.C
19.A解析:結(jié)構(gòu)化程序設(shè)計(jì)方法的四條原則是:①自頂向下;②逐步求精;③模塊化;④限制使用goto語(yǔ)句?!白皂斚蛳隆笔侵冈诔绦蛟O(shè)計(jì)時(shí),先考慮總體,后考慮細(xì)節(jié);先考慮全局目標(biāo),后考慮局部目標(biāo)?!爸鸩角缶笔侵笇?duì)復(fù)雜問(wèn)題應(yīng)設(shè)計(jì)一些子目標(biāo)作過(guò)渡,逐步細(xì)節(jié)化?!澳K化”是指一個(gè)復(fù)雜問(wèn)題由若干稍簡(jiǎn)單的問(wèn)題構(gòu)成;解決這個(gè)復(fù)雜問(wèn)題的程序,也應(yīng)由若干稍簡(jiǎn)單問(wèn)題的小程序組成。
20.B
21.消息消息解析:在面向?qū)ο蠹夹g(shù)中,主要用到對(duì)象(object)、類(class)、方法(method)、消息(message)、繼承(inheritance)、封裝(encapsulation)等基本概念。其中消息是用來(lái)請(qǐng)求對(duì)象執(zhí)行某一處理或回答某些信息的要求。
22.(y%2)==0(y%2)==0解析:因符合偶數(shù)的條件是對(duì)2取余為0,所以要描述y是偶數(shù)的表達(dá)式是(y%2)==0。
23.維護(hù)維護(hù)
24.空間復(fù)雜度空間復(fù)雜度解析:算法執(zhí)行時(shí)所需要的存儲(chǔ)空間,稱為算法的空間復(fù)雜度。
25.333,3解析:本題在while(n++<=1)語(yǔ)句后,直接加了分號(hào),說(shuō)明如果while()的條件為真時(shí),該循環(huán)什么都不做:n++是先取n的當(dāng)前值和1做比較,然后再將n加1。第一次循環(huán),n=0時(shí),循環(huán)條件n++=<1成立,執(zhí)行循環(huán),然后得到n=1。第二次循環(huán),n=1時(shí),循環(huán)條件n++=1<=1成立,執(zhí)行循環(huán),然后得到n=2。第三次循環(huán),n=2時(shí),循環(huán)條件n++=2<=1不成立,不執(zhí)行循環(huán),但在判斷循環(huán)條件時(shí)仍將n加1,得到n=3.退出循環(huán)后執(zhí)行printf語(yǔ)句,第二個(gè)printf語(yǔ)句輸出n++,是先輸出n的當(dāng)前值3,然后再將n加l,即程序結(jié)束后得到n=4,但輸出的是3。
26.(a+b>c)&&(a+c>b)&&(b+c>a)(a+b>c)&&(a+c>b)&&(b+c>a)解析:根據(jù)構(gòu)成三角形的條件:兩邊之和大于第三邊,得出空格應(yīng)該填(a+b>c)&&(a+c>b)&&(b+c>a)或與其等價(jià)的形式。
27.66解析:條件運(yùn)算符的優(yōu)先級(jí)高于賦值運(yùn)算符,因此本題先計(jì)算關(guān)系表達(dá)式(*ptr+y)<x)?*(ptr+y):x的值,再賦給變量z。當(dāng)y=0時(shí),*(ptr+y)=2,而x=8,(*(ptr+y)<x)條件為真,則整個(gè)條件表達(dá)式的值為*(ptr+y)=2,所以z=2;當(dāng)y-1時(shí),*(ptr+y)=4,(*(ptr+y)<x)條件為真,則整個(gè)條件表達(dá)式的值為*(ptr+y)=4,所以z=4;當(dāng)y=2時(shí),*(ptr+y)=6,(*(ptr+y)<x)條件為真,則整個(gè)條件表達(dá)式的值為*(ptr+y)=6,所以z=6;循環(huán)結(jié)束。因此輸出z的結(jié)果為6。
28.線性結(jié)構(gòu)線性結(jié)構(gòu)解析:隊(duì)列有且只有一個(gè)根結(jié)點(diǎn),而且每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件,滿足線性結(jié)構(gòu)的條件,所以屬于線性結(jié)構(gòu)。
29.數(shù)據(jù)存儲(chǔ)數(shù)據(jù)存儲(chǔ)
30.黑盒軟件測(cè)試的方法有三種:動(dòng)態(tài)測(cè)試、靜態(tài)測(cè)試和正確性證明。設(shè)計(jì)測(cè)試實(shí)例的方法一般有兩類:黑盒測(cè)試法和白盒測(cè)試法。在使用黑盒法設(shè)計(jì)測(cè)試實(shí)例時(shí),測(cè)試人員將程序看成一個(gè)“黑盒”,即不關(guān)心程序內(nèi)部是如何實(shí)現(xiàn)的,只是檢查程序是否符合它的“功能說(shuō)明”,所以使用黑盒法設(shè)計(jì)的測(cè)試用例完全是根據(jù)程序的功能說(shuō)明來(lái)設(shè)計(jì)的。
31.“filea.dat”“r”“filea.dat”,“r”解析:fopen函數(shù)的調(diào)用方式通常為fopen(文件名,使用文件方式)。本題中要求程序可以打開(kāi)filea.dat文件,并且是要讀取文件中的內(nèi)容,所以空白處應(yīng)當(dāng)填入'filea.dat','r'。
32.ii解析:本題使用了一個(gè)兩重for循環(huán)輸出如題所示的方陣。從外層for循環(huán)的最后一條語(yǔ)句prinff('\\n');可以看出,外層for循環(huán)每次輸出方陣的一行,由于方陣是4行所以外層循環(huán)會(huì)循環(huán)4次,又從j=4和卜可以看出這4次循環(huán),循環(huán)變量i的值分別為4、3、2、1.故前一空應(yīng)該填j>=1或者j>0,以保證j等于0時(shí)循環(huán)結(jié)束。內(nèi)層循環(huán)控制每行輸出的4個(gè)數(shù),其循環(huán)變量i從1遞增到4,由于每行的4個(gè)結(jié)果也是差1遞增的,所以將每次結(jié)果減去循環(huán)變量i的值為一個(gè)常數(shù),每行分別是12、8、4、0,而這些值正好與4次外循環(huán)中表達(dá)式(j-1)*4的值相吻合,故后一空應(yīng)該填i。
33.fopenfopen解析:C語(yǔ)言中的文件分為:ASCII文件與二進(jìn)制j文件。文件在使用前打開(kāi),使用后要關(guān)閉。打開(kāi)文件的函數(shù)為:fopen(),調(diào)用形式為:fp=fopen('文件名','使用文件方式:);
關(guān)閉文件的函數(shù)為:fclose(),調(diào)用形式為:fclose(fp);其中fp為文件指針。
34.可重用性繼承的優(yōu)點(diǎn):相似的對(duì)象可以共享程序代碼和數(shù)據(jù)結(jié)構(gòu),從而大大減少了程序中的冗余,提高軟件的可重用性。
35.11解析:本題考查局部變量和全局變量的區(qū)別:局部變量是指作用域在函數(shù)級(jí)和塊級(jí)的變量,全局變量是指作用域在程序級(jí)和文件級(jí)的變量。本程序首先定義了一個(gè)全局變量m=17,m=17的作用域在整個(gè)程序內(nèi)。在fun函數(shù)內(nèi)部定義了一個(gè)局部變量m=3,m=3的作用域僅在fun函數(shù)內(nèi)部,通過(guò)fun函數(shù)返回兩個(gè)形參的積再減m。在主函數(shù)中,輸出fun(a,b)/m=(5*7-3)/17=1。
36.CIRCLE(RLSV)S=PI*R*Rr1sv
37.驅(qū)動(dòng)模塊驅(qū)動(dòng)模塊解析:由于模塊通常不是獨(dú)立的程序,自己不能運(yùn)行,而需要其他模塊調(diào)用或驅(qū)動(dòng),同時(shí)被測(cè)試模塊還要去調(diào)用其他模塊,前者稱為驅(qū)動(dòng)模塊,后者稱為承接模塊。其中驅(qū)動(dòng)模塊的作用是將測(cè)試數(shù)據(jù)傳送給被測(cè)試的模塊,并顯示被測(cè)試模塊所產(chǎn)生的結(jié)果;承接模塊的作用是代替被測(cè)模塊,調(diào)用其他模塊。
38.3010130101解析:注意地址自增與變量自增的區(qū)別。
39.88解析:函數(shù)可以被遞歸調(diào)用,但是不能遞歸定義。有返回值的函數(shù)調(diào)用可以出現(xiàn)在表達(dá)式可以出現(xiàn)的任何地方。
40.*s-*t*s-*t解析:兩字符串大小比較必須從它們的首字符開(kāi)始,在對(duì)應(yīng)字符相等情況下循環(huán),直至不相等結(jié)束。相等時(shí),若字符串已到了字符串的結(jié)束標(biāo)記符,則兩字符串相同,函數(shù)返回0值;如還有后繼字符,則準(zhǔn)備比較下一對(duì)字符。對(duì)應(yīng)字符不相同,循環(huán)結(jié)束。循環(huán)結(jié)束時(shí),就以兩個(gè)當(dāng)前字符的差返回,所以在空框處應(yīng)填入*s-*t,保證在s>t時(shí),返回正值,當(dāng)s<t時(shí),返回負(fù)值。
41.D解析:結(jié)構(gòu)化程序設(shè)計(jì)要求把程序的結(jié)構(gòu)限制為順序、選擇和循環(huán)三種基本結(jié)構(gòu),以便提高程序的可讀性。這種結(jié)構(gòu)化程序具有以下兩個(gè)特點(diǎn):首先,以控制結(jié)構(gòu)為單位,只有一個(gè)入口和一個(gè)出口,使各單位之間的接口比較簡(jiǎn)單,每個(gè)單位也容易被人們所理解;其次,縮小了程序的靜態(tài)結(jié)構(gòu)與動(dòng)態(tài)執(zhí)行之間的差異,使人們能方便、正確地理解程序的功能。本題的正確答案是D。
42.D解析:由題意可知,小寫(xiě)字符a和大寫(xiě)字符A的ASCII代碼相差為32,所以選項(xiàng)C)能將大寫(xiě)字符c的ASCII代碼轉(zhuǎn)換為小寫(xiě)字符c的ASCⅡ代碼;選項(xiàng)A)和C)左側(cè)的表達(dá)式都是大寫(xiě)字符c與大寫(xiě)字符A的差與'a'的ASCII代碼的和就是小寫(xiě)字符c的ASCII代碼。而選項(xiàng)D)中應(yīng)該是加上'a',而不是減去'a'。
43.C解析:在C語(yǔ)言中,以“\\”開(kāi)頭的字符均為轉(zhuǎn)義字符,其中“\\”后可跟1~3位八進(jìn)制數(shù)或在“\\”后跟字母x及1~2位十六進(jìn)制數(shù),以此來(lái)代表一個(gè)特定的字符。
44.C解析:本題首先定義了一個(gè)4行5列的數(shù)組s,又定義了一個(gè)指向由5個(gè)元素組成的一維數(shù)組的指針變量ps,通過(guò)賦值讓ps指向了數(shù)組s的首地址。此時(shí)數(shù)組元素s[i][j]的地址為“*(ps+1)+j”,數(shù)組元素s[i][j]可表示為*(*(ps+1)+j)。選項(xiàng)B表示的是數(shù)組元素a[3][0]的地址;選項(xiàng)D表示的是數(shù)組元素s[1][3]的地址;選項(xiàng)A中“ps+1”為指向下一行(第二行)的地址;選項(xiàng)c中ps[0][2]無(wú)條件等價(jià)于“*(ps[0]+2)”又無(wú)條件等價(jià)于”(*(ps+0)+2)”,即是數(shù)組元素s[0][2]。所以,4個(gè)選項(xiàng)中C為所選。
45.A
46.B解析:本題中a的值為6,b的值為8,最后s的值為8,s*=s等價(jià)于s=s*s。
47.A解析:數(shù)據(jù)庫(kù)設(shè)計(jì)工作量大而且過(guò)程復(fù)雜,既是一項(xiàng)數(shù)據(jù)庫(kù)工程也是一項(xiàng)龐大的軟件工程??紤]數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng)開(kāi)發(fā)全過(guò)程,將數(shù)據(jù)庫(kù)設(shè)計(jì)分為以下6個(gè)階段:需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、物理結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)庫(kù)實(shí)施和數(shù)據(jù)庫(kù)的運(yùn)行和維護(hù)。
48.D解析:輸出格式控制符%c表示將變量以字符的形式輸出;輸出格式控制符%d表示將變量以帶符號(hào)的十進(jìn)制整型數(shù)輸出,所以第一個(gè)輸出語(yǔ)句輸出的結(jié)果為a,97;第二個(gè)輸出語(yǔ)句輸出的結(jié)果為k=12。
49.D解析:調(diào)用函數(shù)func(x,y),返回x+y,即7;再調(diào)用函數(shù)func(7,z),返回7+z,即15。
50.B解析:雙目運(yùn)算中兩邊運(yùn)算量類型轉(zhuǎn)換規(guī)律:
運(yùn)算數(shù)1運(yùn)算數(shù)2轉(zhuǎn)換結(jié)果類型
短整型長(zhǎng)整型短整型->長(zhǎng)整型
整型長(zhǎng)整型整型->長(zhǎng)整型
字符型整型字符型->整型
有符號(hào)整型無(wú)符號(hào)整型有符號(hào)整型->無(wú)符號(hào)整型
整型浮點(diǎn)型整型->浮點(diǎn)型
在a/b的時(shí)候,a、b的類型不一致,根據(jù)類型轉(zhuǎn)換規(guī)則,把整型轉(zhuǎn)換成double類型,之后的加、減類似。轉(zhuǎn)化規(guī)則為char,short->int->unsigned->long->double←float。
51.A解析:B選項(xiàng)中32應(yīng)加單引號(hào),C選項(xiàng)中f=f+1.1兩邊都是不定值,不正確;D中E后要用整型數(shù),且E后必須要有數(shù)字。
52.B解析:本題x賦初值為3,當(dāng)執(zhí)行printf('%d',x-);時(shí),由于X--的作用是先運(yùn)算x,再將x的值減1,所以,printf輸出的x值為3,等輸出后,x的值減1變?yōu)?,繼續(xù)執(zhí)行,判斷條件!x為假,循環(huán)只被執(zhí)行一次。
53.C
54.D解析:C語(yǔ)言的宏定義包括不帶參數(shù)的宏定義與帶參數(shù)的宏定義。本題為帶參數(shù)的宏定義,其形式為:
#define宏名(形參表)字符串
本題的M(a+b,b+c,c+a)被字符串a(chǎn)+b*b+c+c+a代替。
55.D解析:一個(gè)源文件中的外部變量的作用域是從定義該變量的位置開(kāi)始到本文件結(jié)束。
56.A
57.D解析:本題中定義了一個(gè)二維數(shù)組c和一個(gè)指針數(shù)組p并初始化讓它指向c,顯然此時(shí)p中的各元素為地址,選項(xiàng)A中p+1,此時(shí)其中的1代表的長(zhǎng)度是整個(gè);維數(shù)組c的長(zhǎng)度,故p+1將讓p指向c數(shù)組后面的元素,故不能引用c數(shù)組中的成員,故選項(xiàng)A錯(cuò)誤;同理選項(xiàng)B和選項(xiàng)C都不正確,選項(xiàng)D中p[0]指的是指針數(shù)組中的第一個(gè)元素的地址即c的首地址,此時(shí)的1的長(zhǎng)度代表的是數(shù)組c中一行的長(zhǎng)度,故p[0]+2代表的是第三行的首地址,而*(p[0]+2)將代表第三行的第一個(gè)元素的地址,所以,4個(gè)選項(xiàng)中選項(xiàng)D符合題意。
58.A解析:本題主要考查了字符輸入輸出函數(shù)getchar和putchar的使用。getchar函數(shù)用來(lái)從標(biāo)準(zhǔn)輸入設(shè)備上讀入一個(gè)字符,putchar(c)函數(shù)是將字符變量c中的字符輸出到標(biāo)準(zhǔn)輸出設(shè)備上,并且字符可以看作整數(shù)參與運(yùn)算。
59.D解析:在題中,i的值為3,由于“case3:”后面沒(méi)有break語(yǔ)句,所以繼續(xù)向下執(zhí)行“case4:”后面的語(yǔ)句,由于“case4:”后面的語(yǔ)句為break強(qiáng)行退出switch語(yǔ)句,所以,本題沒(méi)有任何輸出。
60.C解析:main()函數(shù)可以帶有參數(shù),并且參數(shù)只能有兩個(gè),第一個(gè)參數(shù)類型為整型,用來(lái)記下命令行的參數(shù)個(gè)數(shù);第二個(gè)參數(shù)為一個(gè)字符型指針數(shù)組,或字符型二級(jí)指針變量(指向一個(gè)數(shù)組,數(shù)組元素又是一個(gè)一級(jí)字符指針),其各個(gè)元素用來(lái)記下從命令行各參數(shù)字符中的首地址。故本題只有C選項(xiàng)不符合要求。
61.D本題主要考查自加與自減運(yùn)算符。在C語(yǔ)言中,自加與自減運(yùn)算符具有以下性質(zhì):
(1)自加運(yùn)算符“++”和自減運(yùn)算符“--”的運(yùn)算本身是一種賦值運(yùn)算,其結(jié)果是使運(yùn)算對(duì)象的值增1或減1。
(2)++、--運(yùn)算符是單目運(yùn)算符,運(yùn)算對(duì)象可以是整型變量或字符型變量,也可以是實(shí)型變量,但不能是常量和表達(dá)式。
(3)自加、自減運(yùn)算符無(wú)論是作為前綴還是后綴運(yùn)算符,對(duì)于變量而言,其效果相同,但作為表達(dá)式來(lái)說(shuō),其值不同。
(4)++和--運(yùn)算符的結(jié)合方向是“自右向左”。
(5)不要在一個(gè)表達(dá)式中對(duì)同一個(gè)變量進(jìn)行多次自增或自減運(yùn)算??梢灾辣绢}正確的答案是D。
62.D\r\n
63.D
64.B
65.C
66.A
67.A循環(huán)調(diào)用fun函數(shù),依次返回值為23456,s原值為l,累加以上返回值,最終結(jié)果為21,所以答案選擇A)。
68.B
69.D循環(huán)隊(duì)列有隊(duì)頭和隊(duì)尾兩個(gè)指針,但是循環(huán)隊(duì)列仍是線性結(jié)構(gòu)的,所以A錯(cuò)誤;在循環(huán)隊(duì)列中只需要隊(duì)頭指針與隊(duì)尾兩個(gè)指針來(lái)共同反映隊(duì)列中元素的動(dòng)態(tài)變化情況,所以B與C錯(cuò)誤。
70.D
71.C棧是先進(jìn)后出的數(shù)據(jù)結(jié)構(gòu),在對(duì)棧操作的整個(gè)過(guò)程中,棧底指針不變,入棧與出棧操作均由棧頂指針的變化來(lái)完成,因此本題答案為c)。
72.D
73.B
\n(x&1)&&(z<2)=(0.5&1)&&(a<z)=1&&1=1,故選擇B選項(xiàng)。
\n
74.A本題考查程序效率。程序效率是指程序運(yùn)行速度和程序占用的存儲(chǔ)空間。影響程序效率的因素是多方面的,包括程序的設(shè)計(jì)、使用的算法、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)等。在確定數(shù)據(jù)邏輯結(jié)構(gòu)的基礎(chǔ)上,選擇一種合適的存儲(chǔ)結(jié)構(gòu),可以使得數(shù)據(jù)操作所花費(fèi)的時(shí)間少,占用的存儲(chǔ)空間少,即提高程序的效率。因此,本題選項(xiàng)A的說(shuō)法是正確的。
75.A
76.A\n第一調(diào)用func函數(shù)時(shí)輸出4,第二次調(diào)用func函數(shù)時(shí)num的值并不會(huì)釋放,仍然是上次修改后的值4,第二次調(diào)用結(jié)果為8,所以輸出結(jié)果是48。
\n
77.B
78.B
\n當(dāng)b=1時(shí),a=1,第二個(gè)if語(yǔ)句成立,此時(shí)a=6,返回for循環(huán);當(dāng)b=2,兩個(gè)if語(yǔ)句都為假,此時(shí)a=3,再返回循環(huán);當(dāng)b=3,第二個(gè)if成立,此時(shí)a=8,繼續(xù)循環(huán);當(dāng)b=4,第一個(gè)if成立,退出for循環(huán)體時(shí)b為4,a為8。
\n
79.B此題考查除法運(yùn)算,根據(jù)先乘除后加減,有括號(hào)先算括號(hào)的原則,先計(jì)算x/y,即l2/8=1,所以z=0.9+1=1.9。但是Z是整型的,轉(zhuǎn)化一下取整除部分,結(jié)果Z=1
80.B用戶自定義標(biāo)識(shí)符不能與關(guān)鍵字相同。但可以與庫(kù)函數(shù)名相同,只是一般不建議用戶這么做。
81.錯(cuò)誤:t[i]=s[s1];
正確:t[i]=s[i];
【解析】函數(shù)proc()首先要實(shí)現(xiàn)將數(shù)組s中的元素順序放在數(shù)組t中,即數(shù)組t中下標(biāo)為i的元素在數(shù)組S中下標(biāo)也為i,因此“t[i]=s[s1];”應(yīng)改為“t[i]=s[i];”。
82.
【解析】根據(jù)題意,所寫(xiě)函數(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-2022年內(nèi)蒙古自治區(qū)呼倫貝爾市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.在inta=3,int*p=&a;中,*p的值是()
A.變量a的地址值B.無(wú)意義C.變量p的地址值D.3
2.將兩個(gè)字符串連接起來(lái)組成一個(gè)字符串時(shí),選用()函數(shù)。A.strlen()B.strcpy()C.strcat()D.strcmp()
3.數(shù)據(jù)庫(kù)DB、數(shù)據(jù)庫(kù)系統(tǒng)DBS、數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS之間的關(guān)系是()。
A.DB包括DBS和DBMSB.DBMS包括DB和DBSC.DBS包括DB和DBMSD.沒(méi)有任何關(guān)系
4.在下面的字符數(shù)組定義中,哪一個(gè)有語(yǔ)法錯(cuò)誤()。A.chara[20]=”abcdefg”;
B.chara[]=”x+y=55.”;
C.chara[15];
D.chara[10]=’5’;
5.
6.對(duì)n個(gè)數(shù)進(jìn)行排序,哪種算法,其時(shí)間復(fù)雜度在最壞和最好都是O(nlogn)()
A.快速排序B.希爾排序C.堆排序D.選擇排序
7.二進(jìn)制數(shù)1110111.11轉(zhuǎn)換成十進(jìn)制數(shù)是()。
A.119.375B.119.75C.119.125D.119.3
8.
下列程序的輸出結(jié)果是()。
main
{inta,b,d=25;
a=d/10%9;
b=a&&(一1);
printf("%d,%d\n",a,b);}
A.6,1B.2,1C.6,0D.2,0
9.以下程序的輸出結(jié)果是
longfun(intn)
{longs;
if(n==1||n==2)s=2;
elses=n-fun(n-1);
returns;}
main()
{printf("%ld\n",fun(3));}
A.1B.2C.3D.4
10.[0,2,1,4,3,9,5,8,6,7]是以數(shù)組形式存儲(chǔ)的最小堆,刪除堆頂元素0后的結(jié)果是()
A.[2,1,4,3,9,5,8,6,7]
B.[1,2,5,4,3,9,8,6,7]
C.[2,3,1,4,7,9,5,8,6]
D.[1,2,5,4,3,9,7,8,6]
11.下列敘述中錯(cuò)誤的是()。
A.C語(yǔ)言程序必須由一個(gè)或一個(gè)以上的函數(shù)組成
B.函數(shù)調(diào)用可以作為一個(gè)獨(dú)立的語(yǔ)句存在
C.若函數(shù)有返回值,必須通過(guò)return語(yǔ)句返回
D.函數(shù)形參的值也可以傳回給對(duì)應(yīng)的實(shí)參
12.下列敘述中正確的是()。
A.數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)獨(dú)立的系統(tǒng),不需要操作系統(tǒng)的支持
B.數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的共享問(wèn)題
C.數(shù)據(jù)庫(kù)管理系統(tǒng)就是數(shù)據(jù)庫(kù)系統(tǒng)
D.以上三種說(shuō)法都不對(duì)
13.
14.下列定義數(shù)組的語(yǔ)句中,正確的是()。A.#defineN10?intx[N];
B.intN=10;int[N];
C.intx0..10];
D.Intx[];.
15.
16.下列條件語(yǔ)句中,輸出結(jié)果與其他語(yǔ)句不同的是()。
A.if(a!=0)printf(“%d\n”,x);elseprintf(“%d\n”,y);
B.if(a==0)printf(“%d\n”,y);elseprintf(“%d\n”,x);
C.if(a==0)printf(“%d\n”,x);elseprintf(“%d\n”,y);
D.if(a)printf(“%d\n”,x);elseprintf(“%d\n”,y);
17.
18.對(duì)包含N個(gè)元素的散列表進(jìn)行檢索,平均檢索長(zhǎng)度________
A.為o(log2N)B.為o(N)C.不直接依賴于ND.上述三者都不是
19.下面描述中,符合結(jié)構(gòu)化程序設(shè)計(jì)風(fēng)格的是()。
A.使用順序、選擇和重復(fù)(循環(huán).三種基本控制結(jié)構(gòu)表示程序的控制邏輯
B.模塊只有一個(gè)入口,可以有多個(gè)出口
C.注重提高程序的執(zhí)行效率
D.不使用goto語(yǔ)句
20.以下程序的輸出結(jié)果是______。
A.54321
B.12345
C.12345
D.543210main(){intw=5;fun(w);printf("\n");}fun(intk){if(k>0)fun(k-1);printf("%d"",k);}
二、2.填空題(20題)21.在面向?qū)ο蟮脑O(shè)計(jì)中,用來(lái)請(qǐng)求對(duì)象執(zhí)行某一處理或回答某些信息的要求稱為【】。
22.設(shè)y為血型變量,請(qǐng)寫(xiě)出描述“y是偶數(shù)”的表達(dá)式______。
23.在軟件生命周期中,【】階段是花費(fèi)最多、持續(xù)時(shí)間最長(zhǎng)的階段。
24.算法執(zhí)行過(guò)程中所需要的存儲(chǔ)空間稱為算法的______。
25.寫(xiě)出下列程序的輸出結(jié)果______。
main()
{intn=0;
while(n++<=1);
printf("%d,",n);
printf("%d",n++);
}
26.以下程序用于判斷a,b,c能否構(gòu)成三角形,若能,輸出YES,否則輸出NO。當(dāng)給a,b,c輸入三角形三條邊長(zhǎng)時(shí),確定a,b,c能構(gòu)成三角形的條件是需同時(shí)滿足三個(gè)條件:a+b>c,a+c>b,b+c>a。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{floata,b,c;
scanf("%f%f%f",&a,&b,&c);
if(【】)printf("YES\n");/*a.b.c能構(gòu)成三角形*/
elseprinff("NO\n");/*a.b.c不能構(gòu)成三解形*/
}
27.下列程序的輸出結(jié)果是【】。
main()
{
inta[]={2,4,6},*ptr=&a[0],x=8,y,z;
for(y=0;y<3;y++)
z=(*(ptr+y)<x)?*(ptr+y):x;
printf("%d\n",z);
}
28.按照邏輯結(jié)構(gòu)分類,數(shù)據(jù)結(jié)構(gòu)可分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),隊(duì)列屬于______。
29.數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它通常包括5個(gè)部分,即數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、______和處理過(guò)程。
30.若按功能劃分,軟件測(cè)試的方法通常分為白盒測(cè)試方法和【】測(cè)試方法。
31.以下程序的作用是:從名為filea.dat的文本文件中逐個(gè)讀入字符并顯示在屏幕上。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{FILE*fp;charch;
fp=fopen(【】);
ch=fgetc(fp);
while(!feof(fp)){putchar(ch);ch=fgetc(fp);}
putchar('\n');fclose(fp);
}
32.以下程序的功能是輸出如下形式的方陣:
13141516
9101112
5678
1234
請(qǐng)?zhí)羁铡?/p>
main()
{inti,i,x;
for(j=4;j______;j--)
{for(i=1;i<4;i++)
{x=(j-1)*4+______;
printf("%4d",x);
}
printf("\n");
}
33.以下程序段打開(kāi)文件后,先利用fseek函數(shù)將文件位置指針定位在文件末尾,然后調(diào)用ftell函數(shù)返回當(dāng)前文件位置指針的具體位置,從而確定文件長(zhǎng)度,請(qǐng)?zhí)羁铡?/p>
FILE*myf;longf1;
myf=【】("test.t","rb");
fscek(myf,(),SEEK_END);f1+ftell(myf);
fclose(myf);
printf("%1d\n",f1);
34.一個(gè)類可以從直接或間接的祖先中繼承所有屬性和方法。采用這個(gè)方法提高了軟件的【】。
35.下列程序輸出的結(jié)果是______。
intm=17;
intfun(intx,inty)
{intm=3;
return(x*Y-m);
}
main()
{inta=5,b=7;
printf("%d\n",fun(a,B)/m);
}
36.計(jì)算圓的周長(zhǎng)、面積和球體積。
#definePI3.1415926
#define【】L=2*PI*R;【】;V=4.0/3.0*PI*R*R*R
main()
{floatr,l,s,v;
printf("inputaradus:");
scanf("%f",&r);
CIRCLE(r,l,s,v);
printf("r=%.2f\nl=%.2f\ns=%.2f\nv=%.2f\n",【】);
}
37.在進(jìn)行模塊測(cè)試時(shí),要為每個(gè)被測(cè)試的模塊另外設(shè)計(jì)兩類模塊:驅(qū)動(dòng)模塊和承接模塊,其中______的作用是將測(cè)試數(shù)據(jù)傳送給被測(cè)試的模塊,并顯示被測(cè)試模塊所產(chǎn)生的結(jié)果。
38.下面程序的輸出結(jié)果是【】。
structaa
{intx,*y;
}*p;
inta[8]={10,20,30,40,50,60,70,80};
structaab[4]={100,&a[1],200,&a[3],10,&a[5],20,&a[7]};
main()
{p=b;
printf(%d",*++p->y);
printf("%d\n",++(p->x));
}
39.閱讀下面程序,則程序的執(zhí)行結(jié)果為【】。
#include"stdio.h"
fun(intk,int*p)
{inta,b;
if(k==1‖k==2)
*p=1;
else{fun(k-1,&a);
fun(k-2,&b);
*p=a+b;}}
main()
{intx;
fun(6,&x);
printf("%d\n",x);}
40.函數(shù)my_cmp()的功能是比較字符串s和t的大小,當(dāng)s等于t時(shí)返回0,否則返回s和t的第一個(gè)不同字符的ASCII碼差值,即s>t時(shí)返回正值,s<t時(shí)返回負(fù)值。請(qǐng)?zhí)羁铡?/p>
My_cmp(char*s,char*t)
{while(*s==*t)
{if(*s==′\0)return0;
++s;++t;
}return【】;
}
三、1.選擇題(20題)41.結(jié)構(gòu)化程序設(shè)計(jì)的主要特點(diǎn)是()。
A.每個(gè)控制結(jié)構(gòu)要模塊化B.每個(gè)控制結(jié)構(gòu)具有封裝性C.每個(gè)控制結(jié)構(gòu)具有獨(dú)立性D.每個(gè)控制結(jié)構(gòu)只有一個(gè)入口和一個(gè)出口
42.已知大寫(xiě)字母A的ASCII碼是65,小寫(xiě)字母a的ASCII碼是97。下列不能將變量c中的大寫(xiě)字母轉(zhuǎn)換為對(duì)應(yīng)小寫(xiě)字母的語(yǔ)句是()。
A.c=(c-'A')%26+'a'
B.c=c+32
C.c=C-'A'+'a'
D.c=('A'+C)%26-'a'
43.下面語(yǔ)句的輸出結(jié)果是______。printf("%d\n",strlen("\t\"065\xff\n"));
A.14B.8C.5D.輸出項(xiàng)不合法,無(wú)正常輸出
44.若有以下定義和語(yǔ)句:ints[4][5],(*ps)[5];ps=s;則對(duì)s數(shù)組元素的正確引用形式是
A.ps+1B.*(ps+3)C.ps[0][2]D.*(ps+1)+3
45.有程序:voidfun(inta,intb,intc){a=456;b=567;c=678;}main(){intx=10,y=20,z=30;fun(x,y,Z);printf("%d,%d,%d\n",z,y,x);}輸出結(jié)果是()
A.30,20,10B.10,20,30C.456,567,678D.678,567,456
46.在執(zhí)行下述程序時(shí),若從鍵盤(pán)輸入6和8,則結(jié)果為
main()
{inta,b,s;
scanf("%d%d",&a,&b);
S=a
if(a<b)
s=b;
S*=s;
printf("%d",s);}
A.36B.64C.48D.以上都不對(duì)
47.下列哪一條不屬于數(shù)據(jù)庫(kù)設(shè)計(jì)的任務(wù)?()
A.設(shè)計(jì)數(shù)據(jù)庫(kù)應(yīng)用結(jié)構(gòu)B.設(shè)計(jì)數(shù)據(jù)庫(kù)概淪結(jié)構(gòu)C.設(shè)計(jì)數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)D.設(shè)計(jì)數(shù)據(jù)庫(kù)物理結(jié)構(gòu)
48.有以下程序段charch;intk;ch='a';k=12;printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);已知字符a的ASCII碼值為97,則執(zhí)行上述程序段后輸出結(jié)果是
A.因變量類型與格式描述符的類型不匹配輸出無(wú)定值
B.輸出項(xiàng)與格式描述符個(gè)數(shù)不符,輸出為零值或不定值
C.a,97,12k=12
D.a,97,k=12
49.有如下程序intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(func(x,y),z);printf("%d\n",r);}該程序的輸出結(jié)果是______。
A.12B.13C.14D.15
50.現(xiàn)有定義inta;doubleb;floatc;chark;,則表達(dá)式a/b+c-k值的類型為:
A.intB.doubleC.floatD.char
51.以下能正確定義且賦初值的語(yǔ)句是______。
A.iht=n1=n2=10;
B.charc=32;
C.floatf=f+1.1;
D.doublex=12.3E2.5
52.有如下程序main(){intx=3;do{printf("%d",x--);}while(!x);}該程序的執(zhí)行結(jié)果是______。
A.321B.3C.不輸出任何內(nèi)容D.陷入死循環(huán)
53.下面程序的輸出結(jié)果()main(){unsigneda=32768;printf("a=%d\n",a);}
A.a=32768B.a=32767C.a=-32768D.a=-1
54.以下程序的輸出結(jié)果是______。#defineM(x,y,z)x*y+zmain(){inta=1,b=2,c=3;printf("%d\n",M(a+b,b+c,c+a));}
A.19B.17C.15D.12
55.一個(gè)源文件中的外部變量的作用域?yàn)?)。
A.本文件的全部范圍B.本程序的全部范圍C.本函數(shù)的全部范圍D.從定義該變量的位置開(kāi)始到本文件結(jié)束
56.若有以下定義語(yǔ)句:char*sl="12345",*s2="1234";printf("%d"n",strlen(strcpy(s1,s2)));則輸出結(jié)果是()
A.4B.5C.9D.10
57.若有以下說(shuō)明和語(yǔ)句intc[4][5],(*p)[5];p=c;能夠正確引用c數(shù)組元素的是
A.p+1B.*(p+3)C.*(p+1)+3D.*(P[0]+2)
58.有以下程序
#include<stdio.h>
main()
{intc;
while((c=getchar())!=′\n)
{switch(c-′2′)
{case0:
case1:putchar(c+4);
case2:putchar(c+4);break;
case3:putchar(c+3);
case4:putchar(c+3);break;}}
printf("\n")}
從第一列開(kāi)始輸入以下數(shù)據(jù)<CR>代表一個(gè)回車(chē)符。
2743<CR>
程序的輸出結(jié)果是
A.66877B.668966C.6677877D.6688766
59.下列程序的輸出結(jié)果是______。main(){inti=3;switch(i){case1:case2:printf("%d",i);case3:case4:break;default:printf("OK");}}
A.0B.3C.OKD.沒(méi)有任何輸出
60.不合法的main函數(shù)命令行參數(shù)表示形式是______。
A.main(inta,char*c[])
B.main(intarc,char**arv)
C.main(intargc,char*argv)
D.main(intargv,char*argc[])
四、選擇題(20題)61.下列關(guān)于單目運(yùn)算符++、--的敘述中正確的是A.它們的運(yùn)算對(duì)象可以是任何變量和常量
B.它們的運(yùn)算對(duì)象可以是char型變量和int型變量,但不能是float型變量
C.它們的運(yùn)算對(duì)象可以是int型變量,但不能是double型變量和float型變量
D.它們的運(yùn)算對(duì)象可以是char型變量、int型變量和float型變量
62.
63.
64.
65.
66.
67.有以下程序程序運(yùn)行后的輸出結(jié)果是()。
A.21B.11C.6D.120
68.
69.下列敘述中正確的是()。
A.循環(huán)隊(duì)列有隊(duì)頭和隊(duì)尾兩個(gè)指針,因此,循環(huán)隊(duì)列是非線性結(jié)構(gòu)
B.在循環(huán)隊(duì)列中,只需要隊(duì)頭指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況
C.在循環(huán)隊(duì)列中,只需要隊(duì)尾指針就能反映隊(duì)列中元素的動(dòng)態(tài)變化情況
D.循環(huán)隊(duì)列中元素的個(gè)數(shù)是由隊(duì)頭指針和隊(duì)尾指針共同決定的
70.
71.下列敘述中正確的是()。A.在棧中,棧中元素隨棧底指針與棧頂指針的變化而動(dòng)態(tài)變化
B.在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動(dòng)態(tài)變化
C.在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動(dòng)態(tài)變化
D.在棧中,棧中元素不會(huì)隨棧底指針與棧頂指針的變化而動(dòng)態(tài)變化
72.
73.
以下程序的輸出結(jié)果是()。
main
{intx=0.5;charz=a;
printf("%d\n",(x&1)&&(z<2));}
A.0B.1C.2D.3
74.下列敘述中正確的是()。
A.程序執(zhí)行的效率與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)密切相關(guān)
B.程序執(zhí)行的效率只取決于程序的控制結(jié)構(gòu)
C.程序執(zhí)行的效率只取決于所處理的數(shù)據(jù)量
D.以上三種說(shuō)法都不對(duì)
75.
76.有以下程序:
#include<stdio.h>
voidfunc(intn)
{staticintnum=1);
num=num+n;printf("%d",num);
}
main()
{funo(3);func(4);printf("n");}
程序運(yùn)行后的輸出結(jié)果是()。
A.48B.34C.35D.45
77.
78.
以下程序的輸出結(jié)果是()。
main
{inta=1,b;
for(b=1,b<=10;b++)
{if(a>=8)break;
if(a%2==1){a+=5;continue;}
a=3;}
printf("%d\n",b);
A.3B.4C.5D.6
79.若有定義語(yǔ)句:“intx=12,y=8,z;”,在其后執(zhí)行語(yǔ)句“z=0.9+x/y;”,則z的值為()。A.1.9B.1C.2D.2.4
80.以下能定義為用戶標(biāo)識(shí)符的是()。
A.printfB.charC._8abcD.Void
五、程序改錯(cuò)題(1題)81.下列給定程序、中,函數(shù)proc()的功能是:先將字符串s中的字符按順序存放到t中,然后把s中的字符按正序連接到t的后面。例如,當(dāng)s中的字符串為WXYZ時(shí),則t中的字符串應(yīng)為WXYZWXYZ。請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.編寫(xiě)函數(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)中填入所編寫(xiě)的若干語(yǔ)句。試題程序:
參考答案
1.D
2.C將兩個(gè)字符串連接起來(lái)組成一個(gè)字符串,選用strcat函數(shù)來(lái)連接。
3.CC。【解析】數(shù)據(jù)庫(kù)系統(tǒng)(DBS)由數(shù)據(jù)庫(kù)(DBS)、數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)、數(shù)據(jù)庫(kù)管理員、硬件平臺(tái)和軟件平臺(tái)五個(gè)部分組成,可見(jiàn)DB和DBMS都是DBS的組成部分。
4.D
5.A
6.C
7.B
8.B
\n當(dāng)邏輯運(yùn)算符“&&”兩邊的值是非零時(shí),邏輯表達(dá)式的值為真(即為1)。所以b=2&&(-1)=1,2%9=2,故a=2,故先算a/10=25/10=2。
\n
9.A解析:該題考查的是遞歸函數(shù)的調(diào)用,題中讀fun函數(shù)進(jìn)行了遞歸調(diào)用,第1次調(diào)用:fun(3)n=3s=3-fun(2);第二次調(diào)用時(shí):fun(2)n=2s=2返回第一次調(diào)用后,s=3-2=1。
10.D
11.D形參是定義函數(shù)時(shí)由用戶定義的。實(shí)參是函數(shù)調(diào)用時(shí),主調(diào)函數(shù)為被調(diào)函數(shù)提供的原始數(shù)據(jù)。在C語(yǔ)言中,實(shí)參向形參傳送數(shù)據(jù)的方式是“值傳遞'是單向傳遞。故本題答案為D選項(xiàng)。
12.B解析:本題考查數(shù)據(jù)庫(kù)系統(tǒng)的基本概念和知識(shí)。
數(shù)據(jù)庫(kù)系統(tǒng)除了數(shù)據(jù)庫(kù)管理軟件之外,還心須有其他相關(guān)軟件的支持。這些軟件包括操作系統(tǒng)、編譯系統(tǒng)、應(yīng)用軟件開(kāi)發(fā)工具等。對(duì)于大型的多用戶數(shù)據(jù)庫(kù)系統(tǒng)和網(wǎng)絡(luò)數(shù)據(jù)庫(kù)系統(tǒng),還需要多用戶系統(tǒng)軟件和網(wǎng)絡(luò)系統(tǒng)軟件的支持。因此,選項(xiàng)A的說(shuō)法是錯(cuò)誤的。
數(shù)據(jù)庫(kù)可以看成是長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi)的、大量的、有結(jié)構(gòu)的和可共享的數(shù)據(jù)集合。因此,數(shù)據(jù)庫(kù)具有為各種用戶所共享的特點(diǎn)。不同的用戶可以使用同一個(gè)數(shù)據(jù)庫(kù),可以取出它們所需要的子集,而且容許子集任意重疊。數(shù)據(jù)庫(kù)的根本目標(biāo)是要解決數(shù)據(jù)的共享問(wèn)題。因此,選項(xiàng)B的說(shuō)法是正確的。
通常將引入數(shù)據(jù)庫(kù)技術(shù)的計(jì)算機(jī)系統(tǒng)稱為數(shù)據(jù)庫(kù)系統(tǒng)。一個(gè)數(shù)據(jù)庫(kù)系統(tǒng)通常由五個(gè)部分組成,包括相關(guān)計(jì)算機(jī)的硬件、數(shù)據(jù)庫(kù)集合、數(shù)據(jù)庫(kù)管理系統(tǒng)、相關(guān)軟件和人員。
因此,選項(xiàng)C的說(shuō)法是錯(cuò)誤的。
因此,本題的正確答案是選項(xiàng)B。
13.B
14.A數(shù)組說(shuō)明的一般形式為:類型說(shuō)明符數(shù)組名[常量表達(dá)式]。B)中N是變量,不能用變量定義數(shù)組長(zhǎng)度。C)選項(xiàng)中數(shù)組長(zhǎng)度是非法的一串?dāng)?shù)字。定義數(shù)組時(shí)必須為其指明長(zhǎng)度,D)選項(xiàng)中數(shù)組長(zhǎng)度為空,所以非法。
15.C
16.CA、B、D選項(xiàng)的含義均為:a的值如果為0,輸出y的值,否則輸出x的值。而C選項(xiàng)的含義是:a的值為0時(shí)輸出x的值,不為0時(shí)輸出y的值,與其他選項(xiàng)正好相反。故本題答案為C選項(xiàng)。
17.C
18.C
19.A解析:結(jié)構(gòu)化程序設(shè)計(jì)方法的四條原則是:①自頂向下;②逐步求精;③模塊化;④限制使用goto語(yǔ)句?!白皂斚蛳隆笔侵冈诔绦蛟O(shè)計(jì)時(shí),先考慮總體,后考慮細(xì)節(jié);先考慮全局目標(biāo),后考慮局部目標(biāo)。“逐步求精”是指對(duì)復(fù)雜問(wèn)題應(yīng)設(shè)計(jì)一些子目標(biāo)作過(guò)渡,逐步細(xì)節(jié)化。“模塊化”是指一個(gè)復(fù)雜問(wèn)題由若干稍簡(jiǎn)單的問(wèn)題構(gòu)成;解決這個(gè)復(fù)雜問(wèn)題的程序,也應(yīng)由若干稍簡(jiǎn)單問(wèn)題的小程序組成。
20.B
21.消息消息解析:在面向?qū)ο蠹夹g(shù)中,主要用到對(duì)象(object)、類(class)、方法(method)、消息(message)、繼承(inheritance)、封裝(encapsulation)等基本概念。其中消息是用來(lái)請(qǐng)求對(duì)象執(zhí)行某一處理或回答某些信息的要求。
22.(y%2)==0(y%2)==0解析:因符合偶數(shù)的條件是對(duì)2取余為0,所以要描述y是偶數(shù)的表達(dá)式是(y%2)==0。
23.維護(hù)維護(hù)
24.空間復(fù)雜度空間復(fù)雜度解析:算法執(zhí)行時(shí)所需要的存儲(chǔ)空間,稱為算法的空間復(fù)雜度。
25.333,3解析:本題在while(n++<=1)語(yǔ)句后,直接加了分號(hào),說(shuō)明如果while()的條件為真時(shí),該循環(huán)什么都不做:n++是先取n的當(dāng)前值和1做比較,然后再將n加1。第一次循環(huán),n=0時(shí),循環(huán)條件n++=<1成立,執(zhí)行循環(huán),然后得到n=1。第二次循環(huán),n=1時(shí),循環(huán)條件n++=1<=1成立,執(zhí)行循環(huán),然后得到n=2。第三次循環(huán),n=2時(shí),循環(huán)條件n++=2<=1不成立,不執(zhí)行循環(huán),但在判斷循環(huán)條件時(shí)仍將n加1,得到n=3.退出循環(huán)后執(zhí)行printf語(yǔ)句,第二個(gè)printf語(yǔ)句輸出n++,是先輸出n的當(dāng)前值3,然后再將n加l,即程序結(jié)束后得到n=4,但輸出的是3。
26.(a+b>c)&&(a+c>b)&&(b+c>a)(a+b>c)&&(a+c>b)&&(b+c>a)解析:根據(jù)構(gòu)成三角形的條件:兩邊之和大于第三邊,得出空格應(yīng)該填(a+b>c)&&(a+c>b)&&(b+c>a)或與其等價(jià)的形式。
27.66解析:條件運(yùn)算符的優(yōu)先級(jí)高于賦值運(yùn)算符,因此本題先計(jì)算關(guān)系表達(dá)式(*ptr+y)<x)?*(ptr+y):x的值,再賦給變量z。當(dāng)y=0時(shí),*(ptr+y)=2,而x=8,(*(ptr+y)<x)條件為真,則整個(gè)條件表達(dá)式的值為*(ptr+y)=2,所以z=2;當(dāng)y-1時(shí),*(ptr+y)=4,(*(ptr+y)<x)條件為真,則整個(gè)條件表達(dá)式的值為*(ptr+y)=4,所以z=4;當(dāng)y=2時(shí),*(ptr+y)=6,(*(ptr+y)<x)條件為真,則整個(gè)條件表達(dá)式的值為*(ptr+y)=6,所以z=6;循環(huán)結(jié)束。因此輸出z的結(jié)果為6。
28.線性結(jié)構(gòu)線性結(jié)構(gòu)解析:隊(duì)列有且只有一個(gè)根結(jié)點(diǎn),而且每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件,滿足線性結(jié)構(gòu)的條件,所以屬于線性結(jié)構(gòu)。
29.數(shù)據(jù)存儲(chǔ)數(shù)據(jù)存儲(chǔ)
30.黑盒軟件測(cè)試的方法有三種:動(dòng)態(tài)測(cè)試、靜態(tài)測(cè)試和正確性證明。設(shè)計(jì)測(cè)試實(shí)例的方法一般有兩類:黑盒測(cè)試法和白盒測(cè)試法。在使用黑盒法設(shè)計(jì)測(cè)試實(shí)例時(shí),測(cè)試人員將程序看成一個(gè)“黑盒”,即不關(guān)心程序內(nèi)部是如何實(shí)現(xiàn)的,只是檢查程序是否符合它的“功能說(shuō)明”,所以使用黑盒法設(shè)計(jì)的測(cè)試用例完全是根據(jù)程序的功能說(shuō)明來(lái)設(shè)計(jì)的。
31.“filea.dat”“r”“filea.dat”,“r”解析:fopen函數(shù)的調(diào)用方式通常為fopen(文件名,使用文件方式)。本題中要求程序可以打開(kāi)filea.dat文件,并且是要讀取文件中的
溫馨提示
- 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年度企業(yè)員工打架事件預(yù)防與干預(yù)協(xié)議書(shū)3篇
- 2025住建部下發(fā)新的合同文本
- 2025年度個(gè)人與公司租賃合同租賃物轉(zhuǎn)租及轉(zhuǎn)借限制3篇
- 二零二五年度環(huán)保型托盤(pán)租賃與可持續(xù)發(fā)展協(xié)議2篇
- 2025年度電梯行業(yè)市場(chǎng)調(diào)研與咨詢服務(wù)合同7篇
- 二零二四年度壓力鍋銷售返利及獎(jiǎng)勵(lì)合同3篇
- 二零二四年文化旅游景區(qū)運(yùn)營(yíng)合同
- 2025年度個(gè)人住房室內(nèi)水電維修服務(wù)合同范本
- 二零二五年度電視劇劇本改編與制作合作協(xié)議3篇
- 2025年度生態(tài)保護(hù)工程承包商安全環(huán)保責(zé)任協(xié)議4篇
- 道路瀝青工程施工方案
- 2025年度正規(guī)離婚協(xié)議書(shū)電子版下載服務(wù)
- 《田口方法的導(dǎo)入》課件
- 春節(jié)后安全生產(chǎn)開(kāi)工第一課
- 內(nèi)陸?zhàn)B殖與水產(chǎn)品市場(chǎng)營(yíng)銷策略考核試卷
- 電力電纜工程施工組織設(shè)計(jì)
- 醫(yī)生給病人免責(zé)協(xié)議書(shū)(2篇)
- 票據(jù)業(yè)務(wù)居間合同模板
- 應(yīng)急預(yù)案評(píng)分標(biāo)準(zhǔn)表
- “網(wǎng)絡(luò)安全課件:高校教師網(wǎng)絡(luò)安全與信息化素養(yǎng)培訓(xùn)”
- 鋰離子電池健康評(píng)估及剩余使用壽命預(yù)測(cè)方法研究
評(píng)論
0/150
提交評(píng)論