




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
2022-2023年寧夏回族自治區(qū)中衛(wèi)市全國計算機等級考試C語言程序設(shè)計重點匯總測試卷(含答案)學(xué)校:________班級:________姓名:________考號:________
一、單選題(20題)1.有下列程序:#include<stdio.h>#include"string.h"voidtim(char*s[],intn){char*t;inti,j;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(strlen(s[i])>strlen(s[j])){t=s[i];s[i]=s[j];s[j]=t;}}main(){char*ss[]={"bcc","bbcc","xy","aaaacc","aabcc"};fun(ss,5);printf("%s,%s\n",ss[0],ss[4]);}程序的運行結(jié)果是()。A.xy,aaaaccB.aaaacc,xyC.bcc,aabccD.aabcc,bcc
2.有以下程序:main(){chara[]="abcdefg",b[10]="abcdefg";printf("%d%d\n",sizeof(a),sizeof(b));}執(zhí)行后輸出結(jié)果是()。
A.77B.88C.810D.1010
3.
4.檢查軟件產(chǎn)品是否符合需求定義的過程稱為()。
A.確認(rèn)測試B.集成測試C.驗證測試D.驗收測試
5.線性表是具有n個()的有限序列。
A.表元素B.字符C.數(shù)據(jù)元素D.數(shù)據(jù)項
6.以下敘述中錯誤的是______。A.C程序中的#include和#define行均不是C語句
B.除逗號運算符外,賦值運算符的優(yōu)先級最低
C.C程序中,j++;是賦值語句
D.C程序中,+、-、*、/、%號是算術(shù)運算符,司用于整型和實型數(shù)的運算
7.下列表達式中,可以正確表示的關(guān)系是()。
A.(x>=1)10(x<=0)B.x>1‖x=0C.x>=1ORx<=0D.X>=1&&x<=0
8.下列敘述中正確的是:()A.C語言程序中,main()函數(shù)必須在其它函數(shù)之前,函數(shù)內(nèi)可以嵌套定義函數(shù)
B.C語言程序中,main()函數(shù)的位置沒有限制,函數(shù)內(nèi)不可以嵌套定義函數(shù)
C.C語言程序中,main()函數(shù)必須在其它函數(shù)之前,函數(shù)內(nèi)不可以嵌套定義函數(shù)
D.C語言程序中,main()函數(shù)必須在其它函數(shù)之后,函數(shù)內(nèi)可以嵌套定義函數(shù)
9.下列存儲器中,存取速度最快的是()。
A.軟盤B.硬盤C.光盤D.內(nèi)存
10.
11.下列敘述中錯誤的是()。
A.可以給指針變量賦一個整數(shù)作為地址值
B.函數(shù)可以返回地址值
C.改變函數(shù)形參的值,不會改變對應(yīng)實參的值
D.當(dāng)程序的開頭包含頭文件stdio.h時,可以給指針變量賦NULL值
12.下列關(guān)于return語句的敘述中正確的是()。
A.—個自定義函數(shù)中必須有一條return語句
B.—個自定義函數(shù)中可以根據(jù)不同情況設(shè)置多條return語句
C.定義成void類型的函數(shù)中可以有帶返回值的return語句
D.沒有return語句的自定義函數(shù)在執(zhí)行結(jié)束時不能返回到調(diào)用處
13.以下敘述中正確的是()。
A.在C語言程序中,main函數(shù)必須放在其他函數(shù)的最前面
B.每個后綴為C的C語言源程序都可以單獨進行編譯
C.在C語言程序中,只有main函數(shù)才可單獨進行編譯
D.每個后綴為.C的C語言源程序都應(yīng)該包含一個main函數(shù)
14.若有如下定義,則__________是對數(shù)組元素的正確的引用。.
inta[10],*p;p=a;
A.*&a[10]B.a[11]C.*(p+11)D.*p*p*p
15.
16.下面程序運行后的輸出結(jié)果是______。structabc{inta,b,c;}main(){structabcs[2]={{1,2,3},{4,5,6}};intt=s[0].a+s[1].b;printf("%d\n",t);}
A.5B.6C.7D.8
17.執(zhí)行下列程序后,輸出的結(jié)果是()。
#include<stdio.h>
#defineS(X)X*X
voidmain()
{ihta=9,k=3,m=2;
a/=S(k+m)/S(k+m);
printf("%d",A);
}
A.1B.4C.9D.0
18.
19.下列關(guān)于線性表的敘述中,不正確的是()
A.線性表可以是空表
B.線性表是一種線性結(jié)構(gòu)
C.線性表的所有結(jié)點有且僅有一個前件和后件
D.線性表是由n個元素組成的一個有限序列
20.有以下程序:#include<stdio.h>main(){charb[]=“happynewyear”,k;for(k=0;b[k];k++) printf(“%c”,b[k]-‘a(chǎn)’+‘A’);}程序運行后的輸出結(jié)果是()。
A.hAppynewyeArB.HappynewyearC.HAPPYNEWYEARD.HaPPYNEWYEaR
二、2.填空題(20題)21.下列程序輸出的結(jié)果是______。
intm=17;
intfun(intx,inty)
{intm=3;
return(x*Y-m);
}
main()
{inta=5,b=7;
printf("%d\n",fun(a,B)/m);
}
22.設(shè)有以下定義和語句,則*(*(P+2)+1)的值為【】。
int[3][2]={10,20,30,40,50,60},(*p)[2];
p=a;
23.設(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);
}
程序運行后,從鍵盤上輸入(<CR>代表回車符):CDEF<CR>BADEF<CR>QTHRG<CR>,則程序的輸出結(jié)果是______。
24.在結(jié)構(gòu)化設(shè)計方法中,數(shù)據(jù)流圖表達了問題中的數(shù)據(jù)流與加工間的關(guān)系,并且每一個______實際上對應(yīng)一個處理模塊。
25.在程序設(shè)計階段應(yīng)該采取______和逐步求精的方法,把一個模塊的功能逐步分解,細(xì)化為一系列具體的步驟,繼而用某種程序設(shè)計語言寫成程序。
26.在進行模塊測試時,要為每個被測試的模塊另外設(shè)計兩類模塊:驅(qū)動模塊和承接碟塊,其中______的作用是將測試數(shù)據(jù)傳送給被測試的模塊,并顯示被測試模塊所產(chǎn)生的結(jié)果。
27.關(guān)系代數(shù)是關(guān)系操作語言的一種傳統(tǒng)表示方式,它以集合代數(shù)為基礎(chǔ),它的運算對象和運算結(jié)果均為()。
28.數(shù)據(jù)的邏輯結(jié)構(gòu)有線性結(jié)構(gòu)和______兩大類。
29.若從鍵盤輸入58,則以下程序輸出的結(jié)果是【】。
main()
{inta;
scanf("%d",&a);
if(a>50)printf("%d",a);
if(a>40)printf("%d",a);
if(a>30)printf("%d",a);}
30.某二叉樹中度為2的結(jié)點有18個,則該二叉樹中有【】個葉子結(jié)點。
31.實現(xiàn)程序可將磁盤中的一個文件復(fù)制到另一個文件中,兩個文件的文件名在可執(zhí)行命令的命令行中(相當(dāng)于copy命令),假定文件在當(dāng)前目錄下。請補全程序。
#include<stdio.h>
voidmain(intargc,char*argv[])
{FILE*f1,*f2;
if(argc<【】)
{printf("parametererror!\n");exit(0);}
n=fopen(argv[1],"r");
f2=fopen(argv[2],"w");
while(【】)fputc(fgetc(f1),f2);
fclose(f1);
fclose(f2);
}
32.下列程序的運行結(jié)果為【】。
main()
{
intx,y,z;
X=12;
y=012;
z=0l2;
printf("%d,%d,%d\n",x,y,z);
}
33.以下程序的輸出結(jié)果是【】。
main()
{inty=9;
for(;y>0;y--)
if(y%3==0)
{printf("%d",--y);continue;}}
34.下面程序是計算100以內(nèi)能被4整除且個位數(shù)為4的所有整數(shù),請?zhí)羁铡?/p>
main()
{intm,n;
for(m=0;【】;m++)
{n=m*10+4;
If(【】)continue;
printf("%d\n",n);}}
35.以下程序的定義語句中,x[1]的初值是【】,程序運行后輸出的內(nèi)容是【】。
#include<stdio.h>
main()
{intx[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16},*p[4],i;
for(i=0;i<4;i++)
{p[i]=&x[2*i+1];
printf("%d",p[i][0]);
}
printf("\n");)
}
36.軟件工程研究的內(nèi)容主要包括:【】技術(shù)和軟件工程管理。
37.下列程序的輸出結(jié)果是______。
#defineP(A)printf("%d,",(int)(A))
#definePRINT(A)P(A);printf("theend")
main()
{inti,a=0;
for(i=1;i<5;++)
PRINT(a+i);
printf("\n");
}
38.下面程序的功能是:將字符數(shù)組a中下標(biāo)值為偶數(shù)的元素從小到大排列,其他元素不變。
#include<stdio.h>
#include<string.h>
main()
{chara[]="clanguage",t;
inti,j,k;
k=strlen(a);
for(i=0;i<=k-2;i+=2)
for(j=i+2;j<=k;【】)
if(【】)
{t=a[i];a[i]=a[j];a[j]=t;}
puts(a);
printf("\n");
}
39.下列程序的輸出結(jié)果是______。
#include<stdio.h>
fun()
{staticinta=0;
a+=3;printf("%d",A);
}
main()
{intcc;
for(cc=1;cc<5;cc++)fun();
printf("\n");
}
40.以下sum函數(shù)的功能是計算下列級數(shù)之和。請給函數(shù)中的各變量正確賦初值。
doublesum(doublex,intn)
{inti;doublea,b,s;
for(i=1;i<=n;i++)
{a=a*x;b=b*i;s=s+a/b;}
returns;
}
三、1.選擇題(20題)41.下列數(shù)據(jù)模型中,具有堅實理論基礎(chǔ)的是()。
A.關(guān)系模型B.網(wǎng)狀模型C.層次模型D.以上三個都是
42.規(guī)范化理論中,分解______主要是消除其中多余的數(shù)據(jù)相關(guān)性。
A.關(guān)系運算B.內(nèi)模式C.外模式D.視圖
43.請讀程序:#include<stdio.h>#include<string.h>main(){char*s1="AbCdEf",*s2="aB";s1++;s2++;printf("%d\n",strcmp(s1,s2));}上面程序的輸出結(jié)果是______。
A.正數(shù)B.負(fù)數(shù)C.零D.不確定的值
44.設(shè)有數(shù)組定義:chararray[]="China";則數(shù)組array所占的空間為()
A.4個字節(jié)B.5個字節(jié)C.6個字節(jié)D.7個字節(jié)
45.在下列關(guān)系運算中,不改變關(guān)系表中的屬性個數(shù)但能減少元組個數(shù)的是A.并B.交C.投影D.笛卡兒乘積
46.以下不合法的用戶標(biāo)識符是______。A.j2KEYB.DoubleC.4dD._8_
47.以下敘述中錯誤的是()
A.在C程序中,APH和aph是兩個不同的變量
B.C程序中的變量,代表內(nèi)存中的一個存儲單元,它的值可以根據(jù)需要隨時修改
C.在C程序中,無論是整數(shù)還是實數(shù),都能準(zhǔn)確無誤地表示
D.在C程序中,一個正整數(shù)可以用十進制、八進制和十六進制的形式來表示
48.索引屬于()。
A.模式B.內(nèi)模式C.外模式D.概念模式
49.若有如下程序:#definePI3.1415926#defineA(r)2*PI*rmain(){floata,1;a=3.0;1=A(a);printf("r=%.2f,1=%.2f\n",a,1);}則程序運行后的輸出結(jié)果是()
A.r=3.001=18.85
B.3.00,18.85
C.r=3.0000001=18.8495555
D.r=3.01=18.8495555
50.以下敘述中正確的是()。
A.構(gòu)成C程序的基本單位是函數(shù)
B.可以在一個函數(shù)中定義另一個函數(shù)
C.main()函數(shù)必須放在其他函數(shù)之前
D.所有被調(diào)用的函數(shù)一定要在調(diào)用之前進行定義
51.設(shè)有以下定義和語句inta[3][2]={1,2,3,4,5,6},*p[3];p[0]=a[1];則*(p[0]+1)所代表的數(shù)組元素是
A.a[0][1]B.a[1][0]C.a[1][1]D.a[1][2]
52.為了使模塊盡可能獨立,要求()。
A.模塊的內(nèi)聚程度要盡量高,且各模塊間的耦合程度要盡量強
B.模塊的內(nèi)聚程度要盡量高,且各模塊間的耦合程度要盡量弱
C.模塊的內(nèi)聚程度要盡量低,且各模塊間的耦合程度要盡量弱
D.模塊的內(nèi)聚程度要盡量低,且各模塊間的耦合程度要盡量強
53.數(shù)據(jù)庫系統(tǒng)的核心部分是______。
A.數(shù)據(jù)模型B.數(shù)據(jù)庫C.數(shù)據(jù)庫管理系統(tǒng)D.計算機硬件
54.下列關(guān)于“數(shù)據(jù)庫系統(tǒng)(DBS)”的敘述中,正確的一條是______。
A.DBS是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成
B.DBS是幫助用戶建立、使用和管理數(shù)據(jù)庫的一種計算機軟件
C.DBS是用戶建立的若干數(shù)據(jù)庫文件的集合
D.DBS是一種新穎的關(guān)系數(shù)據(jù)庫管理系統(tǒng)
55.以下程序的輸出結(jié)果是
#include<stdio.h>
structst
{intx;int*y;}*p;
intdt[4]={10,20,30,40};
structstaa[4]={50,&dt[0],60,&dt[0],60,&dt[0],60,&dt[0],};
main()
{p=aa;
printf("%d\n",++(p->x));}
A.10B.11C.51D.60
56.下列4組選項中,均不是C語言關(guān)鍵字的選項是______。
A.definesumtype
B.getccharprintf
C.includescanfcase
D.whilegopow
57.對長度為n的線性表進行順序查找,在最壞的情況下需要比較的次數(shù)為()。
A.125B.n/2C.nD.n+1
58.對下列二叉樹進行前序遍歷的結(jié)果為()
A.ABCDEFGHB.ABDGEHCFC.GDBEHACFD.GDHEBFCA
59.以下程序段的輸出結(jié)果是()。inta=1234;printf("%2d\n",a);
A.12B.34C.1234D.提示出錯,無結(jié)果
60.執(zhí)行下列程序時輸入:123<空格>456<空格>789<回車>,輸出結(jié)果是()main(){chars[100]intc,i;scanf("%c",&C);scanf("%d",&i);scanf("%s",s);printf("%c,%d,%s\n",c,i,s);}
A.1,456,789B.1,23,456C.1,23,456,789D.123,456,789
四、選擇題(20題)61.下列關(guān)于C語言文件的敘述中正確的是()。
A.文件由一系列數(shù)據(jù)依次排列組成,只能構(gòu)成二進制文件
B.文件由結(jié)構(gòu)序列組成,可以構(gòu)成二進制文件或文本文件
C.文件由數(shù)據(jù)序列組成,可以構(gòu)成二進制文件或文本文件
D.文件由字符序列組成,其類型只能是文本文件
62.
63.有以下程序
64.
65.(32)數(shù)據(jù)的存儲結(jié)構(gòu)是指()
A.數(shù)據(jù)所占的存儲空間量
B.數(shù)據(jù)的邏輯結(jié)構(gòu)在計算機中的表示
C.數(shù)據(jù)在計算機中的順序存儲方式
D.存儲在外存中的數(shù)據(jù)
66.下面各選項中,均是C語言合法標(biāo)識符的選項組是()。
A.
B.
C.
D.
67.
68.
69.
70.
71.
72.在調(diào)用函數(shù)時,如果實參是簡單的變量,它與對應(yīng)形參之間的數(shù)據(jù)傳遞方式是
A.地址傳遞B.單向值傳遞
C.由實參傳形參,再由形參傳實參D.傳遞方式由用戶指定
73.下面不屬于需求分析階段任務(wù)的是()。
A.確定軟件系統(tǒng)的功能需求B.確定軟件系統(tǒng)的性能需求C.需求規(guī)格說明書評審D.制定軟件集成測試計劃
74.閱讀以下程序:
#include<stdio.h>
main()
{intcase;floatprintF;
printf("請輸人2個數(shù):");
scanf("%d%fl"&case,&printF);
printf("%dofof\n",case,printF);
}
該程序在編譯時產(chǎn)生錯誤,其出錯原因是()。
A.定義語句出錯,case是關(guān)鍵字,不能用做用戶自定義標(biāo)識符
B.定義語句出錯,printF不能用做用戶自定義標(biāo)識符
C.定義語句無錯,scanf不能作為輸入函數(shù)使用
D.定義語句無錯,printf不能輸出case的值
75.選出下列標(biāo)識符中不是合法的標(biāo)識符的是()。
A.hot_doB.cat1C._priD.2ab
76.一棵二叉樹共有25個結(jié)點,其中5個是葉子結(jié)點,則度為l的結(jié)點數(shù)為()。
A.16B.10C.6D.4
77.有以下程序:
#include<stdio.h>
main
{inty=10;
while(y--);
printf("y=%d\n",y);
}
程序執(zhí)行后的輸出結(jié)果是()。
A.y=0B.y=-1C.y=lD.while構(gòu)成無限循環(huán)
78.有以下程序段:
為使程序段不陷入死循環(huán),從鍵盤鍵入的數(shù)據(jù)應(yīng)該是()。
A.任意正奇數(shù)B.任意負(fù)偶數(shù)C.任意正偶數(shù)D.任意負(fù)奇數(shù)
79.
80.模塊獨立性是軟件模塊化所提出的要求,衡量模塊獨立性的一般度量標(biāo)準(zhǔn)是
A.抽象和信息隱蔽B.局部化和封裝化C.內(nèi)聚性和耦合性D.激活機制和控制方法
五、程序改錯題(1題)81.下列給定程序中,函數(shù)proc()的功能是:將str所指字符串中的字母轉(zhuǎn)換為按字母序列的后續(xù)字母(但Z轉(zhuǎn)化為A,z轉(zhuǎn)化為a),其他字符不變。
請修改函數(shù)proc()中的錯誤,使它能得出正確的結(jié)果。
注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計題(1題)82.下列程序定義了MM的二維數(shù)組,并在主函數(shù)中自動賦值。請編寫函數(shù)proc(inta[][M]),該函數(shù)的功能是:使數(shù)組左下半三角元素中的值全部置成0。例如,a數(shù)組中的值為:
注意:部分源程序給出如下。
請勿改動main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號中填入所編寫的若干語句。
試題程序:
參考答案
1.A解析:從main函數(shù)入手,定義了指向字符串的指針數(shù)組,并賦予了初始值,調(diào)用fun()函數(shù),函數(shù)的功能是:比較數(shù)組中各個元素的長度,按元素長度從小到大排列數(shù)組元素,所以執(zhí)行fun(ss,5)函數(shù)后,*ss[]={"xy","bcc","bbcc","aabcc","aaaacc"},所以調(diào)用printf函數(shù)輸出ss[0],ss[4]的值分別為xy,aaaacc。
2.C解析:本題考核的知識點是字符數(shù)組的定義、賦初值以及函數(shù)sizeof()的應(yīng)用。本題中定義兩個字符型數(shù)組,其中a省略了長度,定義了b的長度為10,并賦初值分別為“abcdefg”和“abcdfg”。所以a的長度為賦值給它的字符串的字符個數(shù)7加上一個結(jié)束轉(zhuǎn)義字符,即a的長度為7+1為8.定義時b的長度定義為10,故b的長度為10,因此最后通過函數(shù)sizeof()求得的數(shù)組a和數(shù)組b的長度分別為8和10,所以,4個選項中選項C符合題意。
3.D
4.A本題主要考查軟件測試的基本知識。軟件測試的步驟可分為單元測試(模塊測試)、集成測試、確認(rèn)測試和系統(tǒng)測試。
(1)單元測試是針對每個模塊進行的測試,它可從程序的內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計測試用例,多個模塊可以平行、對立地測試。單元測試主要用于發(fā)現(xiàn)詳細(xì)設(shè)計和編程時犯下的錯誤。單元測試多采用白盒測試,輔之以黑盒測試。
(2)集成測試是在單元測試的基礎(chǔ)上,根據(jù)模塊結(jié)構(gòu)圖將各個模塊連接起來,必須精心計劃,應(yīng)提交集成測試計劃、集成測試規(guī)格說明和集成測試分析報告。主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問題。集成測試可以發(fā)現(xiàn)概要設(shè)計時犯的錯誤。
(3)確認(rèn)測試用于驗證軟件的功能和性能及其他特性是否與用戶的要求一致。確認(rèn)測試主要用于發(fā)現(xiàn)需求分析時犯下的錯誤,一般使用黑盒法測試,以表明軟件符合需求說明書的要求,應(yīng)該仔細(xì)設(shè)計測試用例和測試過程。確認(rèn)測試必須有用戶參加,或以用戶為主,用戶應(yīng)參與設(shè)計測試用例,通常情況下,主要使用生產(chǎn)中的實際數(shù)據(jù)進行測試,測試數(shù)據(jù)通過用戶接口輸入。
(4)系統(tǒng)測試是將已經(jīng)通過確認(rèn)測試的軟件,作為整個計算機系統(tǒng)的元素與計算機硬件、外設(shè)和網(wǎng)絡(luò)等其他因素結(jié)合在一起,進行一系列的組裝測試和確認(rèn)測試。系統(tǒng)測試的目的是通過與系統(tǒng)的需求定義做比較,發(fā)現(xiàn)軟件與系統(tǒng)的定義不符合的地方。系統(tǒng)測試可以發(fā)現(xiàn)問題定義時犯下的錯誤。
5.A
6.D解析:“%”是求余運算符,其兩側(cè)的數(shù)值只能為整型,所以它不能用于實型的運算,故選項D錯誤。
7.A解析:題中要求x的取值是小于等于0或者大于等于1,這說明表達式是或的關(guān)系,所以在寫成C語言表達式應(yīng)是邏輯或的關(guān)系,邏輯或運算符是'‖'。
8.B每個C程序有且只有一個主函數(shù)main,C程序總是從main函數(shù)開始執(zhí)行,main函數(shù)后面的一對圓括號不能省略,main函數(shù)可以位于程序的任意位置。函數(shù)不可以嵌套定義,但函數(shù)可以嵌套調(diào)用。
9.D\nD【解析】存儲器中.存取速度最快的是內(nèi)存。
\n
10.A
\r\n
11.A不能將一個整數(shù)直接賦給指針變量作為地址值,A選項錯誤。函數(shù)的返回值可以是地址,即指針。函數(shù)調(diào)用中形參值的變化不會傳遞給實參。故本題答案為A選項。
12.B在函數(shù)中允許有多個return語句,但每次調(diào)用只能有一個return語句被執(zhí)行,因此只能返回一個函數(shù)值,A選項描述錯誤。定義成void類型的函數(shù),不允許從該函數(shù)取得返回值,也不允許使用return語句,C選項描述錯誤。沒有return語句的函數(shù)在執(zhí)行到函數(shù)的最后一條語句后會自動返回到調(diào)用處,D選項描述錯誤。故本題答案為B選項。
13.BC語言是一種成功的系統(tǒng)描述語言,具有良好的移植性,每個后綴為.C的C語言源程序都可以單獨進行編譯。
14.D
15.C
16.B解析:在main函數(shù)中定義了一個structabc類型的數(shù)組,同時分別利用{1,2,3}及{4,5,6}對數(shù)組中兩個元素進行初始化。在該結(jié)構(gòu)體,依次對其中的a,b,c三個變量進行初始化。故s[0].a=1,s[1].b=5,所以本題輸出為6。
17.D解析:本題主要是考查帶參數(shù)的宏定義及其相關(guān)運算。本題中宏運算過程如下: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。
18.A
19.CC)【解析】線性表是一種線性結(jié)構(gòu),由n(n≥O)個元素組成,所以線性表可以是空表。但是性表中,第一個結(jié)點沒有前件,最后一個結(jié)點沒有后件,其他結(jié)點有且只有一個前件和后件,所以選項C)是錯誤的。
20.C程序定義一個字符數(shù)組b,并使用字符串“happynewyeai”進行初始化。然后通過for循環(huán),遍歷字符數(shù)組b中的每個字符,再將b中的字符元素修改為大寫字母。程序輸出:HAPPYNEWYEAR。故本題答案為C選項。
21.11解析:本題考查局部變量和全局變量的區(qū)別:局部變量是指作用域在函數(shù)級和塊級的變量,全局變量是指作用域在程序級和文件級的變量。本程序首先定義了一個全局變量m=17,m=17的作用域在整個程序內(nèi)。在fun函數(shù)內(nèi)部定義了一個局部變量m=3,m=3的作用域僅在fun函數(shù)內(nèi)部,通過fun函數(shù)返回兩個形參的積再減m。在主函數(shù)中,輸出fun(a,b)/m=(5*7-3)/17=1。
22.6060解析:本題定義了一個3行2列的二維數(shù)組a,并定義了一個指向兩個元素的一維數(shù)組指針p,讓p指向二維數(shù)組a的首行。*(*(p+2)+1)是引用a[2][1],其值是60。
23.QTHRGQTHRG解析:strcmp(t,s)函數(shù)用來比較t和s所指字符串的大小,若t>s,則函數(shù)值大于0;若t=s,則函數(shù)值等于0:若t<s,則函數(shù)值小于0。strcpy(t,s)函數(shù)的功能是把字符數(shù)組s所指字符串的內(nèi)容復(fù)制到字符數(shù)組t所指的存儲空間中。本題中,t[10]='CDEF'。第一次循環(huán),s[10]='BADEF',if語句的控制條件strcmp(t,s)<0不成立,接著執(zhí)行第二次循環(huán).s='QTHRG',if語句的控制條件strcmp(t,s)<0成立,執(zhí)行下列的語句,將字符數(shù)組s所指字符串的內(nèi)容復(fù)制到字符數(shù)組t所指的存儲空間中,然后輸出字符數(shù)組t。
24.加工加工解析:數(shù)據(jù)流圖是從數(shù)據(jù)傳遞和加工的角度,來刻畫數(shù)據(jù)流從輸入到輸出的移動變換過程。其中的每一個加工對應(yīng)一個處理模塊。
25.自頂向下自頂向下解析:在程序設(shè)計時,應(yīng)先考慮總體,后考慮細(xì)節(jié),逐步使問題具體化,對復(fù)雜的問題,應(yīng)該設(shè)計一些子目標(biāo)作為過渡,上述方法概括為:自頂向下,逐步細(xì)化。
26.程序設(shè)計的任務(wù)是診斷和改正程序中的錯誤。程序調(diào)試活動由兩部分組成,其一是根據(jù)錯誤的跡象確定程序中錯誤的確切性、原因和位置;其二是對程序進行修改,排除這個錯誤。\r\n\r\n
27.關(guān)系關(guān)系
28.非線性結(jié)構(gòu)非線性結(jié)構(gòu)
29.585858585858解析:本題考查對if語句的掌握,當(dāng)輸入58以后,程序中的3個if語句都成立,所以分別輸出58。
30.1919解析:根據(jù)二叉樹的性質(zhì):在任意一棵二叉樹中,度為。的結(jié)點(即葉子結(jié)點)總是比度為2的結(jié)點多一個。本題中度為2的結(jié)點數(shù)為18,故葉子結(jié)點數(shù)為18+1=19個。
31.3!feof(f1)3\r\n!feof(f1)解析:要實現(xiàn)文件復(fù)制,需要指定源文件及目的文件,因此在命令行下執(zhí)行程序時至少要指定兩個參數(shù),加上程序名本身,故argc的值至少為3,因此第一空應(yīng)填3。while循環(huán)中語句fputc(fgetc(f1),(f2);的目的是將f1中的字符依次讀出并寫入到f2對應(yīng)的文件中去,直至文件f1結(jié)束為止,因此第二空為!feof(f1)。
32.12101812,10,18解析:本題定義了3個整型變量x、y、z,并分別用十進制數(shù)、八進制數(shù)、十六進制數(shù)為它們賦值。然后以十進制整型輸出這3個變量。八進制數(shù)012的十進制表示為10,十六進制數(shù)0x12的十進制表示為18。此外輸出函數(shù)格式控制中的“,”原樣輸出。
33.852852解析:循環(huán)前,變量y的值為9,其中的循環(huán)語句在y大于0情況下循環(huán),每次循環(huán)后y的值減1。循環(huán)體是當(dāng)y能被3整除時輸出表達式--y,輸出的是減1后的y值。這樣,第一次循環(huán)因y為9,能被3整除,輸出8,y也變成8。又經(jīng)兩次循環(huán),y的值變?yōu)?,又讓y減1變成5,并輸出5;又經(jīng)兩次循環(huán),y的值變成3,讓y減1變成2,輸出2;再經(jīng)兩次循環(huán)后,y的值變成0,結(jié)束循環(huán)。所以程序輸出852。
34.m<10n%4!=0
35.224682,2468解析:在主函數(shù)中根據(jù)整型數(shù)組x[]的定義可知,x[1]的初值等于2。在for循環(huán)語句中,當(dāng)i=0時,p[0]=&x[1],p[0][0]=2;當(dāng)i=1時,p[1]=&x[3],p[1][0]=4;當(dāng)i=2時,p[2]=&x[5],p[2][0]=6;當(dāng)i=3時,p[3]=&x[7],\ue008p[3][0]\ue009=8,所以程序輸出的結(jié)果為2、4、6、8。
36.軟件開發(fā)
37.1234theend1,2,3,4,theend解析:本題考查帶參數(shù)的宏的定義。第1次循環(huán),i=1時,調(diào)用PRINT(1),P(1)輸出1;第2次循環(huán),i=2時,調(diào)用PRINT(2),P(2)輸出2;第3次循環(huán),i=3時,調(diào)用PRINT(3),P(3)輸出3;第4次循環(huán),i=4時,調(diào)用PRINT(4),P(4)輸出4,theend。
38.j=j+2或j+=2a[j]<a[i]或a[i]>a[j]j=j+2或j+=2\r\na[j]<a[i]或a[i]>a[j]
39.3691236912解析:本題考查最基本的for循環(huán):for(cc=1;cc<5;cc++)規(guī)定循環(huán)次數(shù)為4次,每次a+=3即每次a的值增3,但因為fun函數(shù)中變量a為static類型,所以每次調(diào)用完于函數(shù)之后,變量a所做的改變都要保存。
40.a=1;b=1;s=1;或a=b=s=1;或a=1.b=1s=1或給abs賦1或1.0或1.a=1;b=1;s=1;或a=b=s=1;或a=1.b=1,s=1或給a,b,s賦1或1.0或1.解析:sum函數(shù)的功能是求表達式s的級數(shù)之和,該函數(shù)的大致思路是:在該函數(shù)中,定義了—個整型變量i用作循環(huán)計數(shù)器,定義一個變量a用來表示各個子項的分子,初始為第一個子項的分子,故為1,定義了一個變量b用來表示各個子項大分母,初始為第一個子項的分母,故為1,定義一個變量s存放累加和,初始為第一個子項的值即為1,然后給各個定義的變量初始化,然后通過一個for循環(huán)將題目中的數(shù)學(xué)表達式的各個子項求出來并累加到s中,所以說,在該題的空格處應(yīng)該填寫將a、b和s賦初值的語句,即為a=1;b=1;s=1:(說明:語句的順序可任意)或a=b=s=1;(說明:變量的順序可任意)或a=1,b=1,s=1(說明:賦值表達式的順序可任意)給a,b,s賦1或1.0或1都可以。
41.A解析:在層次模型和網(wǎng)狀模型的系統(tǒng)研究和數(shù)據(jù)庫設(shè)計中,其性能和質(zhì)量主要決定于設(shè)計者的經(jīng)驗和技術(shù)水平,缺乏一定的理論指導(dǎo)。關(guān)系模型有堅實的理論基礎(chǔ),它以數(shù)學(xué)理論為基礎(chǔ),從而避免了層次模型和網(wǎng)狀模型系統(tǒng)中存在的問題。
42.A解析:數(shù)據(jù)庫規(guī)范化的基本思想是逐步消除數(shù)據(jù)依賴中不合適的部分,根本思想是通過分解關(guān)系運算來消除多余的數(shù)據(jù)相關(guān)性。
43.A解析:本題考查字符串比較函數(shù)strcmp()的應(yīng)用。strcmp(s1,s2)是中比較函數(shù),當(dāng)s1>s2時返回值為正數(shù),當(dāng)s1<s2時返回值為負(fù)數(shù),當(dāng)s1=s2時返回值為零。本題中s1,s2分別表示兩個串中第一個字符的地址,s1++和s2++是將指針指向串的第二個字符,指針變量s1指向的是串“bCdEf”的首地址,即字符b的地址,而指針變量s2指向的是字符'B'的地址。而在字符串比較中,寧符串大小的確定是各個字符串相應(yīng)位置字符的ASCII碼值的大小決定的,字符'B'的ASCII碼值為66,字符“b”的ASCII碼值為98,所以s1>s2,返回值為正數(shù)。
44.C解析:在給數(shù)組賦值時,可以用一個字符串作為初值,這種方法直觀、方便,而且符合人們的習(xí)慣。數(shù)組array的長度不是5,而是6,這點必須要注意。因為字符串常量的最后由系統(tǒng)加上一個'\\0',因此,上面的初始化與下面的等價:
Chararray[]={'C','h','i','n','a','\\0'};
45.B并運算的含義是:假設(shè)有一個“在校學(xué)生信息表”,它包括這樣一些字段:學(xué)號、姓名、性別、出生日期、籍貫、聯(lián)系電話,這個表的關(guān)系模式可以表示為:校學(xué)生信息表(學(xué)號,姓名,性別,出生日期,籍貫,聯(lián)系電話)。還有一個“新生信息表(學(xué)號,姓名,性別,出生日期,籍貫,聯(lián)系電話)”。若要將9月份進校的新生信息加入到“在校學(xué)生信息表”中,這樣進行的就是并運算。并運算不會改變表的字段(又叫屬性)個數(shù),但是會增加記錄(又叫元組)個數(shù)。交運算的含義是:兩個表(要求結(jié)構(gòu)要一模一樣)進行交運算取兩個表中相同的記錄構(gòu)成一個新表,交運算不會改變表的字段個數(shù),但是一般會減少記錄個數(shù)。投影運算的含義是:從在“校學(xué)生信息表(學(xué)號,姓名,性別,出生日期,籍貫,聯(lián)系電話)”中選取學(xué)生的“姓名”和“聯(lián)系電話”這兩個字段,可以構(gòu)成一個“學(xué)生聯(lián)系表(姓名,聯(lián)系電話)”,這就是一個投影運算,所以投影運算一般會減少字段(又叫屬性)的個數(shù)。笛卡兒乘積又叫稱乘運算,設(shè)有n元關(guān)系R和m元關(guān)系s,他們分別有P、q個元組,則關(guān)系R和關(guān)系s的笛卡兒積表示為R×S,該關(guān)系是一個n+m元關(guān)系,元組個數(shù)是PXq。因此本題的正確答案是B。\r\n
46.C解析:C語言規(guī)定標(biāo)識符只能由字母、數(shù)字和下劃線三種符號組成,而且第—個字符必須是字母或下劃線。大寫字母和小寫字母被認(rèn)為是兩個不同的字符,用戶在定義標(biāo)識符時應(yīng)做到“見名知意”,且不允許使用關(guān)鍵字作標(biāo)識符。
47.C
48.B解析:內(nèi)模式(InternalSchemA)又稱物理模式(PhysicalSchemA),它給出了數(shù)據(jù)庫物理存儲結(jié)構(gòu)與物理存取方法,如數(shù)據(jù)存儲的文件結(jié)構(gòu)、索引、集簇及hash等存取方式與存取路徑。數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)具有高共享性和低冗余性,但不能完全避免數(shù)據(jù)冗余;數(shù)據(jù)的一致性是指在系統(tǒng)中同一數(shù)據(jù)的不同出現(xiàn)應(yīng)保持相同的值。
49.A
50.A解析:本題綜合考查C語言的概念部分,關(guān)于C語言,我們應(yīng)該了解以下必須要掌握的基礎(chǔ)知識:
①C程序是由函數(shù)構(gòu)成的。
②一個函數(shù)由兩部分組成:函數(shù)的首部和函數(shù)體。
③一個C程序總是從main函數(shù)開始執(zhí)行的,而不論main函數(shù)的整個程序中的位置如何(main函數(shù)可以放在程序最開始,也可以放在程序最后,或?qū)懺谝恍┖瘮?shù)之前,在另一些函數(shù)之后)。
④C程序在書寫上,表現(xiàn)形式比較自由,一行內(nèi)可以寫幾個語句,一個語句可以分寫在幾行上。每個語句和數(shù)據(jù)定義的最后必須有一個分號。
⑤C程序本身沒有輸入輸出語句。輸入和輸出的操作是由庫函數(shù)scanf和printf等函數(shù)來完成。
⑥可以用/*……*/對C語言的程序的任何部分作注釋。
51.C解析:本題中首先定義了一個3行2列的數(shù)組a,一個長度為3的指針數(shù)組p,接著把地址a[1]賦給p[0]此時p[0]為a[1][0]的地址,p[0]+1為a[1][1]的地址,故*(P[0]+1)代表的元素為a[1][1]。
52.B解析:模塊獨立性是指每個模塊只完成系統(tǒng)要求的獨立的子功能,并且與其他模塊的聯(lián)系最少且接口簡單。耦合性與內(nèi)聚性是模塊獨立性的兩個定性標(biāo)準(zhǔn),耦合與內(nèi)聚是相互關(guān)聯(lián)的。在程序結(jié)構(gòu)中,各模塊的內(nèi)聚性越強,則耦合性越弱。一般較優(yōu)秀的軟件設(shè)計,應(yīng)盡量做到高內(nèi)聚,低耦合,即減弱模塊之間的耦合性和提高模塊內(nèi)的內(nèi)聚性,有利于提高模塊的獨立性。本題答案為B。
53.C解析:數(shù)據(jù)庫系統(tǒng)(BBS)是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成。因此,數(shù)據(jù)庫系統(tǒng)不僅包括數(shù)據(jù)本身,還包括相應(yīng)的硬件、軟件和各類人員。在數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)庫管理系統(tǒng)DBMS是在特定操作系統(tǒng)支持下建立、使用、維護和管理數(shù)據(jù)庫的一種軟件。數(shù)據(jù)庫的一切操作都是通過數(shù)據(jù)庫管理系統(tǒng)來實現(xiàn)的。數(shù)據(jù)庫管理系統(tǒng)DBMS是數(shù)據(jù)庫系統(tǒng)的核心部分。
54.A解析:數(shù)據(jù)庫系統(tǒng)DBS是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成。數(shù)據(jù)庫系統(tǒng)是一種帶有數(shù)據(jù)庫的綜合系統(tǒng),它包括硬件、軟件(如操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)、編譯系統(tǒng)及應(yīng)用開發(fā)工具軟件等)、數(shù)據(jù)庫以及開發(fā)者和使用者。
55.C解析:考查結(jié)構(gòu)體成員數(shù)據(jù)的引用方法。通過指針來引用結(jié)構(gòu)體成員的方法是(指針變量)->結(jié)構(gòu)體成員名。
56.A解析:本題各選項中的關(guān)鍵字只有三個:char,case,while。
57.C解析:對線性表進行順序查找時,從表中的第一個元素開始,將給定的值與表中逐個元素的關(guān)鍵字進行比較,直到兩者相符,查找到所要找的元素為止.在最壞的情況下,要查找的元素是表的最后一個元素或查找失敗,這兩種情況都需要將這個元素與表中的所有元素進行比較,因此比較次數(shù)為n。
58.B遍歷就是不重復(fù)地訪問二叉樹的所有結(jié)點。二叉樹遍歷的方法有3種:前序遍歷、中序遍歷和后序遍歷。記住3種遍歷的順序:①前序,訪問根一按前序遍歷左子樹一按前序遍歷右子樹。②中序,按中序遍歷左子樹一訪問根一按中序遍歷右子樹。③后序,按后序遍歷左子樹一按后序遍歷右子樹一訪問根。所以對該二叉樹的中序遍歷結(jié)果為ABDGEHCF。
59.C解析:在C語言中,對于不同類型的數(shù)據(jù)用不同的格式字符,其中,“%d”是按整型數(shù)據(jù)的實際長度輸出,“%md”中,m為指定的輸出字段的寬度,如果數(shù)據(jù)的位數(shù)小于m,則左端補以空格,若大于m,則按實際位數(shù)輸出。注意:格式輸入函數(shù)scanf的使用。
60.B解析:第一個輸入語句只接收一個字符\'1\';第二個輸入語句接收一個整數(shù)23,遇到空格停止;第三個輸入語句接收一個字符串'456',遇到空格停止。
61.C文件
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國餐飲連鎖行業(yè)運營市場深度調(diào)查及投資策略研究報告
- 2025-2030年中國阿莫西林行業(yè)競爭現(xiàn)狀及投資戰(zhàn)略研究報告
- 2025-2030年中國鍍層鋼板市場運營態(tài)勢與發(fā)展風(fēng)險分析報告
- 2025-2030年中國酒石酸美托洛爾緩釋片行業(yè)發(fā)展趨勢及投資戰(zhàn)略研究報告
- 2025-2030年中國運動服飾行業(yè)運行現(xiàn)狀及發(fā)展前景趨勢分析報告
- 2025-2030年中國西廚設(shè)備行業(yè)市場發(fā)展現(xiàn)狀及前景趨勢分析報告
- 2025-2030年中國營養(yǎng)保健食品市場發(fā)展?fàn)顩r及投資戰(zhàn)略研究報告
- 病人轉(zhuǎn)運合同范本
- 2025河北省安全員B證(項目經(jīng)理)考試題庫
- 2025年廣東省安全員知識題庫及答案
- 領(lǐng)導(dǎo)干部的國學(xué)修養(yǎng)講義
- 05-第三章-環(huán)境污染物的生物轉(zhuǎn)運和生物轉(zhuǎn)化-生物轉(zhuǎn)化幻燈片
- 公司精益改善項目推進管理制度及激勵方案
- 工科高等數(shù)學(xué)(下)知到章節(jié)答案智慧樹2023年上海海洋大學(xué)
- oppor11t刷全網(wǎng)通改全教程
- 兒童羽毛球教程
- 福建某機場二次雷達站基建工程施工組織設(shè)計
- 內(nèi)部控制-倉儲與存貨循環(huán)調(diào)查問卷
- 流程成熟度模型(PEMM)
- 高二英語期末考試試卷質(zhì)量分析報告
- 催化動力學(xué)分析法及其應(yīng)用
評論
0/150
提交評論