




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021-2022年江蘇省揚(yáng)州市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.
2.有以下函數(shù):intfun(char*x,char*y){intn=0;.while((*x==*y)&&*x!="\0){x++;y++;n++;}returnn;}函數(shù)的功能是()。
A.將y所指字符串賦給x所指存儲(chǔ)空間
B.查找和y所指字符串中是否有"\0'
C.統(tǒng)計(jì)x和y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)
D.統(tǒng)計(jì)x和y所指字符串中相同的字符個(gè)數(shù)
3.當(dāng)一個(gè)函數(shù)無(wú)返回值時(shí),定義它的函數(shù)類型應(yīng)是()。
A.voidB.intC.任意D.無(wú)
4.執(zhí)行下列程序后,輸出的結(jié)果是()。#include<stdio.h>#defineS(X)X*Xvoidmain{inta=9,k=3,m=2;a/=S(k+m)/S(k+m):printf("%d",a);}A.1B.4C.9D.0
5.有以下程序:#include<stdio.h>main(){char*p=“6938”;inti,s=0;for(i=3;i>=0;i--)s=10*s+p[i]-‘0’;printf(“%d\n”,s);}程序運(yùn)行后的輸出結(jié)果是()。
A.8396B.6938C.3869D.3689
6.軟件調(diào)試的目的是A.發(fā)現(xiàn)錯(cuò)誤B.改正錯(cuò)誤C.改善軟件的性能D.驗(yàn)證軟件的正確性
7.有以下程序:#include<stdio.h>main(){inta=1,b=2,c=3;charflag;flag=b>=2&&c<=3;switch(a){ case1:switch(flag) { case0:printf(“**”);break; case1:printf(“%%”);break; } case0:switch(c) { case1:printf(“$$”);break; case2:printf(“&&”);break; default:printf(“##”); }}printf(“\n”);}程序運(yùn)行后的輸出結(jié)果是()。
A.**$$B.%##C.%&&D.**##
8.下列程序的輸出的結(jié)果是()。main{doubled=3.2;intx,Y;x=1.2;v=(x+3.8)/5.0;printf("%d\n",d*y);}A.3B.3.2C.0D.3.07
9.
10.有以下程序:#include<stdio.h>intfun(intX,inty){if(X!=y)return((x+y)/2);elsereturn(x);}main(){inta=4,b=5,c=6;printf("%d/n",fun(2*a,fun(b,c)));}程序運(yùn)行后的輸入結(jié)果是()。A.3B.6C.8D.12
11.若已知一個(gè)棧的進(jìn)棧序列是1,2,3,,n,其輸出序列為p1,p2,p3,?,pn,若p1=n,則pi為()。
A.iB.n-iC.n-i+1D.不確定
12.在C語(yǔ)言中,函數(shù)返回值的類型最終取決于()。
A.函數(shù)定義時(shí)在函數(shù)首部所說(shuō)明的函數(shù)類型
B.return語(yǔ)句中表達(dá)式值的類型
C.調(diào)用函數(shù)時(shí)主調(diào)函數(shù)所傳遞的實(shí)參類型
D.函數(shù)定義時(shí)形參的類型
13.需求分析的主要任務(wù)是()。
A.確定軟件系統(tǒng)的功能B.確定軟件開發(fā)方法C.確定軟件開發(fā)工具D.確定軟件開發(fā)入員
14.下述程序的輸出結(jié)果是()。#include<stdio.h>voidmain(){chara=1,b=2;charc=a^b<<2;printf("\n%d",C);}
A.9B.10C.12D.2
15.有三個(gè)關(guān)系R、s和T如下:
由關(guān)系R和s通過運(yùn)算得到關(guān)系T,則所使用的運(yùn)算為()。
A.并B.自然連接C.笛卡爾積D.交
16.將兩個(gè)字符串連接起來(lái)組成一個(gè)字符串時(shí),選用()函數(shù)。A.strlen()B.strcpy()C.strcat()D.strcmp()
17.以下程序的輸出結(jié)果是()。voidprt(int*m.intn){inti;for(i=0;i<n;i++)m[i]++;)main{inta[]={1,2,3,4,5),i;prt(a,5);for(i=0;i<5;i++)printf(“%d,”,a[i]);)A.1,2,3,4,5B.2,3,4,5,6C.3,4,5,6,7D.2,3,4,5,1
18.
19.則以下函數(shù)調(diào)用語(yǔ)句錯(cuò)誤的是()。#include<stdio.h>intadd(inta,intb){return(a+b)}main(){intk,(*f)(),a=5,b=10;f=add;...}A.k=f(a,b);B.k=add(a,b);C.k=(*f(a,b);D.k=*f(a,b);
20.
二、2.填空題(20題)21.軟件工程研究的內(nèi)容主要包括:【】技術(shù)和軟件工程管理。
22.若按功能劃分,軟件測(cè)試的方法通常分為白盒測(cè)試方法和【】測(cè)試方法。
23.軟件測(cè)試分為白箱(盒)測(cè)試和黑箱(盒)測(cè)試。基本路徑測(cè)試方法屬于()測(cè)試。
24.設(shè)有下列程序:
#include<stdio.h>
#include<string.h>
main()
{inti;
chars[10],t[10];
gets(t);
for(i=0;i<2;i++)
{gets(s);
if(strcmp(t,s)<0)strcpy(t,s);
}
printf("%s\n",t);
}
程序運(yùn)行后,從鍵盤上輸入(<CR>代表回車符):DEF<CR>BADEF<CR>QTHRG<CR>,則程
序的輸出結(jié)果是______。
25.有以下程序:
intsub(intn){return(n/10+n%10);}
main()
{intx,y;
scanf("%d",&x);
y=sub(sub(sub(x)));
printf("%d\n",y);
}
若運(yùn)行時(shí)輸入:1234<回車>,程序的輸出結(jié)果是【】。
26.軟件測(cè)試是保證軟件質(zhì)量的重要手段,而軟件測(cè)試的主要和重要的測(cè)試方法是通過測(cè)試數(shù)據(jù)和【】的設(shè)計(jì)來(lái)實(shí)現(xiàn)。
27.函數(shù)voidfun(float*sn,intn)的功能是:根據(jù)以下公式計(jì)算s,計(jì)算結(jié)果通過形參指針sn傳回;n通過形參傳入,n的值大于等于0。請(qǐng)?zhí)羁铡?/p>
voidfun(float*sn,intn)
{floats=0.0,w,f=-1.0;
inti=0;
for(i=0;i<=n;i++)
{f=【】*f;
w=f/(2*i+1);
s+=w;}
【】=s;}
28.已定義charch='$';inti=1,j;,執(zhí)行j!=ch&&i++以后,i的值為______。
29.數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu),線性鏈表屬于【】。
30.寫出下列程序的輸出結(jié)果______。
main()
{intn=0;
while(n++<=1);
printf("%d,",n);
printf("%d",n++);
}
31.輸出若干學(xué)生3門課程的成績(jī)。
#include<stdio.h>
【】
structstudent
{intnum;
floatscore[3];
}
main()
{inti=0,n;
floata[3];
【】*ptr[200];
printf("請(qǐng)輸入學(xué)生學(xué)號(hào)和3門課成績(jī),學(xué)號(hào)為0表示數(shù)據(jù)輸入結(jié)束\n");
do
{ptr[i]=(structstudent*)malloc(sizeof(structstudent));
scanf("%d%f%f%f",&ptr[i]->num,&a[O],&a[1],&a[2]);
ptr[i]->score[O]=a[O];
ptr[i]->score[1]=a[1];
ptr[i]->score[2]=a[2];
if(【】)break;
i++;
}while(1);
n=i-1;
【】;
for(i=O;i<=n;i++)
printf("%-6d%.1f%.1f%.1f\n",ptr[i]->num,ptr[i]->score[0],
ptr[i]->score[1],ptr[i]->score[2]);}
32.若有語(yǔ)句:
inti=-19,j=i%4;
printf("%d\n",j);
則輸出結(jié)果是【】。
33.下列程序的運(yùn)行結(jié)果是【】。
#include<stdio.h>
voidmain()
{ints=0,k;
for(k=7;k>4;k--)
{switch(k)
{case1:
case4:
case7:s++;break;
case2:
case3:
case6:break;
case0:
case5:s+=2;break;}}
printf("s=%d",s);}
34.在數(shù)據(jù)庫(kù)系統(tǒng)中,實(shí)現(xiàn)各種數(shù)據(jù)管理功能的核心軟件稱為【】。
35.數(shù)據(jù)庫(kù)設(shè)計(jì)分為以下六個(gè)設(shè)計(jì)階段:需求分析階段、【】、邏輯設(shè)計(jì)階段、物理設(shè)計(jì)階段、實(shí)施階段、運(yùn)行和維護(hù)階段。
36.在數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)中,常用的描述工具是【】。
37.在進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì)時(shí),應(yīng)遵循的最主要原理是【】。
38.以下程序的輸出結(jié)果是()。
#include<stdio.h>
voidfun(intx)
{if(x/2>0)fun(x/2);
printf("%d",x);
}
main()
{fun(3);printf("\n");
}
39.已知字符A的ACSII碼值為65,以下語(yǔ)句的輸出結(jié)果是______。
charch='B';
printf("%c%d\n",ch,ch);
40.在運(yùn)算過程中,能夠使空表與非空表的運(yùn)算統(tǒng)一的結(jié)構(gòu)是【】。
三、1.選擇題(20題)41.有以下程序main(){intm,n;printf("Enterm,n:");scanf("%d%d",&m,&n);while(m!=n){while(m>n)m-=n;while(n>m)n-=m;}printf("m=%d\n",m);}如果從鍵盤上輸入6514<回車>,則輸出結(jié)果為()
A.m=3B.m=2C.m=1D.m=0
42.有以下程序floatfl(floatn){returnn*n;}floatf2(floatn){return2*n;}main(){float(*p1)(float),(*p2)(float),(*t)(float),y1,Y2;p1=f1;p2=f2;y1=p2(p1(2.O));t=p1;p1=p2;p2=t;y2=p2(pl(2.0));printf("%3.0f,%3,Of\n",y1,y2);}程序運(yùn)行后的輸出結(jié)果是
A.8,16B.8,8C.16,16D.4,8
43.對(duì)于下列字符串,說(shuō)明表達(dá)式strlen(s)值的是()。chars[10]={'a','\n','a','b','\t','c'};
A.10B.1C.6D.7
44.數(shù)據(jù)庫(kù)系統(tǒng)的核心是()。
A.數(shù)據(jù)模型B.數(shù)據(jù)庫(kù)管理系統(tǒng)C.數(shù)據(jù)庫(kù)D.數(shù)據(jù)庫(kù)管理員
45.軟件開發(fā)離不開系統(tǒng)環(huán)境資源的支持,其中必要的測(cè)試數(shù)據(jù)屬于A.硬件資源B.通信資源C.支持軟件D.輔助資源
46.下列程序的輸出結(jié)果是()。#include<stdio.h>#defineF(x)2.84+x#definew(y)printf("%d",(int)(y))#defineP(y)w(y)putchar('\n')main(){intx=2;P(F(5)*x);}
A.12B.13C.14D.16
47.關(guān)系表中的每一橫行稱為一個(gè)()。A.元組B.字段C.屬性D.碼
48.下列選項(xiàng)中不屬于軟件生命周期開發(fā)階段任務(wù)的是()。
A.軟件測(cè)試B.概要設(shè)計(jì)C.軟件維護(hù)D.詳細(xì)設(shè)計(jì)
49.數(shù)據(jù)流圖用于抽象描述一下軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名標(biāo)識(shí)的圖符不屬于數(shù)據(jù)流圖合法圖符的是______。
A.控制流B.加工C.數(shù)據(jù)存儲(chǔ)D.源和潭
50.已有定義:chara[]="xyz",b[]={'x','y','z'};,以下敘述中正確的是
A.數(shù)組a和b的長(zhǎng)度相同B.a數(shù)組長(zhǎng)度小于b數(shù)組長(zhǎng)度C.a數(shù)組長(zhǎng)度大于b數(shù)組長(zhǎng)度D.上述說(shuō)法都不對(duì)
51.運(yùn)行以下程序后,如果從鍵盤上輸入6514<回車>,則輸出結(jié)果為______。main(){intm,n;printf("Enterm,n:");scanf("%d%d",&m,&n);while(m!=n){while(m>n)m-=n;while(n>m)n-=m;}printf("m=%d\n",m);}
A.m=3B.m=2C.m=1D.m=0
52.設(shè)有下列二叉樹:
對(duì)此二叉樹中序遍歷的結(jié)果為______。
A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA
53.若函數(shù)調(diào)用時(shí)的實(shí)參為變量,以下關(guān)于函數(shù)形參和實(shí)參的敘述中正確的是()。
A.函數(shù)的實(shí)參和其對(duì)應(yīng)的形參共占同一存儲(chǔ)單元
B.形參只是形式上的存在,不占用具體存儲(chǔ)單元
C.同名的實(shí)參和形參占同一存儲(chǔ)單元
D.函數(shù)的彤參和實(shí)參分別占用不同的存儲(chǔ)單元
54.C語(yǔ)言提供的合法關(guān)鍵字是______。
A.swicthB.chanC.CaseD.default
55.以下敘述中錯(cuò)誤的是()
A.局部變量的定義可以在函數(shù)體和復(fù)合語(yǔ)句的內(nèi)部
B.全局變量的定義可以在函數(shù)以外的任何部位
C.同一程序內(nèi)局部變量和全局變量不允許同名
D.函數(shù)的形參屬于局部變量
56.變量m的值為8,m的地址為1010,若欲使p為指向m的指針變量,則下列賦值正確的是()。
A.&m=8B.*p=8C.*p=1010D.p=&m
57.有以下程序:#include<stdio.h>main(){inti=1,j=1,k=2;if((j++||k++)&&i++)printf("%d,%d,%d\n",i,j,k);}執(zhí)行后輸出結(jié)果是()。
A.1,1,2B.2,2,1C.2,2,2D.2,2,3
58.語(yǔ)句“printf("a\bhow\'are\'y\\\bou\n");”的輸出結(jié)果是()。
A.a\bhow\'are\'y\\bou
B.a\bhow\'are\'y\bou
C.how'are'you
D.ahow'are'y\bou
59.若函數(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ǔ)單元
60.若有如下程序:intsub(intm){if(m==1||m==0)return2;elsereturn(sub(m-1)*sub(m-2));}main(){intn;scanf("%d",&n);printf("%d",sub(n));}如果從鍵盤輸入4<回車>,則程序運(yùn)行后的輸出結(jié)果是()。
A.8B.16C.24D.32
四、選擇題(20題)61.有以下程序:
#definef(x)(x*x)main
{
inti1,i2;
i1=f(8)/(4);i2=f(4+4)/f(2+2);
printf("%d,%d\n",i1,i2);
}
程序運(yùn)行后的輸出結(jié)果是()。
A.64,28B.4,4C.4,3D.64,64
62.如果intC=3,d=4,k=0,下列描述正確的是()。A.c>d!=k和c>(d!=k)的執(zhí)行順序是一樣的
B.c&&d>k的結(jié)果為假
C.c||(d=k)執(zhí)行后d的值為0
D.!c!=(d!=k)表達(dá)式的值為1
63.
64.第
15
題
非空的循環(huán)單鏈表head的尾結(jié)點(diǎn)(由p所指向),滿足
A.p->next==NULLB.p==NULLC.p->next=headD.p=head
65.設(shè)有以下程序段:
structMP3
{charname[20];
charcolor;
floatprice;
}std,*ptr;
ptr=&std:
若要引用結(jié)構(gòu)體變量std中的color成員,寫法錯(cuò)誤的是()。
A.std.color
B.ptr->color
C.std->color
D.(*ptr)color
66.若執(zhí)行以下程序時(shí)從鍵盤上輸入9,則輸出結(jié)果是()。main(){intn;scanf(”%d”,&n);if(n++<10)printf(”/%d\n”,n);elseprintf(”%d\n”,n--);}A.11B.10C.9D.8
67.下列選項(xiàng)中屬于軟件生命周期開發(fā)階段任務(wù)的是()。
A.可行性研究
B.需求分析
C.詳細(xì)設(shè)計(jì)
D.軟件維護(hù)
68.
69.有兩個(gè)關(guān)系R、S如下:
由關(guān)系R通過運(yùn)算得到關(guān)系s,則所使用的運(yùn)算為()。
A.選擇B.投影C.插入D.連接
70.若a為int類型,且其值為3,則執(zhí)行完表達(dá)式a+=a-=a*a后,a的值是()。
A.-3B.9C.-12D.6
71.
72.
73.
74.
75.有以下程序程序的運(yùn)行結(jié)果是()。
A.321678B.876543C.1098765D.345678
76.
77.
78.合法的數(shù)組定義是()。
A.
B.
C.
D.
79.
80.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過程
B.軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測(cè)試完成的過程
C.軟件的開發(fā)過程
D.軟件的運(yùn)行維護(hù)過程
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)fun的功能是:求出s所指字符串中最后一次出現(xiàn)的t所指字符串的地址,并通過函數(shù)值返回,在主函數(shù)中輸出從此地址開始的字符串;’若未找到,則函數(shù)值為NULL。例如,當(dāng)字符串中的內(nèi)容為“123dabfl23dx”,t中內(nèi)容為“ab”時(shí),輸出結(jié)果應(yīng)是“l(fā)23dx”。當(dāng)字符串中的內(nèi)容為“l(fā)23dabfl23dx”,t中內(nèi)容為“aim”時(shí),則程序輸出未找到信息“Notfound!”。請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!試題程序:
六、程序設(shè)計(jì)題(1題)82.編寫函數(shù)fun,其功能是:實(shí)現(xiàn)兩個(gè)字符串的連接(不要使用庫(kù)函數(shù)strcat),即把p2所指的字符串連接到pl所指的字符串的后面。
例如,分別輸人下面兩個(gè)字符串:FirstString——SecondString
程序運(yùn)行后的輸出結(jié)果是:FirstString————SecondString
注意:部分源程序在文件PROGl.C中。
請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入你編寫的若干語(yǔ)句。
參考答案
1.B
2.C本題中由循環(huán)條件可知遇到“0或x與y所指的字符的值不等中的一個(gè)條件時(shí)就結(jié)束,所以功能是統(tǒng)計(jì)x和y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)。
3.A
4.D本題主要考查帶參數(shù)的宏定義,過程如下:由于定義為define(x)x*x沒有括號(hào)優(yōu)先級(jí),所以:a=a/(S(k+m)/S(k+m))=a/(k+m*k+m/k+m*k+m)=9/(3+2*3+2/3+2*3+2)=0。
5.A程序首先定義一個(gè)字符指針P,使其指向一個(gè)字符串“6938”。然后通過for循環(huán)使用逆序的方式遍歷字符串的各個(gè)字符,并將各個(gè)字符當(dāng)作整數(shù)參與算術(shù)運(yùn)算。其中,“p[i]-‘0’”的含義是將字符串中的數(shù)字字符轉(zhuǎn)換成對(duì)應(yīng)的整數(shù);“10*s+P[i]-‘0’”是將上一次運(yùn)算結(jié)果乘以10后與轉(zhuǎn)換后的整數(shù)相加,再累加到S中。所以for循環(huán)執(zhí)行完后,S的值是將字符串“6938”逆序后當(dāng)作整數(shù)輸出。故本題答案為A選項(xiàng)。
6.B本題考查軟件工程調(diào)試。調(diào)試與測(cè)試是兩個(gè)不同的過程,有著根本的區(qū)別:調(diào)試是一個(gè)隨機(jī)的、不可重復(fù)的過程,它用于隔離和確認(rèn)問題發(fā)生的原因,然后修改軟件來(lái)糾正問題;測(cè)試是一個(gè)有計(jì)劃的,可以重復(fù)的過程,它的目的是為了發(fā)現(xiàn)軟件中的問題。因此,軟件調(diào)試的目的是為了改正軟什中的錯(cuò)誤。本題的正確答案是選項(xiàng)\u3000B。
7.Bmain函數(shù)中,根據(jù)“b=2,c=3”可知表達(dá)式“b>=2&&c<=3”為真,flag值為1。由“a=1”和外層switch語(yǔ)句的case標(biāo)號(hào)沒有break語(yǔ)句,可知外層switch語(yǔ)句執(zhí)行case1,case0。對(duì)于外層case1:嵌套的switch語(yǔ)句根據(jù)“flag=1”執(zhí)行case1,執(zhí)行“printf(“%%”);”,輸出“%”,接著執(zhí)行break語(yǔ)句,結(jié)束內(nèi)層switch執(zhí)行外層;對(duì)于外層case0:嵌套的switch語(yǔ)句根據(jù)“c=3”執(zhí)行default語(yǔ)句,執(zhí)行“printf(“##”);”,輸出“##”。故本題答案為B選項(xiàng)。
8.C根據(jù)賦值運(yùn)算的類型轉(zhuǎn)換規(guī)則,先將double型的常量l.2轉(zhuǎn)換為int型,因?yàn)閤的類型是int,則X的值為1;執(zhí)行語(yǔ)句y=(K+3.8)/5.0時(shí),即先將整型變量X的值1轉(zhuǎn)換為double型1.0,然后3.8相加得4.8,進(jìn)行除法運(yùn)算4.8/5.0結(jié)果為0.即變量y的值為0,d*Y的值也為0,故選C選項(xiàng)。
9.A
10.B此題考查的是函數(shù)fun,fun(b,c)=5,然后fun(2*a,5)=fun(8,5)=6。
11.C
12.A解析:在C語(yǔ)言中,應(yīng)當(dāng)在定義函數(shù)時(shí)指定函數(shù)值的類型。凡不加類型說(shuō)明的函數(shù),默認(rèn)按整型處理。在定義函數(shù)時(shí)對(duì)函數(shù)值說(shuō)明的類型一般應(yīng)該和return語(yǔ)句中的表達(dá)式類型一致。如果函數(shù)值的類型和return語(yǔ)句中的表達(dá)式類型不一致,則以函數(shù)值的類型為準(zhǔn),由系統(tǒng)自動(dòng)進(jìn)行轉(zhuǎn)換,即函數(shù)類型決定返回值的類型。
13.A需求分析是軟件開發(fā)之前必須要做的準(zhǔn)備工作之一。需求是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。故需求分析的主要任務(wù)是確定軟件系統(tǒng)的功能。本題答案為A選項(xiàng)。
14.A
15.D關(guān)系R與s經(jīng)交運(yùn)算后所得到的關(guān)系是由那些既在R內(nèi)又在S內(nèi)的共有元組組成的,記為RnS。
16.C將兩個(gè)字符串連接起來(lái)組成一個(gè)字符串,選用strcat函數(shù)來(lái)連接。
17.B函數(shù)調(diào)用時(shí),prt函數(shù)的作用是為使m數(shù)組中的數(shù)自增1,因此數(shù)組下標(biāo)從0開始,每個(gè)元素都自加1。
18.B
19.DD選項(xiàng)中*f(a,b)表示調(diào)用后返回一個(gè)指向整型數(shù)據(jù)的地址指針,即該函數(shù)的返回值為指針類型,所以不能將其賦值給整形變量k。
20.D
21.軟件開發(fā)
22.黑盒軟件測(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ì)的。
23.自盒自盒解析:自盒測(cè)試法即結(jié)構(gòu)測(cè)試,它與程序內(nèi)部結(jié)構(gòu)相關(guān),要利用程序結(jié)構(gòu)的實(shí)現(xiàn)細(xì)節(jié)設(shè)計(jì)測(cè)試實(shí)例。白盒測(cè)試法主要有邏輯覆蓋、基本路徑測(cè)試等。
24.QTHRGQTHRG解析:函數(shù)strcmp(t,s)用來(lái)比較t和s所指字符串的大小,若t>s,則函數(shù)值大于0;若t=s,則函數(shù)值等于0:若t<s,則函數(shù)值小于0。函數(shù)strcpy(t,s)的功能是,把字符數(shù)組s所指字符串的內(nèi)容復(fù)制到字符數(shù)組t所指存儲(chǔ)空間中。本題中,t[10]='CDEF'。第一次循環(huán),s[10]='BADEF',if語(yǔ)句的控制條件strcmp(t,s)<0不成立,接著執(zhí)行第二次循環(huán),s='QTHRG',if語(yǔ)句的控制條件strcmp(t,s)<0成立,執(zhí)行下列的語(yǔ)句,將字符數(shù)組s所指字符串的內(nèi)容復(fù)制到字符數(shù)組t所指存儲(chǔ)空間中,然后輸出字符數(shù)組t。
25.1010解析:y=sub(sub(sub(x)))=sub(sub(127))=sub(19)=10。
26.測(cè)試實(shí)例測(cè)試實(shí)例解析:進(jìn)行軟件測(cè)試時(shí),應(yīng)精心設(shè)計(jì)測(cè)試實(shí)例和選擇測(cè)試數(shù)據(jù),以對(duì)系統(tǒng)進(jìn)行全面測(cè)試。
27.=-1*sn=-1\r\n*sn解析:C語(yǔ)言中實(shí)參變量和形參變量的數(shù)據(jù)傳遞是單向的“值傳遞”方式。指針變量作函數(shù)也要遵循這一規(guī)則。調(diào)用函數(shù)不可能改變實(shí)參指針變量的值,但可以改變實(shí)參指針變量所指變量的值。
28.11解析:在執(zhí)行邏輯表達(dá)式“j=!ch&&i++”時(shí),首先判斷j=!ch的值,因?yàn)椤癱h='$'”不為0,所以“j=!ch=0”,編譯系統(tǒng)便不再計(jì)算表達(dá)式“i++”的值,i的值不變,仍為1。
29.存儲(chǔ)結(jié)構(gòu)
30.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。
31.#include<alloc.h>structstudentptr[i]->num==Ofree(ptr[i])#include<alloc.h>\r\nstructstudent\r\nptr[i]->num==O\r\nfree(ptr[i])
32.-3-3解析:%運(yùn)算符是求兩個(gè)數(shù)相除的余數(shù),其結(jié)果與被除數(shù)的符號(hào)一致,本題中“-19%4”的值為“-3”。
33.s=3s=3解析:當(dāng)k=7時(shí),執(zhí)行case7,s++,s的值為1。當(dāng)k=6時(shí),直接break出switch結(jié)構(gòu);當(dāng)k=5時(shí),執(zhí)行case5,s+=2,s的值為3;當(dāng)k=4時(shí)由于不滿足for循環(huán)的條件,所以結(jié)束循環(huán),所以輸出的s的值為3。注意:循環(huán)語(yǔ)句和條件的嵌套使用。
34.數(shù)據(jù)庫(kù)管理系統(tǒng)或DBMS數(shù)據(jù)庫(kù)管理系統(tǒng)或DBMS解析:數(shù)據(jù)庫(kù)管理系統(tǒng)(DatabaseManagementSystem,DBMS)是一種操縱和管理數(shù)據(jù)庫(kù)的大型軟件,是用于建立、使用和維護(hù)數(shù)據(jù)庫(kù),簡(jiǎn)稱DBMS。它對(duì)數(shù)據(jù)庫(kù)進(jìn)行統(tǒng)一的管理和控制,以保證數(shù)據(jù)庫(kù)的安全性和完整性。用戶通過DBMS訪問數(shù)據(jù)庫(kù)中的數(shù)據(jù),數(shù)據(jù)庫(kù)管理員也通過DBMS進(jìn)行數(shù)據(jù)庫(kù)的維護(hù)工作。它提供多種功能,可使多個(gè)應(yīng)用程序和用戶用不同的方法在同時(shí)或不同時(shí)刻去建立,修改和詢問數(shù)據(jù)庫(kù)。因此,數(shù)據(jù)庫(kù)系統(tǒng)中,數(shù)據(jù)庫(kù)管理系統(tǒng)是實(shí)現(xiàn)各種數(shù)據(jù)管理功能的核心軟件。本題的答案是數(shù)據(jù)庫(kù)管理系統(tǒng)或DBMS。
35.概念設(shè)計(jì)階段概念設(shè)計(jì)階段解析:數(shù)據(jù)庫(kù)設(shè)計(jì)分為以下六個(gè)設(shè)計(jì)階段:需求分析階段、概念設(shè)計(jì)階段、邏輯設(shè)計(jì)階段、物理設(shè)計(jì)階段、實(shí)施階段及數(shù)據(jù)庫(kù)運(yùn)行和維護(hù)階段。
36.E-R圖E-R圖解析:E-R圖是設(shè)計(jì)概念模型的有力工具。
37.模塊獨(dú)立原理模塊獨(dú)立原理
38.1313解析:函數(shù)fun是一個(gè)遞歸函數(shù)。執(zhí)行fun(3);,x=3,x/2=1>0,又調(diào)用f(1),此時(shí),x=1,x/2=0,不滿足繼續(xù)遞歸調(diào)用的條件,輸出1,返回到fun(3)中,輸出3。所以本題的輸出結(jié)果為13。
39.B66B66解析:printf函數(shù)的功能是按照指定的格式,在標(biāo)準(zhǔn)輸出設(shè)備上輸出數(shù)據(jù),它有兩種參數(shù):格式控制參數(shù)和輸出項(xiàng)參數(shù)。本題中,printf('%c%d\\n',ch,ch)表示以字符格式和十進(jìn)制整數(shù)格式輸出ch,B的ACSII碼值為66,即在計(jì)算機(jī)中B的十進(jìn)制整數(shù)格式是66。所以,輸出為B66。
40.循環(huán)鏈表循環(huán)鏈表解析:在鏈表的運(yùn)算過程中,采用鏈接方式即循環(huán)鏈表的結(jié)構(gòu)把空表與非空表的運(yùn)算統(tǒng)一起來(lái)。循環(huán)鏈表具有兩個(gè)特點(diǎn):①在循環(huán)鏈表中增加了一個(gè)表頭結(jié)點(diǎn),其數(shù)據(jù)域?yàn)槿我饣蚋鶕?jù)需要來(lái)設(shè)置,指針域指向線性表的第一個(gè)元素的結(jié)點(diǎn)。循環(huán)鏈表的頭指針指向表頭結(jié)點(diǎn)。②循環(huán)鏈表中最后一個(gè)結(jié)點(diǎn)的指針不是空,而是指向表頭結(jié)點(diǎn)。
41.C
42.A解析:題目一開始定義了兩個(gè)函數(shù),f1()實(shí)現(xiàn)的是返回參數(shù)的平方;f2()實(shí)現(xiàn)的是返回參數(shù)的2倍。接下來(lái)在主函數(shù)中定義了三個(gè)函數(shù)指針p1,p2,t。語(yǔ)句p1=f1;p2=f2;讓指針p1指向函數(shù)n(),指針p2指向函數(shù)9()。然后調(diào)用p2(p1(2.0)),即讓2先平方再乘以2,結(jié)果為8并賦給y1。然后語(yǔ)句序列t=p1;p1=p2;p2=t;交換了p1和p2的值,即p1指向f2(),p2指向f1()。再調(diào)用p2(p1(2.0)),讓2先乘以2再平方,結(jié)果為16賦給y2.最后輸出y1,y2的值為8和16,應(yīng)該選擇A。
43.C解析:strlen(s)返回s字符串中字符的個(gè)數(shù),若s是個(gè)數(shù)組,則返回?cái)?shù)組元素的個(gè)數(shù)。
44.B解析:數(shù)據(jù)庫(kù)管理系統(tǒng)是數(shù)據(jù)庫(kù)系統(tǒng)的核心,是負(fù)責(zé)數(shù)據(jù)庫(kù)的建立、使用和維護(hù)的軟件。數(shù)據(jù)庫(kù)管理系統(tǒng)建立在操作系統(tǒng)之上,實(shí)施對(duì)數(shù)據(jù)庫(kù)的統(tǒng)一管理和控制。用戶使用的各種數(shù)據(jù)庫(kù)命令以及應(yīng)用程序的執(zhí)行,最終都必須通過數(shù)據(jù)庫(kù)管理系統(tǒng)。另外,數(shù)據(jù)庫(kù)管理系統(tǒng)還承擔(dān)著數(shù)據(jù)庫(kù)的安全保護(hù)工作,按照數(shù)據(jù)庫(kù)管理員所規(guī)定的要求,保證數(shù)據(jù)庫(kù)的完整性和安全性。
45.D軟件開發(fā)離不開系統(tǒng)環(huán)境資源的支持,其中主要的資源有硬件資源、通信資源、輔助資源等。(1)硬件資源是指組成計(jì)算機(jī)及相關(guān)應(yīng)用所需要的硬件,它是軟件開發(fā)必不可少的資源,因?yàn)闊o(wú)論什么樣的軟件工具都需要在硬件上完成任務(wù),它是其他資源的基礎(chǔ)資源。(2)通信資源是指為軟件開發(fā)提供通信支撐的資源,它與測(cè)試數(shù)據(jù)無(wú)關(guān)。(3)支持軟件是指為軟件開發(fā)提供操作平臺(tái)的軟件,如常用的面向?qū)ο箝_發(fā)的Rose軟件,它主要是軟件開發(fā)的工具。通過對(duì)上述分析的總結(jié),可以知道本題的正確答案選D。
46.A解析:本題考查帶參數(shù)的宏的定義及相關(guān)運(yùn)算。P(P(5)*x)=P(2.84+5*2)=P(12.84),調(diào)用w(12.84),輸出(int)(12.84)=12。
47.A解析:關(guān)系表中,每一行稱為一個(gè)元組,對(duì)應(yīng)表中的一條記錄;每一列稱為表中的一個(gè)屬性,對(duì)應(yīng)表中的一個(gè)字段;在二維表中凡能惟一標(biāo)識(shí)元組的最小屬性集稱為該表的鍵或碼。
48.C解析:軟件生命周期由軟件定義、軟件開發(fā)和軟件維護(hù)三個(gè)時(shí)期組成,每個(gè)時(shí)期又進(jìn)一步劃分為若干個(gè)階段。軟件定義時(shí)期的基本任務(wù)是確定軟件系統(tǒng)的工程需求。軟件定義可分為軟件系統(tǒng)的可行性研究和需求分析兩個(gè)階段。軟件開發(fā)時(shí)期是具體設(shè)計(jì)和實(shí)現(xiàn)在前一時(shí)期定義的軟件,它通常由下面五個(gè)階段組成:概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編寫代碼、組裝測(cè)試和確認(rèn)測(cè)試。軟件維護(hù)時(shí)期的主要任務(wù)是使軟件持久地滿足用戶的需要。即當(dāng)軟件在使用過程中發(fā)現(xiàn)錯(cuò)誤時(shí)應(yīng)加以改正;當(dāng)環(huán)境改變時(shí)應(yīng)該修改軟件,以適應(yīng)新的環(huán)境;當(dāng)用戶有新要求時(shí)應(yīng)該及時(shí)改進(jìn)軟件,以滿足用戶的新要求。根據(jù)上述對(duì)軟件生命周期的介紹,可知選項(xiàng)C中的軟件維護(hù)不是軟件生命周期開發(fā)階段的任務(wù)。因此,本題的正確答案是C。
49.A解析:數(shù)據(jù)流圖從數(shù)據(jù)傳遞和加工的角度,來(lái)刻畫數(shù)據(jù)流從輸入到輸出的移動(dòng)變換過程。數(shù)據(jù)流圖中的主要圖形元素有:加工(轉(zhuǎn)換)、數(shù)據(jù)流、存儲(chǔ)文件(數(shù)據(jù)源)、源和潭。
50.C解析:a數(shù)組存放的是字符串,系統(tǒng)會(huì)自動(dòng)在字符串的最后加上一個(gè)'\\0',所以a數(shù)組的長(zhǎng)度為4,而b數(shù)組的長(zhǎng)度為3,故a數(shù)組長(zhǎng)度大于b數(shù)組長(zhǎng)度。
51.C解析:分析程序可知,該程序?qū)崿F(xiàn)的功能是對(duì)數(shù)m,n求其最大公約數(shù)。在本題中m與n的值分別為65與14,其最大公約數(shù)為1,故其輸出結(jié)果為m=1。
52.B解析:所謂中序遍歷是指在訪問根結(jié)點(diǎn)、遍歷左子樹與遍歷右子樹這三者中,首先遍歷左子樹,然后訪問根結(jié)點(diǎn),最后遍歷右子樹;并且在遍歷左、右子樹時(shí),仍然先遍歷左子樹,然后訪問根結(jié)點(diǎn),最后遍歷右子樹。
53.D
54.D
55.C
56.D解析:指針變量是通過指向變量地址來(lái)指定變量值的。這里只要取m的地址賦給p,即可實(shí)現(xiàn)使p為指向m的指針變量。
57.C解析:該題目的關(guān)鍵是要搞清楚“&&”和“||”兩個(gè)邏輯運(yùn)算符的運(yùn)算功能。運(yùn)算符“&&”和“||”是雙目運(yùn)算符,要求有兩個(gè)運(yùn)算量。在邏輯與運(yùn)算中,只有當(dāng)“&&”運(yùn)算符前面運(yùn)算量的值為真時(shí),才需要判斷后面的值;若為假,就不必判斷后面的值。而在邏輯或運(yùn)算中,只要“||”運(yùn)算符前面的值為真,就不再判斷后面的值;只有前面的值為假,才判斷后面的值。本題中j++的值為真,因此不進(jìn)行k++運(yùn)算,k值保持不變,(j++||k++)的值為真,繼續(xù)計(jì)算i++,計(jì)算后i值為2。
58.C解析:“\\b”格式符表示退格,功能是將它后面的字母把它前面的字母覆蓋,導(dǎo)致“\\b'’格式符前面的字母不能輸出;“\\'”格式符表示輸出單引號(hào)字符;“\\\\”格式符表示輸出反斜線字符。
59.D解析:在定義函數(shù)時(shí)函數(shù)名后面括弧中的變量名稱為“形式參數(shù)”(簡(jiǎn)稱形參),在主調(diào)函數(shù)中調(diào)用一個(gè)函數(shù)時(shí),函數(shù)名后面括弧中的參數(shù)(可以是一個(gè)表達(dá)式)稱為“實(shí)際參數(shù)”(簡(jiǎn)稱實(shí)參)。C語(yǔ)言規(guī)定,實(shí)參變量對(duì)形參變量的數(shù)據(jù)傳遞是“值傳遞”,即單向傳遞,只由實(shí)參傳給形參,而不能由形參傳回來(lái)給實(shí)參。在內(nèi)存中,實(shí)參單元與形參單元是不同的單元。故本題應(yīng)該選擇D。
60.D解析:本題的sub()函數(shù)是一個(gè)遞歸函數(shù),當(dāng)參數(shù)m為1或0時(shí)返回2,否則返回sub(m-1)*sub(m-2)。所以sub(4)遞推下來(lái)就是sub(4)=sub(3)*sub(2)=sub(2)*sub(1)*sub(1)*sub(0)=sub(1)*sub(0)*2*2*2=25(上標(biāo))=32。所以正確答案是D。
61.C本題考套的是宏定義。對(duì)帶參數(shù)的宏的
展開只是將語(yǔ)句中宏名后面括號(hào)內(nèi)的實(shí)參字符串代替#define命令行中的形參。本題中“i1=f(8)/f(4)”用"#definef(x)(x*x)"代替得i1=(8*8)/(4*4),結(jié)果為4;
"i2=f(4+4)/f(2+2)"用“#definef(x)(x*x)”代替得i2=(4+4+4+4)/(2+2+2+2),求得結(jié)果為3。故本題輸出的值為4,3
62.DA)中>的優(yōu)先級(jí)大于!=,所以執(zhí)行順序不一樣;B)中c和d>k都為真,所以整個(gè)表達(dá)式為真;C)中不用執(zhí)行d=k,因?yàn)閏就可以確定這個(gè)表達(dá)式的值。
63.A
64.C循環(huán)鏈表是另一種形式的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。表中最后一個(gè)結(jié)點(diǎn)的指針域指向頭結(jié)點(diǎn),整個(gè)鏈表形成一個(gè)環(huán)。這種循環(huán)鏈表的好處是從任意結(jié)點(diǎn)開始都可以找到其他結(jié)點(diǎn)。
循環(huán)鏈表的操作和線性鏈表基本一致,差別僅在于鏈表最后的結(jié)點(diǎn),線性鏈表的判斷條件是結(jié)點(diǎn)的指針域是否為“空”,而循環(huán)鏈表的判斷條件是結(jié)點(diǎn)的指針域是否指向頭結(jié)點(diǎn)。非空的循環(huán)單鏈表head的尾結(jié)點(diǎn)p滿足p->next=head。
65.A\n本題中要引用結(jié)構(gòu)體變量std中的color,要使用指針,而std.color不是一個(gè)指針類型,所以答案選擇A。
\n
66.B當(dāng)n為9時(shí),此時(shí)if語(yǔ)句成立,執(zhí)行n++后,n為10,因此輸出n的值為10,故選擇B選項(xiàng)。
67.C\n軟件生命周期可分為軟件定義、軟件開發(fā)和軟件運(yùn)行維護(hù)3個(gè)階段。軟件開發(fā)期包括概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、實(shí)現(xiàn)和測(cè)試4個(gè)階段。
\n
68.B
69.B解析:專門的關(guān)系運(yùn)算包括:選擇、投影和連接。1、選擇:從關(guān)系中找出滿足給定條件的元組的操作稱為選擇。選擇是從行的角度進(jìn)行的運(yùn)算,即從水平方向抽取記錄。2、投影:從關(guān)系模式中指定若干個(gè)屬性組成新的關(guān)系。投影是從列的角度進(jìn)行的運(yùn)算,相當(dāng)于對(duì)關(guān)系進(jìn)行垂直分解。3、連接:連接是關(guān)系的橫向結(jié)合。連接運(yùn)算將兩個(gè)關(guān)系模式拼接成一個(gè)更寬的關(guān)系模式,生成的新關(guān)系中包含滿足連接條件的元組。連接過程是通過連接條件來(lái)控制的,連接條件中將出現(xiàn)兩個(gè)表中的公共屬性名,或者具有相同語(yǔ)義、可比的屬性。選擇和投影運(yùn)算的操作對(duì)象只是一個(gè)表。相當(dāng)于對(duì)一個(gè)二維表進(jìn)行切割。連接運(yùn)算需要兩個(gè)表操作為操作對(duì)象。由圖可知關(guān)系R通過運(yùn)算得到關(guān)系S。關(guān)系S與關(guān)系R相比,記錄的條數(shù)沒有發(fā)生變化,屬性的個(gè)數(shù)發(fā)生了變化。因此所使用的運(yùn)算應(yīng)該是投影。選項(xiàng)C插入運(yùn)算會(huì)增加記錄的條數(shù)。所以選項(xiàng)B是正確的。
70.C解析:本題中首先定義一個(gè)整型變量a并給它賦初值為3,在表達(dá)式中,從右開始執(zhí)行,即先執(zhí)行“a-=a*a;”等價(jià)于a=a-a*a即a=3-3*3=-6,此時(shí)a的值為-6,接著執(zhí)行“a+=a-;”相當(dāng)于執(zhí)行a=a+a即a=-6+(-6)=-12,此時(shí)a的值為-12。所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。
71.C
72.C
73.C
74.B
75.A本題中,函數(shù)fun()的功能是將數(shù)組k中前5個(gè)元素倒序,因此返回后數(shù)組k中的元素排列是5…432,l,6,7,8,9,10。程序打印輸,hqk[21到k[71元素的值,flP321678,所以選擇A)。
76.C
77.C
78.B選項(xiàng)A),字符串”string”中的元素是char類型,而數(shù)組a中存放的是int類型的元素,不匹配。選項(xiàng)c),a中只能存放字符類型數(shù)據(jù),而”0”是字符串。選項(xiàng)D),定義二維數(shù)組時(shí),列數(shù)不可省略。
79.A
80.A通常,將軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過程稱為軟件生命周期。也就是說(shuō),軟件產(chǎn)品從考慮其概念開始,到該軟件產(chǎn)品不能使用為止的整個(gè)時(shí)期都屬于軟件生命周期。
81.
82.
voidfun(charpl[],charp2[])
in“,j;
for(i=0;pl[i]f=。、0’;i++);
for(j=0;p2[j]!=。、0’;j++)p1[i++]=p2[j];
p1[i],_。、0’;}
【考點(diǎn)分析】“
本題考查:不使用字符串函數(shù)實(shí)現(xiàn)字符串連接操作。通過for循環(huán)語(yǔ)句來(lái)完成,不要忘了最后需要加上字符串結(jié)束標(biāo)識(shí)‘、0’。
【解題思路】
本題用兩個(gè)循環(huán)完成操作,第1個(gè)循環(huán)的作用是求出第1個(gè)字符串的長(zhǎng)度,即將i指到第1個(gè)字符串的末尾。第2個(gè)循環(huán)的作用是將第2個(gè)字符串的字符連到第l個(gè)字符申的末尾。最后在第l個(gè)字符串的結(jié)尾加上字符串結(jié)束標(biāo)識(shí)‘、0’。2021-2022年江蘇省揚(yáng)州市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.
2.有以下函數(shù):intfun(char*x,char*y){intn=0;.while((*x==*y)&&*x!="\0){x++;y++;n++;}returnn;}函數(shù)的功能是()。
A.將y所指字符串賦給x所指存儲(chǔ)空間
B.查找和y所指字符串中是否有"\0'
C.統(tǒng)計(jì)x和y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)
D.統(tǒng)計(jì)x和y所指字符串中相同的字符個(gè)數(shù)
3.當(dāng)一個(gè)函數(shù)無(wú)返回值時(shí),定義它的函數(shù)類型應(yīng)是()。
A.voidB.intC.任意D.無(wú)
4.執(zhí)行下列程序后,輸出的結(jié)果是()。#include<stdio.h>#defineS(X)X*Xvoidmain{inta=9,k=3,m=2;a/=S(k+m)/S(k+m):printf("%d",a);}A.1B.4C.9D.0
5.有以下程序:#include<stdio.h>main(){char*p=“6938”;inti,s=0;for(i=3;i>=0;i--)s=10*s+p[i]-‘0’;printf(“%d\n”,s);}程序運(yùn)行后的輸出結(jié)果是()。
A.8396B.6938C.3869D.3689
6.軟件調(diào)試的目的是A.發(fā)現(xiàn)錯(cuò)誤B.改正錯(cuò)誤C.改善軟件的性能D.驗(yàn)證軟件的正確性
7.有以下程序:#include<stdio.h>main(){inta=1,b=2,c=3;charflag;flag=b>=2&&c<=3;switch(a){ case1:switch(flag) { case0:printf(“**”);break; case1:printf(“%%”);break; } case0:switch(c) { case1:printf(“$$”);break; case2:printf(“&&”);break; default:printf(“##”); }}printf(“\n”);}程序運(yùn)行后的輸出結(jié)果是()。
A.**$$B.%##C.%&&D.**##
8.下列程序的輸出的結(jié)果是()。main{doubled=3.2;intx,Y;x=1.2;v=(x+3.8)/5.0;printf("%d\n",d*y);}A.3B.3.2C.0D.3.07
9.
10.有以下程序:#include<stdio.h>intfun(intX,inty){if(X!=y)return((x+y)/2);elsereturn(x);}main(){inta=4,b=5,c=6;printf("%d/n",fun(2*a,fun(b,c)));}程序運(yùn)行后的輸入結(jié)果是()。A.3B.6C.8D.12
11.若已知一個(gè)棧的進(jìn)棧序列是1,2,3,,n,其輸出序列為p1,p2,p3,?,pn,若p1=n,則pi為()。
A.iB.n-iC.n-i+1D.不確定
12.在C語(yǔ)言中,函數(shù)返回值的類型最終取決于()。
A.函數(shù)定義時(shí)在函數(shù)首部所說(shuō)明的函數(shù)類型
B.return語(yǔ)句中表達(dá)式值的類型
C.調(diào)用函數(shù)時(shí)主調(diào)函數(shù)所傳遞的實(shí)參類型
D.函數(shù)定義時(shí)形參的類型
13.需求分析的主要任務(wù)是()。
A.確定軟件系統(tǒng)的功能B.確定軟件開發(fā)方法C.確定軟件開發(fā)工具D.確定軟件開發(fā)入員
14.下述程序的輸出結(jié)果是()。#include<stdio.h>voidmain(){chara=1,b=2;charc=a^b<<2;printf("\n%d",C);}
A.9B.10C.12D.2
15.有三個(gè)關(guān)系R、s和T如下:
由關(guān)系R和s通過運(yùn)算得到關(guān)系T,則所使用的運(yùn)算為()。
A.并B.自然連接C.笛卡爾積D.交
16.將兩個(gè)字符串連接起來(lái)組成一個(gè)字符串時(shí),選用()函數(shù)。A.strlen()B.strcpy()C.strcat()D.strcmp()
17.以下程序的輸出結(jié)果是()。voidprt(int*m.intn){inti;for(i=0;i<n;i++)m[i]++;)main{inta[]={1,2,3,4,5),i;prt(a,5);for(i=0;i<5;i++)printf(“%d,”,a[i]);)A.1,2,3,4,5B.2,3,4,5,6C.3,4,5,6,7D.2,3,4,5,1
18.
19.則以下函數(shù)調(diào)用語(yǔ)句錯(cuò)誤的是()。#include<stdio.h>intadd(inta,intb){return(a+b)}main(){intk,(*f)(),a=5,b=10;f=add;...}A.k=f(a,b);B.k=add(a,b);C.k=(*f(a,b);D.k=*f(a,b);
20.
二、2.填空題(20題)21.軟件工程研究的內(nèi)容主要包括:【】技術(shù)和軟件工程管理。
22.若按功能劃分,軟件測(cè)試的方法通常分為白盒測(cè)試方法和【】測(cè)試方法。
23.軟件測(cè)試分為白箱(盒)測(cè)試和黑箱(盒)測(cè)試?;韭窂綔y(cè)試方法屬于()測(cè)試。
24.設(shè)有下列程序:
#include<stdio.h>
#include<string.h>
main()
{inti;
chars[10],t[10];
gets(t);
for(i=0;i<2;i++)
{gets(s);
if(strcmp(t,s)<0)strcpy(t,s);
}
printf("%s\n",t);
}
程序運(yùn)行后,從鍵盤上輸入(<CR>代表回車符):DEF<CR>BADEF<CR>QTHRG<CR>,則程
序的輸出結(jié)果是______。
25.有以下程序:
intsub(intn){return(n/10+n%10);}
main()
{intx,y;
scanf("%d",&x);
y=sub(sub(sub(x)));
printf("%d\n",y);
}
若運(yùn)行時(shí)輸入:1234<回車>,程序的輸出結(jié)果是【】。
26.軟件測(cè)試是保證軟件質(zhì)量的重要手段,而軟件測(cè)試的主要和重要的測(cè)試方法是通過測(cè)試數(shù)據(jù)和【】的設(shè)計(jì)來(lái)實(shí)現(xiàn)。
27.函數(shù)voidfun(float*sn,intn)的功能是:根據(jù)以下公式計(jì)算s,計(jì)算結(jié)果通過形參指針sn傳回;n通過形參傳入,n的值大于等于0。請(qǐng)?zhí)羁铡?/p>
voidfun(float*sn,intn)
{floats=0.0,w,f=-1.0;
inti=0;
for(i=0;i<=n;i++)
{f=【】*f;
w=f/(2*i+1);
s+=w;}
【】=s;}
28.已定義charch='$';inti=1,j;,執(zhí)行j!=ch&&i++以后,i的值為______。
29.數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu),線性鏈表屬于【】。
30.寫出下列程序的輸出結(jié)果______。
main()
{intn=0;
while(n++<=1);
printf("%d,",n);
printf("%d",n++);
}
31.輸出若干學(xué)生3門課程的成績(jī)。
#include<stdio.h>
【】
structstudent
{intnum;
floatscore[3];
}
main()
{inti=0,n;
floata[3];
【】*ptr[200];
printf("請(qǐng)輸入學(xué)生學(xué)號(hào)和3門課成績(jī),學(xué)號(hào)為0表示數(shù)據(jù)輸入結(jié)束\n");
do
{ptr[i]=(structstudent*)malloc(sizeof(structstudent));
scanf("%d%f%f%f",&ptr[i]->num,&a[O],&a[1],&a[2]);
ptr[i]->score[O]=a[O];
ptr[i]->score[1]=a[1];
ptr[i]->score[2]=a[2];
if(【】)break;
i++;
}while(1);
n=i-1;
【】;
for(i=O;i<=n;i++)
printf("%-6d%.1f%.1f%.1f\n",ptr[i]->num,ptr[i]->score[0],
ptr[i]->score[1],ptr[i]->score[2]);}
32.若有語(yǔ)句:
inti=-19,j=i%4;
printf("%d\n",j);
則輸出結(jié)果是【】。
33.下列程序的運(yùn)行結(jié)果是【】。
#include<stdio.h>
voidmain()
{ints=0,k;
for(k=7;k>4;k--)
{switch(k)
{case1:
case4:
case7:s++;break;
case2:
case3:
case6:break;
case0:
case5:s+=2;break;}}
printf("s=%d",s);}
34.在數(shù)據(jù)庫(kù)系統(tǒng)中,實(shí)現(xiàn)各種數(shù)據(jù)管理功能的核心軟件稱為【】。
35.數(shù)據(jù)庫(kù)設(shè)計(jì)分為以下六個(gè)設(shè)計(jì)階段:需求分析階段、【】、邏輯設(shè)計(jì)階段、物理設(shè)計(jì)階段、實(shí)施階段、運(yùn)行和維護(hù)階段。
36.在數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)中,常用的描述工具是【】。
37.在進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì)時(shí),應(yīng)遵循的最主要原理是【】。
38.以下程序的輸出結(jié)果是()。
#include<stdio.h>
voidfun(intx)
{if(x/2>0)fun(x/2);
printf("%d",x);
}
main()
{fun(3);printf("\n");
}
39.已知字符A的ACSII碼值為65,以下語(yǔ)句的輸出結(jié)果是______。
charch='B';
printf("%c%d\n",ch,ch);
40.在運(yùn)算過程中,能夠使空表與非空表的運(yùn)算統(tǒng)一的結(jié)構(gòu)是【】。
三、1.選擇題(20題)41.有以下程序main(){intm,n;printf("Enterm,n:");scanf("%d%d",&m,&n);while(m!=n){while(m>n)m-=n;while(n>m)n-=m;}printf("m=%d\n",m);}如果從鍵盤上輸入6514<回車>,則輸出結(jié)果為()
A.m=3B.m=2C.m=1D.m=0
42.有以下程序floatfl(floatn){returnn*n;}floatf2(floatn){return2*n;}main(){float(*p1)(float),(*p2)(float),(*t)(float),y1,Y2;p1=f1;p2=f2;y1=p2(p1(2.O));t=p1;p1=p2;p2=t;y2=p2(pl(2.0));printf("%3.0f,%3,Of\n",y1,y2);}程序運(yùn)行后的輸出結(jié)果是
A.8,16B.8,8C.16,16D.4,8
43.對(duì)于下列字符串,說(shuō)明表達(dá)式strlen(s)值的是()。chars[10]={'a','\n','a','b','\t','c'};
A.10B.1C.6D.7
44.數(shù)據(jù)庫(kù)系統(tǒng)的核心是()。
A.數(shù)據(jù)模型B.數(shù)據(jù)庫(kù)管理系統(tǒng)C.數(shù)據(jù)庫(kù)D.數(shù)據(jù)庫(kù)管理員
45.軟件開發(fā)離不開系統(tǒng)環(huán)境資源的支持,其中必要的測(cè)試數(shù)據(jù)屬于A.硬件資源B.通信資源C.支持軟件D.輔助資源
46.下列程序的輸出結(jié)果是()。#include<stdio.h>#defineF(x)2.84+x#definew(y)printf("%d",(int)(y))#defineP(y)w(y)putchar('\n')main(){intx=2;P(F(5)*x);}
A.12B.13C.14D.16
47.關(guān)系表中的每一橫行稱為一個(gè)()。A.元組B.字段C.屬性D.碼
48.下列選項(xiàng)中不屬于軟件生命周期開發(fā)階段任務(wù)的是()。
A.軟件測(cè)試B.概要設(shè)計(jì)C.軟件維護(hù)D.詳細(xì)設(shè)計(jì)
49.數(shù)據(jù)流圖用于抽象描述一下軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名標(biāo)識(shí)的圖符不屬于數(shù)據(jù)流圖合法圖符的是______。
A.控制流B.加工C.數(shù)據(jù)存儲(chǔ)D.源和潭
50.已有定義:chara[]="xyz",b[]={'x','y','z'};,以下敘述中正確的是
A.數(shù)組a和b的長(zhǎng)度相同B.a數(shù)組長(zhǎng)度小于b數(shù)組長(zhǎng)度C.a數(shù)組長(zhǎng)度大于b數(shù)組長(zhǎng)度D.上述說(shuō)法都不對(duì)
51.運(yùn)行以下程序后,如果從鍵盤上輸入6514<回車>,則輸出結(jié)果為______。main(){intm,n;printf("Enterm,n:");scanf("%d%d",&m,&n);while(m!=n){while(m>n)m-=n;while(n>m)n-=m;}printf("m=%d\n",m);}
A.m=3B.m=2C.m=1D.m=0
52.設(shè)有下列二叉樹:
對(duì)此二叉樹中序遍歷的結(jié)果為______。
A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA
53.若函數(shù)調(diào)用時(shí)的實(shí)參為變量,以下關(guān)于函數(shù)形參和實(shí)參的敘述中正確的是()。
A.函數(shù)的實(shí)參和其對(duì)應(yīng)的形參共占同一存儲(chǔ)單元
B.形參只是形式上的存在,不占用具體存儲(chǔ)單元
C.同名的實(shí)參和形參占同一存儲(chǔ)單元
D.函數(shù)的彤參和實(shí)參分別占用不同的存儲(chǔ)單元
54.C語(yǔ)言提供的合法關(guān)鍵字是______。
A.swicthB.chanC.CaseD.default
55.以下敘述中錯(cuò)誤的是()
A.局部變量的定義可以在函數(shù)體和復(fù)合語(yǔ)句的內(nèi)部
B.全局變量的定義可以在函數(shù)以外的任何部位
C.同一程序內(nèi)局部變量和全局變量不允許同名
D.函數(shù)的形參屬于局部變量
56.變量m的值為8,m的地址為1010,若欲使p為指向m的指針變量,則下列賦值正確的是()。
A.&m=8B.*p=8C.*p=1010D.p=&m
57.有以下程序:#include<stdio.h>main(){inti=1,j=1,k=2;if((j++||k++)&&i++)printf("%d,%d,%d\n",i,j,k);}執(zhí)行后輸出結(jié)果是()。
A.1,1,2B.2,2,1C.2,2,2D.2,2,3
58.語(yǔ)句“printf("a\bhow\'are\'y\\\bou\n");”的輸出結(jié)果是()。
A.a\bhow\'are\'y\\bou
B.a\bhow\'are\'y\bou
C.how'are'you
D.ahow'are'y\bou
59.若函數(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ǔ)單元
60.若有如下程序:intsub(intm){if(m==1||m==0)return2;elsereturn(sub(m-1)*sub(m-2));}main(){intn;scanf("%d",&n);printf("%d",sub(n));}如果從鍵盤輸入4<回車>,則程序運(yùn)行后的輸出結(jié)果是()。
A.8B.16C.24D.32
四、選擇題(20題)61.有以下程序:
#definef(x)(x*x)main
{
inti1,i2;
i1=f(8)/(4);i2=f(4+4)/f(2+2);
printf("%d,%d\n",i1,i2);
}
程序運(yùn)行后的輸出結(jié)果是()。
A.64,28B.4,4C.4,3D.64,64
62.如果intC=3,d=4,k=0,下列描述正確的是()。A.c>d!=k和c>(d!=k)的執(zhí)行順序是一樣的
B.c&&d>k的結(jié)果為假
C.c||(d=k)執(zhí)行后d的值為0
D.!c!=(d!=k)表達(dá)式的值為1
63.
64.第
15
題
非空的循環(huán)單鏈表head的尾結(jié)點(diǎn)(由p所指向),滿足
A.p->next==NULLB.p==NULLC.p->next=headD.p=head
65.設(shè)有以下程序段:
structMP3
{charname[20];
charcolor;
floatprice;
}std,*ptr;
ptr=&std:
若要引用結(jié)構(gòu)體變量std中的color成員,寫法錯(cuò)誤的是()。
A.std.color
B.ptr->color
C.std->color
D.(*ptr)color
66.若執(zhí)行以下程序時(shí)從鍵盤上輸入9,則輸出結(jié)果是()。main(){intn;scanf(”%d”,&n);if(n++<10)printf(”/%d\n”,n);elseprintf(”%d\n”,n--);}A.11B.10C.9D.8
67.下列選項(xiàng)中屬于軟件生命周期開發(fā)階段任務(wù)的是()。
A.可行性研究
B.需求分析
C.詳細(xì)設(shè)計(jì)
D.軟件維護(hù)
68.
69.有兩個(gè)關(guān)系R、S如下:
由關(guān)系R通過運(yùn)算得到關(guān)系s,則所使用的運(yùn)算為()。
A.選擇B.投影C.插入D.連接
70.若a為int類型,且其值為3,則執(zhí)行完表達(dá)式a+=a-=a*a后,a的值是()。
A.-3B.9C.-12D.6
71.
72.
73.
74.
75.有以下程序程序的運(yùn)行結(jié)果是()。
A.321678B.876543C.1098765D.345678
76.
77.
78.合法的數(shù)組定義是()。
A.
B.
C.
D.
79.
80.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過程
B.軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測(cè)試完成的過程
C.軟件的開發(fā)過程
D.軟件的運(yùn)行維護(hù)過程
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)fun的功能是:求出s所指字符串中最后一次出現(xiàn)的t所指字符串的地址,并通過函數(shù)值返回,在主函數(shù)中輸出從此地址開始的字符串;’若未找到,則函數(shù)值為NULL。例如,當(dāng)字符串中的內(nèi)容為“123dabfl23dx”,t中內(nèi)容為“ab”時(shí),輸出結(jié)果應(yīng)是“l(fā)23dx”。當(dāng)字符串中的內(nèi)容為“l(fā)23dabfl23dx”,t中內(nèi)容為“aim”時(shí),則程序輸出未找到信息“Notfound!”。請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!試題程序:
六、程序設(shè)計(jì)題(1題)82.編寫函數(shù)fun,其功能是:實(shí)現(xiàn)兩個(gè)字符串的連接(不要使用庫(kù)函數(shù)strcat),即把p2所指的字符串連接到pl所指的字符串的后面。
例如,分別輸人下面兩個(gè)字符串:FirstString——SecondString
程序運(yùn)行后的輸出結(jié)果是:FirstString————SecondString
注意:部分源程序在文件PROGl.C中。
請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填入你編寫的若干語(yǔ)句。
參考答案
1.B
2.C本題中由循環(huán)條件可知遇到“0或x與y所指的字符的值不等中的一個(gè)條件時(shí)就結(jié)束,所以功能是統(tǒng)計(jì)x和y所指字符串中最前面連續(xù)相同的字符個(gè)數(shù)。
3.A
4.D本題主要考查帶參數(shù)的宏定義,過程如下:由于定義為define(x)x*x沒有括號(hào)優(yōu)先級(jí),所以:a=a/(S(k+m)/S(k+m))=a/(k+m*k+m/k+m*k+m)=9/(3+2*3+2/3+2*3+2)=0。
5.A程序首先定義一個(gè)字符指針P,使其指向一個(gè)字符串“6938”。然后通過for循環(huán)使用逆序的方式遍歷字符串的各個(gè)字符,并將各個(gè)字符當(dāng)作整數(shù)參與算術(shù)運(yùn)算。其中,“p[i]-‘0’”的含義是將字符串中的數(shù)字字符轉(zhuǎn)換成對(duì)應(yīng)的整數(shù);“10*s+P[i]-‘0’”是將上一次運(yùn)算結(jié)果乘以10后與轉(zhuǎn)換后的整數(shù)相加,再累加到S中。所以for循環(huán)執(zhí)行完后,S的值是將字符串“6938”逆序后當(dāng)作整數(shù)輸出。故本題答案為A選項(xiàng)。
6.B本題考查軟件工程調(diào)試。調(diào)試與測(cè)試是兩個(gè)不同的過程,有著根本的區(qū)別:調(diào)試是一個(gè)隨機(jī)的、不可重復(fù)的過程,它用于隔離和確認(rèn)問題發(fā)生的原因,然后修改軟件來(lái)糾正問題;測(cè)試是一個(gè)有計(jì)劃的,可以重復(fù)的過程,它的目的是為了發(fā)現(xiàn)軟件中的問題。因此,軟件調(diào)試的目的是為了改正軟什中的錯(cuò)誤。本題的正確答案是選項(xiàng)\u3000B。
7.Bmain函數(shù)中,根據(jù)“b=2,c=3”可知表達(dá)式“b>=2&&c<=3”為真,flag值為1。由“a=1”和外層switch語(yǔ)句的case標(biāo)號(hào)沒有break語(yǔ)句,可知外層switch語(yǔ)句執(zhí)行case1,case0。對(duì)于外層case1:嵌套的switch語(yǔ)句根據(jù)“flag=1”執(zhí)行case1,執(zhí)行“printf(“%%”);”,輸出“%”,接著執(zhí)行break語(yǔ)句,結(jié)束內(nèi)層switch執(zhí)行外層;對(duì)于外層case0:嵌套的switch語(yǔ)句根據(jù)“c=3”執(zhí)行default語(yǔ)句,執(zhí)行“printf(“##”);”,輸出“##”。故本題答案為B選項(xiàng)。
8.C根據(jù)賦值運(yùn)算的類型轉(zhuǎn)換規(guī)則,先將double型的常量l.2轉(zhuǎn)換為int型,因?yàn)閤的類型是int,則X的值為1;執(zhí)行語(yǔ)句y=(K+3.8)/5.0時(shí),即先將整型變量X的值1轉(zhuǎn)換為double型1.0,然后3.8相加得4.8,進(jìn)行除法運(yùn)算4.8/5.0結(jié)果為0.即變量y的值為0,d*Y的值也為0,故選C選項(xiàng)。
9.A
10.B此題考查的是函數(shù)fun,fun(b,c)=5,然后fun(2*a,5)=fun(8,5)=6。
11.C
12.A解析:在C語(yǔ)言中,應(yīng)當(dāng)在定義函數(shù)時(shí)指定函數(shù)值的類型。凡不加類型說(shuō)明的函數(shù),默認(rèn)按整型處理。在定義函數(shù)時(shí)對(duì)函數(shù)值說(shuō)明的類型一般應(yīng)該和return語(yǔ)句中的表達(dá)式類型一致。如果函數(shù)值的類型和return語(yǔ)句中的表達(dá)式類型不一致,則以函數(shù)值的類型為準(zhǔn),由系統(tǒng)自動(dòng)進(jìn)行轉(zhuǎn)換,即函數(shù)類型決定返回值的類型。
13.A需求分析是軟件開發(fā)之前必須要做的準(zhǔn)備工作之一。需求是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。故需求分析的主要任務(wù)是確定軟件系統(tǒng)的功能。本題答案為A選項(xiàng)。
14.A
15.D關(guān)系R與s經(jīng)交運(yùn)算后所得到的關(guān)系是由那些既在R內(nèi)又在S內(nèi)的共有元組組成的,記為RnS。
16.C將兩個(gè)字符串連接起來(lái)組成一個(gè)字符串,選用strcat函數(shù)來(lái)連接。
17.B函數(shù)調(diào)用時(shí),prt函數(shù)的作用是為使m數(shù)組中的數(shù)自增1,因此數(shù)組下標(biāo)從0開始,每個(gè)元素都自加1。
18.B
19.DD選項(xiàng)中*f(a,b)表示調(diào)用后返回一個(gè)指向整型數(shù)據(jù)的地址指針,即該函數(shù)的返回值為指針類型,所以不能將其賦值給整形變量k。
20.D
21.軟件開發(fā)
22.黑盒軟件測(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ì)的。
23.自盒自盒解析:自盒測(cè)試法即結(jié)構(gòu)測(cè)試,它與程序內(nèi)部結(jié)構(gòu)相關(guān),要利用程序結(jié)構(gòu)的實(shí)現(xiàn)細(xì)節(jié)設(shè)計(jì)測(cè)試實(shí)例。白盒測(cè)試法主要有邏輯覆蓋、基本路徑測(cè)試等。
24.QTHRGQTHRG解析:函數(shù)strcmp(t,s)用來(lái)比較t和s所指字符串的大小,若t>s,則函數(shù)值大于0;若t=s,則函數(shù)值等于0:若t<s,則函數(shù)值小于0。函數(shù)strcpy(t,s)的功能是,把字符數(shù)組s所指字符串的內(nèi)容復(fù)制到字符數(shù)組t所指存儲(chǔ)空間中。本題中,t[10]='CDEF'。第一次循環(huán),s[10]='BADEF',if語(yǔ)句的控制條件strcmp(t,s)<0不成立,接著執(zhí)行第二次循環(huán),s='QTHRG',if語(yǔ)句的控制條件strcmp(t,s)<0成立,執(zhí)行下列的語(yǔ)句,將字符數(shù)組s所指字符串的內(nèi)容復(fù)制到字符數(shù)組t所指存儲(chǔ)空間中,
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ù)必修一《數(shù)據(jù)與計(jì)算》第二章第二節(jié)《程序設(shè)計(jì)語(yǔ)言基本知識(shí)》教學(xué)設(shè)計(jì)
- 定西師范高等??茖W(xué)?!渡茖W(xué)基礎(chǔ)二:細(xì)胞生物學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 沈陽(yáng)職業(yè)技術(shù)學(xué)院《中醫(yī)藥文化與養(yǎng)生》2023-2024學(xué)年第二學(xué)期期末試卷
- 駐馬店職業(yè)技術(shù)學(xué)院《寫意畫》2023-2024學(xué)年第二學(xué)期期末試卷
- 阜陽(yáng)幼兒師范高等??茖W(xué)校《電子線路CAD技術(shù)B》2023-2024學(xué)年第二學(xué)期期末試卷
- Unit 3 Amazing animals PartA (教學(xué)設(shè)計(jì))-2024-2025學(xué)年人教PEP版(2024)英語(yǔ)三年級(jí)上冊(cè)
- 鹽城師范學(xué)院《現(xiàn)代材料分析技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東云浮中醫(yī)藥職業(yè)學(xué)院《民俗學(xué)與民間文學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 鋼軌購(gòu)銷合同范本
- 山西大同大學(xué)《三維機(jī)械CAD實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 人教版二年級(jí)下冊(cè)口算題天天練1000道可打印帶答案
- 【跨境電商零售進(jìn)口稅收征管對(duì)策及建議16000字(論文)】
- DZ∕T 0332-2020 碳酸鹽巖油氣藏縫洞體雕刻法資源儲(chǔ)量估算規(guī)范(正式版)
- 心血管介入護(hù)士進(jìn)修匯報(bào)
- 施工組織設(shè)計(jì)內(nèi)部審批表
- 《企業(yè)的可持續(xù)發(fā)展》課件
- 零至三歲兒童及老年人中醫(yī)保健指導(dǎo)專業(yè)知識(shí)講座培訓(xùn)課件
- DB12-T 1305-2024 公路瀝青路面泡沫瀝青冷再生技術(shù)規(guī)范
- 范文語(yǔ)文評(píng)課稿15篇
- 2024年山東省春季高考技能考試汽車專業(yè)試題庫(kù)-中(多選題匯總)
- 2016-2023年德州科技職業(yè)學(xué)院高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
評(píng)論
0/150
提交評(píng)論