版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021年遼寧省營(yíng)口市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.有以下程序
#include<stdio.h>
intfun()
{staticintx=1;
x*2;returnx;
}
main()
{inti,s=1,
for(i=1;i<=2;i++)s=fun();
printf("%d\n",s);
}
程序運(yùn)行后的輸出結(jié)果是A.A.0B.1C.4D.8
2.
3.下列關(guān)于線性表的敘述中,不正確的是()
A.線性表可以是空表
B.線性表是一種線性結(jié)構(gòu)
C.線性表的所有結(jié)點(diǎn)有且僅有一個(gè)前件和后件
D.線性表是由n個(gè)元素組成的一個(gè)有限序列
4.若x,y,z均被定義為整數(shù),則下列表達(dá)式能正確表達(dá)代數(shù)式1/(x*y*z)的是()。A.1/x*y*zB.1.0/(x*y*z)C.1/(x*y*z)D.1/x/y/(float)z
5.有以下程序main(){intx,y,z;x=y=1;z=X++,y++,++y;printf("%d,%d,%d\n",x,y,z);}程序運(yùn)行后的輸出結(jié)果是
A.2,3,3B.2,3,2C.2,3,1D.2,2,1
6.若已知一個(gè)棧的進(jìn)棧序列是1,2,3…n,其輸出序列是P1,P2,P3,…PN,若P1=n,則Pi(1<i<p)為()。
A.IB.n-iC.n-i+1D.不確定
7.下面關(guān)于串的的敘述中,哪一個(gè)是不正確的()。
A.串是字符的有限序列
B.空串是由空格構(gòu)成的串
C.模式匹配是串的一種重要運(yùn)算
D.串既可以采用順序存儲(chǔ),也可以采用鏈?zhǔn)酱鎯?chǔ)
8.眾所周知數(shù)據(jù)結(jié)構(gòu)中非常基本的樹結(jié)構(gòu)包括二叉查找樹(BST)。當(dāng)我們把如下序列:10,5,19,4,13,7,6,3,1按順序建立一棵BST時(shí),樹的最大深度是?(令根節(jié)點(diǎn)深度為0,不執(zhí)行平衡二叉樹操作)()
A.5B.4C.3D.2
9.有下列程序:#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]);}程序的運(yùn)行結(jié)果是()。A.xy,aaaaccB.aaaacc,xyC.bcc,aabccD.aabcc,bcc
10.有以下程序
main()
{inti;
for(i=1;i<=40;i++)
{if(i++%5==0)
if(++i%8==0)printf("%d",i);
}
printf("\n");
}
執(zhí)行后的輸出結(jié)果是
A.5B.24C.32D.40
11.a、b、c、d變量均為float類型且已正確賦值,下列選項(xiàng)中與數(shù)學(xué)式子“2ab/(5cd)”等價(jià)的C語(yǔ)言表達(dá)式是()。
A.2/5*a/c*d/b
B.a/(5*c*d)*(2*b)
C.2*a*b/5*c*d
D.2/5*a*d*(1/c*d)
12.以下敘述中正確的是()。
A.算法的時(shí)間復(fù)雜度是指算法在執(zhí)行過(guò)程中基本運(yùn)算的次數(shù)
B.算法的時(shí)間復(fù)雜度是指算法執(zhí)行所需要的時(shí)間
C.算法的時(shí)間復(fù)雜度是指算法執(zhí)行的速度
D.算法的復(fù)雜度是指算法控制結(jié)構(gòu)的復(fù)雜程度
13.面向?qū)ο蟮脑O(shè)計(jì)方法與傳統(tǒng)的面向過(guò)程的方法有本質(zhì)不同,它的基本原理是()。
A.模擬現(xiàn)實(shí)世界中不同事物之間的聯(lián)系
B.強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的算法而不強(qiáng)調(diào)概念
C.使用現(xiàn)實(shí)世界的概念抽象地思考問(wèn)題從而自然地解決問(wèn)題
D.不強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的算法而強(qiáng)調(diào)概念
14.為了提高軟件的獨(dú)立性,模塊之間最好是()。
A.控制耦合B.公共耦合C.內(nèi)容耦合D.數(shù)據(jù)耦合
15.若有定義“charc=“hello!”;”,則以下說(shuō)法正確的是()。
A.c占用7字節(jié)內(nèi)存B.c是一個(gè)字符串變量C.定義中有語(yǔ)法錯(cuò)誤D.c的有效字符個(gè)數(shù)是6
16.printf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占用5列。如果字符串長(zhǎng)度大于5,則輸出按方式()。
A.從左起輸出該字串,右補(bǔ)空格B.按原字符長(zhǎng)從左向右全部輸出C.右對(duì)齊輸出該字串,左補(bǔ)空格D.輸出錯(cuò)誤信息
17.在進(jìn)行單元測(cè)試時(shí),常用的方法是
A.采用白盒測(cè)試,輔之以黑盒測(cè)試B.采用黑盒測(cè)試,輔之以白盒測(cè)試C.只使用白盒測(cè)試D.只使用黑盒測(cè)試
18.有如下程序intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(fnnc(x,y),z);printf("%d\n",r);}該程序的輸出結(jié)果是______。
A.12B.13C.14D.15
19.有以下程序:#include<stdio.h>main(){ints[12]=(1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;for(i=0;i<12;i++) c[s[i]]++; for(i=1;i<5;i++) printf(“%d”,c[i]);printf(“\n”);}程序的運(yùn)行結(jié)果是()。
A.2344B.4332C.1234D.1123
20.在Windows環(huán)境下,單擊當(dāng)前應(yīng)用程序窗口中的“關(guān)閉”按鈕,其功能是A.將當(dāng)前應(yīng)用程序轉(zhuǎn)為后臺(tái)運(yùn)行
B.退出Windows后再關(guān)機(jī)
C.退出Windows后重新啟動(dòng)計(jì)算機(jī)
D.終止當(dāng)前應(yīng)用程序的運(yùn)行
二、2.填空題(20題)21.以下程序的輸出結(jié)果是【】。
#include<stdio.h>
unsignedfun6(unslgnednum)
{unsignedk=1;
do{k*=mum%10;num/=10;}
while(num);
returnk;
}
main()
{unsignedn=26;
printf("%d\n",fan6(n));
}
22.以下程序段打開文件后,先利用fseek函數(shù)將文件位置指針定位在文件末尾,然后調(diào)用刪函數(shù)返回當(dāng)前文件位置指針的具體位置,從而確定文件長(zhǎng)度,請(qǐng)?zhí)羁铡?/p>
FILE*myf;longfl;
myf=【】("test.t","rb");
fseek(myf,(),SEEK_END);fl+ftell(myf);
fclose(myf);
printf("%d\n",fl);
23.與結(jié)構(gòu)化需求分析方法相對(duì)應(yīng)的是【】方法。
24.軟件工程研究的內(nèi)容主要包括:【】技術(shù)和軟件工程管理。
25.表示條件:10<x<100或x<0的C語(yǔ)言表達(dá)式【】。
26.以下程序中,函數(shù)fun的功能是計(jì)算x2-2x+6,主函數(shù)中將調(diào)用fun函數(shù)計(jì)算:
y1=(x+8)2-2(x+8)+6
y2=sin2(x)-2sin(x)+6
請(qǐng)?zhí)羁铡?/p>
ginclude"math.h"
doublefun(doublex){return(x*x-2*x+6);}
main()
{doublex,y1,y2;
pfintf("Enterx:");scanf("%lf"&x);
y1=fun([10]);y2=fun([11]);
pin
27.某二叉樹中度為2的節(jié)點(diǎn)有18個(gè),則該二叉樹中有()個(gè)葉子節(jié)點(diǎn)。
28.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{intm=011,n=11;
printf("%d%d\n",++m,n++);
}
29.以下程序運(yùn)行后的輸出結(jié)果是【】
#include<stdio.h>
main()
{chara[]="123456789",*p;
inti=0;
p=a;
while(*p)
{if(i%2==0)*p='*';
p++;i++;
}
puts(a);
}
30.設(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>BADEP<CR>QTHRG<CR>,則程序的輸出結(jié)果是______。
31.數(shù)據(jù)庫(kù)是指按照一定的規(guī)則存儲(chǔ)在計(jì)算機(jī)中的【】的集合,它能被各種用戶共享。
32.二叉樹按某順序線索化后,其結(jié)點(diǎn)均有指向其前趨和后繼的線索,該說(shuō)法是【】的。
33.【】(黑箱或白箱)測(cè)試方法完全不考慮程序的內(nèi)部結(jié)構(gòu)和內(nèi)部特征。
34.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{intX==1,y=0,a=0,b=0;
switch(x)
{case1:switch(y)
{case0:a++;break;
case1:b++;break;
}
case2:a++;b++;break;
}
printf("%d%d\n",a,b);
}
35.下面程序的功能是將字符串a(chǎn)下標(biāo)值為偶數(shù)的元素由小到大排序,其他元素不變,請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{chara[]="labchmfye",t;
inti,j;
for(i=0;i<7;i+=2)
for(j=i+2;j<9;【】)
if(【】)
{t=a[i];a[i]=a[j];a[j]=t;j++;}
puts(a);
printf("\n");
}
36.實(shí)現(xiàn)算法所需的存儲(chǔ)單元多少和算法的工作量大小分別稱為算法的【】。
37.設(shè)有以下定義和語(yǔ)句,則*(*(p+2)+1)的值為【】。
inta[3][2]={10,20,30,40,50,60},(*p)[2];
p=a;
38.若a是血型變量,且a的初值為4,則計(jì)算a+=a-=a*a表達(dá)式后a的值為______。
39.設(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>代表回車符):CDEF<CR>BADEF<CR>QTHRG<CR>,則程序的輸出結(jié)果是______。
40.度為10的線性表進(jìn)行冒泡排序,最壞情況下需要比較的次數(shù)為______。
三、1.選擇題(20題)41.兩個(gè)或兩個(gè)以上模塊之間聯(lián)系的緊密程度稱為()。
A.耦合性B.內(nèi)聚性C.復(fù)雜性D.數(shù)據(jù)傳輸特性
42.SQL語(yǔ)言又稱為______。
A.結(jié)構(gòu)化定義語(yǔ)言B.結(jié)構(gòu)化控制語(yǔ)言C.結(jié)構(gòu)化查詢語(yǔ)言D.結(jié)構(gòu)化操縱語(yǔ)言
43.下列關(guān)于棧的描述中錯(cuò)誤的是()
A.棧是先進(jìn)后出的線性表B.棧只能順序存儲(chǔ)C.棧具有記憶作用D.對(duì)棧的插入與刪除操作中,不需要改變棧底指針
44.已知p、p1為指針變量,a為數(shù)組名,i為整型變量,下列語(yǔ)句中,不正確的是______。
A.p=&i;B.p=a;C.p=&a[i];D.p=10;
45.有如下程序
main()
{charch[2][5]={"6937","8254"},*p[2];
inti,j,s=0;
for(i=0;i<2;i++)p[i]=ch[i];
for(i=0;i<2;i++)
for(j=0;p[i][j]>′\0′;j+=2)
s=10*s+p[i][j]-′0′;
printf("%d\n",s);}
該程序的輸出結(jié)果是
A.69825B.63825C.6385D.693825
46.有以下程序:intf(intn){if(n==1)retuxn1;elsereturnf(n-1)+1;}main(){inti,j=0;for(i=1;i<3;i++)j+=f(i);printf("%d\n",j);}程序運(yùn)行后的輸出結(jié)果是______。
A.4B.3C.2D.1
47.以下正確的函數(shù)定義是______。
A.doublef1(intx,inty)
B.doublef1(intx;inty)
C.doublef1(intx;floaty)
D.doublef1(intx,y)
48.有以下程序:main(){inty=1,x=2,z=3;printf("%d,%d\n",(++x,y++),z+2);}執(zhí)行后的輸出結(jié)果是()。
A.3,5B.2,5C.3,3D.1,5
49.下列司用于C語(yǔ)言用戶標(biāo)識(shí)符的—組是______。
A.voiddefineWORD
B.a3_b3_123Car
C.For-abcIFCase
D.2aDOsizeof
50.
(2)
A.*sB.sC.*s++D.(*s)++
51.在標(biāo)準(zhǔn)C語(yǔ)言中,下列程序的輸出結(jié)果為______。main(){printf("%e",123.456);}
A.123.456B.123.4560C.1.23456e2D.1.234560e+002
52.軟件開發(fā)離不開系統(tǒng)環(huán)境資源的支持,其中必要的測(cè)試數(shù)據(jù)屬于A.硬件資源B.通信資源C.支持軟件D.輔助資源
53.算法的時(shí)間復(fù)雜度是指______。
A.執(zhí)行算法程序所需要的時(shí)間B.算法程序的長(zhǎng)度C.算法執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)D.算法程序中的指令條數(shù)
54.能正確表示邏輯關(guān)系:"a≥10或a≤0"的C語(yǔ)言表達(dá)式是
A.a>=10ora<=0
B.a>=0|a<=10
C.a>=10&&a<=0
D.a>=10||a<=0
55.以下錯(cuò)誤的定義語(yǔ)句是A.intx[][3]={{0},{1},{1,2,3}};
B.intx[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
C.intx[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
D.intx[][3]={1,2,3,4};
56.以下程序輸出結(jié)果是#include<stdio.h>main(){inti=0,a=0;while(i<20){for(;;){if((i%10)==0)break;elsei--;}i+=11;a+=i;}printf("%d\n",a);}
A.21B.32C.33D.11
57.以下對(duì)C語(yǔ)言函數(shù)的有關(guān)描述中,正確的是
A.在C語(yǔ)言中調(diào)用函數(shù)時(shí),只能把實(shí)參的值傳給形參,形參的值不能傳送給實(shí)參
B.C函數(shù)既可以嵌套定義又可以遞歸調(diào)用
C.函數(shù)必須有返回值,否則不能使用函數(shù)
D.函數(shù)必須有返回值,返回值類型不定
58.能將高級(jí)語(yǔ)言程序轉(zhuǎn)換成目標(biāo)語(yǔ)言程序的是______。
A.調(diào)試程序B.解釋程序C.編譯程序D.編輯程序
59.有以下程序:main(){chars[]="\n123\\";printf("%d,%d\n",strlen(s),sizeof(s));}執(zhí)行后輸出結(jié)果是()。
A.賦初值的字符串有錯(cuò)B.6,7C.5,6D.6,6
60.下列選項(xiàng)中,合法的C語(yǔ)言關(guān)鍵字是______。
A.VARB.cherC.integerD.default
四、選擇題(20題)61.兩個(gè)或兩個(gè)以上模塊之間聯(lián)系的緊密程度稱為()。
A.耦合性B.內(nèi)聚性C.復(fù)雜性D.數(shù)據(jù)傳輸特性
62.若有函數(shù)內(nèi)部說(shuō)明:inta[3][4];則數(shù)組a中各元素
A.可在程序的運(yùn)行階段得到初值0
B.可在程序的編譯階段得到初值0
C.不能得到確定的初值
D.可在程序的編譯或運(yùn)行階段得到初值0
63.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.B,C,D,E,B.A,B,C,D,C.C,D,E,F(xiàn),D.B,D,F(xiàn),H,
64.
65.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.1,2,3,4,5,6,7,8,9,0,
B.2,1,4,3,6,5,8,7,0,9,
C.0,9,8,7,6,5,4,3,2,1,
D.0,1,2,3,4,5,6,7,8,9,
66.
67.
68.
69.以下數(shù)組定義中錯(cuò)誤的是()。
70.
71.如果在C程序中要用到庫(kù)函數(shù)中的字符串比較函數(shù)strcmp(),那么在程序前面應(yīng)該添加的頭文件是()。
A.stdio.hB.string,hC.a(chǎn)lloc.hD.math.H
72.
73.下列說(shuō)法中不正確的是
A.C語(yǔ)言規(guī)定,不能在一個(gè)函數(shù)的內(nèi)部再定義函數(shù)
B.在沒(méi)有聲明函數(shù)返回值類型的情況下,默認(rèn)的函數(shù)返回值類型為int型
C.函數(shù)的類型可以是整型、實(shí)型、字符型,但不能是指針型
D.函數(shù)可以沒(méi)有形參,但函數(shù)名后的一對(duì)圓括號(hào)不能省略
74.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.2,4B.1,2C.1,4D.2.3
75.以下可用作C語(yǔ)言用戶標(biāo)識(shí)符的是()
A.void,define,WORD
B.a3_b3,_123,IF
C.FOR,--abc,Case
D.2a,Do,Sizeof
76.有以下程序:
i
程序運(yùn)行后的輸出結(jié)果是()。。,
A.3,4B.4,1C.2,3D.1,2
77.
78.
79.以下選項(xiàng)中可用作C程序合法實(shí)數(shù)的是()。A..1eOB.3.0e0.2C.E9D.9.12E
80.若已定義:inta[9],*p=a;并在以后的語(yǔ)句中未改變p的值,不能表示a[1]地址的表達(dá)式為()。
A.p+1B.a+1C.a++D.++p
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)proc()的功能是:輸出M行M列整數(shù)方陣,然后求兩條對(duì)角線上的各元素之和并將其返回。請(qǐng)修改程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.使用VC++2010打開考生文件夾下prog1中的解決方案。此解決方案的項(xiàng)目中包含一個(gè)源程序文件prog1.c。在此程序中,請(qǐng)編寫一個(gè)函數(shù)fun(),該函數(shù)的功能是將大于整數(shù)m且緊靠m的k個(gè)素?cái)?shù)存入所指的數(shù)組中。例如,若輸入17、5,則應(yīng)輸出19、23、29、31、37。注意:部分源程序在文件prog1.c中。請(qǐng)勿改動(dòng)主函數(shù)main()和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入你編寫的若干語(yǔ)句。試題程序:
參考答案
1.C
2.B
3.CC)【解析】線性表是一種線性結(jié)構(gòu),由n(n≥O)個(gè)元素組成,所以線性表可以是空表。但是性表中,第一個(gè)結(jié)點(diǎn)沒(méi)有前件,最后一個(gè)結(jié)點(diǎn)沒(méi)有后件,其他結(jié)點(diǎn)有且只有一個(gè)前件和后件,所以選項(xiàng)C)是錯(cuò)誤的。
4.B
5.C解析:整型變量x、y的初值都為1,“x++,y++,++y”是一個(gè)逗號(hào)表達(dá)式,程序執(zhí)行“z=x++,y++,++y”后,x的值為2,y的值為3,z取豆號(hào)表達(dá)式中第二個(gè)表達(dá)式的值,為1。
6.C
7.B
8.B
9.A解析:從main函數(shù)入手,定義了指向字符串的指針數(shù)組,并賦予了初始值,調(diào)用fun()函數(shù),函數(shù)的功能是:比較數(shù)組中各個(gè)元素的長(zhǎng)度,按元素長(zhǎng)度從小到大排列數(shù)組元素,所以執(zhí)行fun(ss,5)函數(shù)后,*ss[]={"xy","bcc","bbcc","aabcc","aaaacc"},所以調(diào)用printf函數(shù)輸出ss[0],ss[4]的值分別為xy,aaaacc。
10.C解析:當(dāng)for循環(huán)執(zhí)行到第30次時(shí),i的值為30能被5整除,然后繼續(xù)執(zhí)行兩次if語(yǔ)句,i經(jīng)過(guò)兩次自加1運(yùn)算,值變?yōu)?2,能被8整除,故此時(shí)第一次執(zhí)行'printf('%d',i);'語(yǔ)句,即輸出32。
11.B解析:選項(xiàng)A和選項(xiàng)D中首先計(jì)算2/5,因?yàn)閮蓚€(gè)計(jì)算分量都是整型,所以結(jié)果為2,與實(shí)際運(yùn)算不符;選項(xiàng)B中因?yàn)槌顺M足交換律,所以2*b放前面和放后面都是一樣的,所以滿足題目要求;選項(xiàng)C中的表達(dá)式等價(jià)于2abcd/5,所以不滿足題目要求。故應(yīng)該選擇B。
12.A算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量,其計(jì)算工作量是用算法所執(zhí)行的基本運(yùn)算次數(shù)來(lái)度量的。本題答案為A選項(xiàng)。
13.C\n面向?qū)ο蟮脑O(shè)計(jì)方法的基本原理是:使用現(xiàn)實(shí)世界的概念抽象地思考問(wèn)題從而自然地解決問(wèn)題。它雖強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的概念而不強(qiáng)調(diào)算法,但是它鼓勵(lì)開發(fā)者在軟件開發(fā)的過(guò)程中從應(yīng)用領(lǐng)域的概念角度去思考。
\n
14.D在程序設(shè)計(jì)中,各模塊間的內(nèi)聚性越強(qiáng),則耦合性越弱。一般較優(yōu)秀的軟件設(shè)計(jì),應(yīng)盡量做到高內(nèi)聚、低耦合,以有利于提高模塊的獨(dú)立性。耦合性與內(nèi)聚性是模塊獨(dú)立的兩個(gè)定性標(biāo)準(zhǔn),是互相關(guān)聯(lián)的。
15.Cc是字符變量,“hello!”是字符串。字符串不能賦給字符變量,定義中有語(yǔ)法錯(cuò)誤。本題答案為C選項(xiàng)。
16.B
17.A解析:?jiǎn)卧獪y(cè)試的步驟如下:
①理解需求和設(shè)計(jì)。清楚被測(cè)試模塊在整個(gè)軟件中所處的位置。一個(gè)原則是:好的設(shè)計(jì),各模塊只負(fù)責(zé)完成自己的事情,層次與分工明確。單元測(cè)試時(shí),可以不測(cè)試不屬于被測(cè)模塊所負(fù)責(zé)的功能,以減少測(cè)試用例的冗余。
②概覽源代碼。瀏覽源代碼,初步檢查源代碼的編碼風(fēng)格與規(guī)范,大致估算測(cè)試工作量,確定模塊的復(fù)雜程度,初步制定測(cè)試的優(yōu)先級(jí)等。
③精讀源代碼。認(rèn)真閱讀和分析代碼,理解代碼的業(yè)務(wù)邏輯,檢查代碼與設(shè)計(jì)是否相符,仔細(xì)研究邏輯復(fù)雜的模塊,可采用一些檢查列表來(lái)檢查程序可能會(huì)出現(xiàn)的問(wèn)題。
④設(shè)計(jì)測(cè)試用例。綜合運(yùn)用白盒測(cè)試方法(并結(jié)合黑盒測(cè)試方法)設(shè)計(jì)測(cè)試用例,包括功能測(cè)試、性能測(cè)試等,要達(dá)到一定的測(cè)試覆蓋率。本題正確答案為選項(xiàng)A。
⑤搭建單元測(cè)試環(huán)境。這個(gè)階段主要就是寫樁模塊和驅(qū)動(dòng)模塊,然后驅(qū)動(dòng)模塊想辦法獲取被測(cè)試模塊對(duì)數(shù)據(jù)的處理結(jié)果,并判定返回的實(shí)際結(jié)果與測(cè)試用例的預(yù)
期結(jié)果是否一致,通過(guò)測(cè)試框架來(lái)記錄執(zhí)行的結(jié)果,對(duì)于出現(xiàn)的錯(cuò)誤,還需統(tǒng)計(jì)錯(cuò)誤的信息,供執(zhí)行完之后分析。
⑥執(zhí)行測(cè)試。運(yùn)行寫好的驅(qū)動(dòng)模塊完成對(duì)被測(cè)試模塊的測(cè)試。
⑦補(bǔ)充和完善測(cè)試用例。在測(cè)試過(guò)程中不斷補(bǔ)充測(cè)試用例,直到滿足要求為止。
⑧分析結(jié)果,給出評(píng)價(jià)。根據(jù)測(cè)試的結(jié)果分析、查找錯(cuò)誤的原因,并找到解決的辦法。測(cè)試結(jié)束之后,根據(jù)測(cè)試過(guò)程的數(shù)據(jù)統(tǒng)計(jì),給出被測(cè)試對(duì)象評(píng)價(jià)。
18.D
19.B在“for(i=0;i<12;i++)c[s[i]]++”中,數(shù)組元素s[i]的值作為數(shù)組c的下標(biāo)。當(dāng)退出循環(huán)時(shí),數(shù)組c的4個(gè)元素的值分別為4、3、3、2。故本題答案為B選項(xiàng)。
20.D
21.1212解析:循環(huán)語(yǔ)句中,表達(dá)式num%10是取num的個(gè)位。循環(huán)直至num為0結(jié)束,這是逐一求出num+進(jìn)制表示的各位數(shù)字,并累乘于變量k中。函數(shù)最后返回k,所以程序輸出12。
22.fopenfopen解析:C語(yǔ)言中的文件分為:ASCII文件與二進(jìn)制文件。文件在使用前打開,使用后要關(guān)閉。
打開文件的函數(shù)為:fopen(),調(diào)用形式為:fp=fopen(“文件名”,“使用文件方式”);
關(guān)閉文件的函數(shù)為:fclose(),調(diào)用形式為:fclose(fp);其中fp為文件指針。
23.結(jié)構(gòu)化設(shè)計(jì)結(jié)構(gòu)化設(shè)計(jì)解析:與結(jié)構(gòu)化需求分析方法相對(duì)應(yīng)的是結(jié)構(gòu)化設(shè)計(jì)方法。結(jié)構(gòu)化設(shè)計(jì)就是采用最佳的可能方法設(shè)計(jì)系統(tǒng)的各個(gè)組成部分以及各個(gè)成分之間的內(nèi)部聯(lián)系的技術(shù)。
24.軟件開發(fā)
25.(X>10&&x<100)||x<0或(10<x&&x<100)||x<0或x<0||(x>10&&x<100)或0>x||(10<x&&x<100)或(括號(hào)有無(wú)都可以)(X>10&&x<100)||x<0\r\n\u3000\u3000或(10<x&&x<100)||x<0或x<0||(x>10&&x<100)\r\n\u3000\u3000或0>x||(10<x&&x<100)或(括號(hào)有無(wú)都可以)
26.用x+8代替函數(shù)fun(doublex)中形式參數(shù)x。用sin(x)代替函數(shù)fun(doublex)中形式參數(shù)x。
27.19
28.10111011解析:前綴自增運(yùn)算時(shí),表達(dá)式的值和變量自增之后的值相同;后綴自增運(yùn)算時(shí),表達(dá)式的值為變量自增之前的值。所以,本題程序輸出的兩個(gè)結(jié)果分別是m+1和n的值。而m在初始化時(shí)使用的是八進(jìn)制常量011,轉(zhuǎn)換為十進(jìn)制為9。故輸出結(jié)果是1011。
29.*2*4*6*8**2*4*6*8*解析:程序中指針p指向數(shù)組a,while(*P)語(yǔ)句的循環(huán)條件是*p!=\'\\0\',在循環(huán)體中,當(dāng)i=0,2,4,6,8時(shí),i%2=0,執(zhí)行*p=\'*\',即a[i]=\'*\',繼續(xù)執(zhí)行p++;i++;使i為奇數(shù);當(dāng)i=1,3,5,7時(shí),i%2=1,繼續(xù)執(zhí)行p++;i++;使i為偶數(shù)??梢?jiàn),程序在字符串'123456789',的下標(biāo)為偶數(shù)的位置上賦值\'*\',代替原字符串中的1,3,5,7,9。所以,程序輸出結(jié)果為*2*4*6*8*。
30.函數(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
31.數(shù)據(jù)數(shù)據(jù)解析:數(shù)據(jù)庫(kù)是由一個(gè)互相關(guān)聯(lián)的數(shù)據(jù)的集合和一組用以訪問(wèn)這些數(shù)據(jù)的程序組成,這些數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存儲(chǔ)。
32.錯(cuò)誤錯(cuò)誤解析:線索二叉樹是利用二叉鏈表存儲(chǔ)結(jié)構(gòu)中的空鏈域來(lái)存放其前趨或后繼。由于二叉樹度為2的非終端結(jié)點(diǎn)無(wú)空鏈域,因此它沒(méi)有空鏈域用來(lái)存放前趨和后繼。
33.黑箱黑箱解析:本題考查了軟件測(cè)試中的黑箱測(cè)試。黑箱測(cè)試是根據(jù)程序規(guī)格說(shuō)明所規(guī)定的功能來(lái)設(shè)計(jì)測(cè)試用例,它不考慮程序的內(nèi)部結(jié)構(gòu)和處理過(guò)程。常用的黑箱測(cè)試技術(shù)分為等價(jià)類劃分、邊界分析、錯(cuò)誤猜測(cè)以及因果圖等。
34.2121解析:外層switch語(yǔ)句后面括號(hào)里的x的值為1,所以執(zhí)行從case1:后面的語(yǔ)句開始執(zhí)行,而case1:后面語(yǔ)句也為switch語(yǔ)句,這個(gè)switch語(yǔ)句后面括號(hào)里的y的值為0,所以從該switch語(yǔ)句里的case0:開始執(zhí)行即執(zhí)行a++,這時(shí)a的值變?yōu)?,執(zhí)行完畢,遇到break語(yǔ)句,退出內(nèi)層switch語(yǔ)句,又回到外層switch語(yǔ)句,繼續(xù)執(zhí)行case1:下面的語(yǔ)句即case2:執(zhí)行完畢后,a自加1變?yōu)?,b自加1變1。所以最后輸出的a和b的值為21。
35.j++a[i]>a[j]或a[j]<a[i]j++\r\na[i]>a[j]或a[j]<a[i]解析:題目要求排序的元素是下標(biāo)值為偶數(shù)的元素,外循環(huán)循環(huán)4次,i的值分別為0、2、4、6,所以內(nèi)循環(huán)也循環(huán)4次,i的值就應(yīng)為2、4、6、8,在循環(huán)體中已經(jīng)有了對(duì)j加1的操作,因此for后括號(hào)中的語(yǔ)句應(yīng)再對(duì)j加1,保證下標(biāo)為偶數(shù)。if語(yǔ)句的功能是如果后一個(gè)數(shù)比前一個(gè)數(shù)小則交換位置。
36.空間復(fù)雜度和時(shí)間復(fù)雜度算法的復(fù)雜性是指對(duì)一個(gè)在有限步驟內(nèi)終止算法和所需存儲(chǔ)空間大小的估計(jì)。算法所需存儲(chǔ)空間大小是算法的空間復(fù)雜性,算法的計(jì)算量是算法的時(shí)間復(fù)雜性。
37.6060解析:程序中定義a是一個(gè)3行2列的二維數(shù)組,p是指向兩個(gè)元素的一維數(shù)組指針,并讓p指向二維數(shù)組a的首行。則代碼*(*(p+2)+1)中的p+2指向二維數(shù)組a的第三行a[2],*(p+2)指向a[2[]0],*(p+2)+1指向a[2][1],*(*(p+2)+1)是引用a[2][1],其值是60。
38.-24-24解析:本題考查賦值運(yùn)算符a+=b等價(jià)于a=a+b;a-=a*a等價(jià)于a-a-a*a=4-4*4=-12:a+=a,即a=a+a=-24。
39.QTHRGQTHRG解析:strcmp(t,s)函數(shù)用來(lái)比較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所指的存儲(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。
40.4545解析:對(duì)于長(zhǎng)度為N的線性表,在最壞情況下(即線性表中元素現(xiàn)在的順序與目標(biāo)順序正好相反),冒泡排序需要經(jīng)過(guò)N/2遍的從前往后的掃描和N/2遍的從后往前的掃描,需要的比較次數(shù)為N(N-1)/2。
41.A解析:耦合性是模塊間互相連接的緊密程度的度量,取決于各個(gè)模塊之間接口的復(fù)雜度、調(diào)用方式以及哪些信息通過(guò)接口。
[知識(shí)拓展]模塊的獨(dú)立程序是評(píng)價(jià)設(shè)計(jì)好壞的一個(gè)重要標(biāo)準(zhǔn),衡量軟件的模塊獨(dú)立性有兩個(gè)定性的度量標(biāo)準(zhǔn)。其中內(nèi)聚性是指一個(gè)模塊內(nèi)部各個(gè)元素間彼此結(jié)合的緊密程度的度最,內(nèi)聚性是從功能角度來(lái)度量模塊內(nèi)的聯(lián)系;耦合性是模塊間互相連接的緊密程度的度量,耦合性從整體的角度來(lái)度量模塊間的聯(lián)系。
42.CC。【解析】SQL語(yǔ)言的全稱為StructuredQueryLanguage,它是一種介于關(guān)系代數(shù)與關(guān)系演算之間的結(jié)構(gòu)化查詢語(yǔ)言,是一種面向數(shù)據(jù)庫(kù)的通用數(shù)據(jù)處理語(yǔ)言規(guī)范。它包含數(shù)據(jù)查詢語(yǔ)言、數(shù)據(jù)操縱語(yǔ)言、數(shù)據(jù)定義語(yǔ)言和數(shù)據(jù)控制語(yǔ)言4個(gè)部分。
43.B解析:在棧中,允許插入與刪除的一端稱為棧頂,不允許插入與刪除的另一端稱為棧底。棧頂元素總是最后被插入的元素,從而也是最先能被刪除的元素;棧底元素總是最先被插入的元素,從而也是最后才能被刪除的元素。即棧是按照先進(jìn)后出(FILO,F(xiàn)irstInLastOut)或后進(jìn)先出(LIFO,LastInFirstOut)的原則組織數(shù)據(jù)的,因此,棧也被稱為先進(jìn)后出表或后進(jìn)先出表。由此可以看出,棧具有記憶作用。答案B錯(cuò)在帶鏈的棧的結(jié)點(diǎn)存儲(chǔ)順序與其邏輯順序是可以不一致的。
44.D
45.C解析:該題稍微難一點(diǎn)。主要要搞清楚以下幾點(diǎn):①定義了一個(gè)指針數(shù)組char*p[2]后,程序中第一個(gè)循環(huán)for(i=0;i<2;i++)p[i]=ch[i];的作用,是使指針數(shù)組的p[0]元素(它本身是一個(gè)指針)指向了二維數(shù)組ch的第一行字符串,并使指針數(shù)組的p[1]元素指向二維數(shù)組ch的第二行字符串,這樣,就使指針數(shù)組p和二維數(shù)組ch建立起了一種對(duì)應(yīng)關(guān)系,以后對(duì)二維數(shù)組ch的某個(gè)元素的引用就有兩種等價(jià)的形式:ch[i][j]或p[i][j]。②對(duì)二維數(shù)組ch的初始化,使其第一行ch[0]中存入了字符串'6937',第二行ch[1]中的內(nèi)容為字符串'8254'。③程序中第二個(gè)循環(huán)中的循環(huán)體s=s*10+p[i][j]-\'0\';的功能是這樣的,每執(zhí)行一次,將s中的值乘以10(也即,將s中的數(shù)值整體向左移動(dòng)一位,并在空出來(lái)的個(gè)位上添一個(gè)0),再將當(dāng)前p[i][j]中的字符量轉(zhuǎn)換為相應(yīng)的數(shù)字,然后把這個(gè)數(shù)字加到s的個(gè)位上。④注意到內(nèi)層循環(huán)的循環(huán)條件p[i]\ue009[j]>\'\\0\'是指p[i][j]中的字符只要不是字符串結(jié)束標(biāo)志\'\\0\'就繼續(xù)循環(huán),語(yǔ)句j+=2;是使下標(biāo)j每次增加2,也即一個(gè)隔一個(gè)地從p[i]所指向的字符串中取出字符。經(jīng)過(guò)上述解析后,不難看出,該程序首先從p[0]所指向的字符串'6937'中一個(gè)隔一個(gè)地取出字符,分別是\'6\'和\'3\',然后從p[1]所指向的字符串'8254'中一個(gè)隔一個(gè)地取出字符,分別是\'8\'和\'5\',同時(shí)經(jīng)過(guò)轉(zhuǎn)換和相加運(yùn)算后,結(jié)果s中的值應(yīng)該是6385。
46.B解析:本題考查函數(shù)的遞歸調(diào)用。本題中的函數(shù)f是遞歸函數(shù),主函數(shù)中語(yǔ)句j+=f(i)共執(zhí)行了兩次,首次執(zhí)行時(shí)j=j+f(i)=0+f(1)=f(1)=1;第二次執(zhí)行時(shí)j=j+f(2)=1+f(2)。其中f(2)=f(1)+1-1+1=2,因此j=1+f(2)=1+2=3,即printf語(yǔ)句輸出結(jié)果為3。
47.A
48.D解析:本題考查逗號(hào)表達(dá)式。逗號(hào)表達(dá)武的求解步驟是先求解表達(dá)式1,然后依次求解表達(dá)式2,直到表達(dá)式N的值。整個(gè)逗號(hào)表達(dá)式的值就足最后一個(gè)表達(dá)式N的值。(++x,y++)這個(gè)表達(dá)式的返回值是y++,先使用y的債,然后將y加1,所以輸出第一個(gè)值為1。第二個(gè)輸出的值為z+2=3+2=5。
49.B解析:C語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線3種字符組成,且第一個(gè)字符必須為字母或下劃線,所以排除C和D。C語(yǔ)言還規(guī)定標(biāo)識(shí)符不能為C語(yǔ)言的關(guān)鍵字,從而選項(xiàng)A(void是關(guān)鍵字)是錯(cuò)誤的。
50.A
51.D
52.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ā)的工具。通過(guò)對(duì)上述分析的總結(jié),可以知道本題的正確答案選D。
53.C解析:算法的時(shí)間復(fù)雜度實(shí)際上就是執(zhí)行算法程序所需要的計(jì)算工作量。為了客觀地反映算法性能,在度量算法的時(shí)間復(fù)雜度時(shí),應(yīng)該與編寫算法程序所使用的程序設(shè)計(jì)語(yǔ)言、執(zhí)行算法程序時(shí)所使用的計(jì)算的工具以及程序員的水平無(wú)關(guān)。選項(xiàng)A錯(cuò)誤,因?yàn)橥凰惴ǔ绦蛟谶\(yùn)行速度不同的計(jì)算機(jī)上運(yùn)行時(shí),其計(jì)算時(shí)間是不同的。選項(xiàng)B錯(cuò)誤,因?yàn)樗惴ㄋ帉懙某绦蜷L(zhǎng)度往往與程序設(shè)計(jì)語(yǔ)言以及程序員的水平有關(guān),同一個(gè)算法,用不同的程序設(shè)計(jì)語(yǔ)言或者不同的程序員所編寫出的程序其長(zhǎng)度可能會(huì)大不相同。選項(xiàng)D錯(cuò)誤,因?yàn)楦鶕?jù)一個(gè)算法所編制出的程序之中,其指令條數(shù)往往與程序設(shè)計(jì)語(yǔ)言以及程序員的水平有關(guān),不能用算法程序中的指令條數(shù)來(lái)度量算法的時(shí)間復(fù)雜度。所以,本題正確答案為C。
54.B解析:本題考查C語(yǔ)言的邏輯表達(dá)式及邏輯或(“||”)運(yùn)算符的用法。“||”表示或的意思,“|”是按位或的意思,“&&”是并且的意思,C語(yǔ)言中沒(méi)有“or”。
55.C解析:本題考查的是二維數(shù)組的定義和初始化方法。C語(yǔ)言中,在定義并初始化二維數(shù)組時(shí),可以省略數(shù)組第一維的長(zhǎng)度,但是不能省略第二維的長(zhǎng)度。故選項(xiàng)C)錯(cuò)誤。
56.B解析:break語(yǔ)句只能在循環(huán)體和switch語(yǔ)句體內(nèi)使用。本題程序?yàn)樵趙hile循環(huán)中嵌套for循環(huán)。先看內(nèi)層for循環(huán),該循環(huán)的3個(gè)表達(dá)式全部省略,循環(huán)條件始終為真,但循環(huán)體內(nèi)的break語(yǔ)句為終止循環(huán)的條件。首先,由初始條件判斷外層循壞while括號(hào)內(nèi)表達(dá)式的值,該值為真,執(zhí)行本次while循環(huán),即執(zhí)行循環(huán)體內(nèi)的訂語(yǔ)句,判斷該表達(dá)式后面括號(hào)里表達(dá)式的值為真,執(zhí)行break語(yǔ)句,跳出內(nèi)層循環(huán),執(zhí)行下面的語(yǔ)句,此時(shí)i和a的值均變?yōu)?1;回到外層循環(huán),判斷表達(dá)式“i<20”仍為真,執(zhí)行內(nèi)層循環(huán)語(yǔ)句,此時(shí)if條件不滿足,執(zhí)行else語(yǔ)句,i的值為10,繼續(xù)內(nèi)層循環(huán),if語(yǔ)句條件滿足,執(zhí)行break語(yǔ)句,跳出內(nèi)層循環(huán),執(zhí)行下面的語(yǔ)句后,i和a的值分別是21和32。再判斷外層循環(huán)的條件為假,結(jié)束循環(huán).所以,4個(gè)選項(xiàng)中B為所選。
57.A解析:C語(yǔ)言中的函數(shù)可以進(jìn)行遞歸調(diào)用,但不能在函數(shù)中定義函數(shù),即函數(shù)不能嵌套定義。函數(shù)可以沒(méi)有返回值,若有返回值,則返回值類型必須確定。
58.C解析:用高級(jí)語(yǔ)言編寫的程序稱為“源程序”,而計(jì)算機(jī)只能識(shí)別和執(zhí)行由O和1組成的二進(jìn)指令,所以高級(jí)語(yǔ)言必須先用—種稱為“編譯程序”的軟件,把源程序翻譯成二進(jìn)制形式的“目標(biāo)程序”。
59.C解析:本題在定義字符數(shù)組時(shí)沒(méi)有定義數(shù)組長(zhǎng)度,但用字符常量給數(shù)組賦了初值,這時(shí)初值的個(gè)數(shù)即為數(shù)組的長(zhǎng)度,故數(shù)組長(zhǎng)度為6(包括'\\0')。字符串的長(zhǎng)度為有效字符的個(gè)數(shù)5。strlen(s)返回值為串中字符的個(gè)數(shù)(不計(jì)最后的'\\0'),則輸出值為5。sizeof(s)計(jì)算數(shù)組所占的字節(jié)數(shù),包含'\\0',則輸出值為6。因此,C選項(xiàng)正確。
60.D解析:選項(xiàng)A中的VAR不是C語(yǔ)言中關(guān)鍵字,故選項(xiàng)A不正確:選項(xiàng)B中cher,應(yīng)改char,char才是C語(yǔ)言中的關(guān)鍵字,故選項(xiàng)B不正確;選項(xiàng)C中integer在C語(yǔ)言中簡(jiǎn)化為int,這里應(yīng)該將integer改為int,int才是C語(yǔ)言中的關(guān)鍵字,選項(xiàng)D中default為C語(yǔ)言中默認(rèn)的關(guān)鍵字,故選項(xiàng)D正確。所以,4個(gè)選項(xiàng)中選項(xiàng)D符合題意。
61.A解析:耦合性是模塊間互相連接的緊密程度的度量,取決于各個(gè)模塊之間接口的復(fù)雜度、調(diào)用方式以及哪些信息通過(guò)接口。
[知識(shí)拓展]模塊的獨(dú)立程序是評(píng)價(jià)設(shè)計(jì)好壞的一個(gè)重要標(biāo)準(zhǔn),衡量軟件的模塊獨(dú)立性有兩個(gè)定性的度量標(biāo)準(zhǔn)。其中內(nèi)聚性是指一個(gè)模塊內(nèi)部各個(gè)元素間彼此結(jié)合的緊密程度的度最,內(nèi)聚性是從功能角度來(lái)度量模塊內(nèi)的聯(lián)系;耦合性是模塊間互相連接的緊密程度的度量,耦合性從整體的角度來(lái)度量模塊間的聯(lián)系。
62.C本題主要考查數(shù)組的定義及初始化。在對(duì)數(shù)組進(jìn)行定義和初始化時(shí),需要注意以下事項(xiàng)。
(1)數(shù)組的內(nèi)存空間在編譯時(shí)確定,定義數(shù)組時(shí)的n值只能使用常量,不能使用變量。
(2)定義數(shù)組時(shí)可以不標(biāo)明數(shù)組元素的個(gè)數(shù),而是通過(guò)賦初值的方式確定,編譯系統(tǒng)將自動(dòng)計(jì)算花括號(hào)內(nèi)的數(shù)據(jù)數(shù)量作為數(shù)組的元素個(gè)數(shù)。
(3)數(shù)組初始化時(shí),當(dāng)初值的個(gè)數(shù)小于整型常量n時(shí),編譯系統(tǒng)會(huì)自動(dòng)補(bǔ)0。一旦給定初值數(shù)超過(guò)n,編譯系統(tǒng)將報(bào)錯(cuò)。
(4)初始化數(shù)組的元素類型,必須與定義數(shù)組時(shí)的類型一致。
(5)數(shù)組名記錄了數(shù)組在內(nèi)存中的首地址,其值不能更改。
(6)除字符數(shù)組外,不能直接用數(shù)組名對(duì)數(shù)組進(jìn)行整體輸入或輸出。
本題中定義了一個(gè)3行4列的數(shù)組,但沒(méi)有對(duì)其進(jìn)行賦初值操作,可能我們會(huì)想在系統(tǒng)編譯時(shí)會(huì)自動(dòng)補(bǔ)0,這只是在初值個(gè)數(shù)小于數(shù)組定義大小的情況下的操作,如果沒(méi)有進(jìn)行賦初值操作,數(shù)組中的元素值是不能被確定的。因此,本題答案選C。
63.A函數(shù)ehmlge()的作用將從數(shù)組尾部將數(shù)組內(nèi)的元素值加1。數(shù)組的初始值為ABCD,因此經(jīng)change()后,得到的值為BCDE。故答案為A選項(xiàng)。
64.C
65.A函數(shù)調(diào)用中發(fā)生的數(shù)據(jù)傳送是單向的。即只能把實(shí)參的值傳送給形參,而不能把形參的值反向地傳送給實(shí)參。因此在函數(shù)調(diào)用過(guò)程中,形參的值發(fā)生改變,而實(shí)參中的值不會(huì)變化,所以數(shù)組c中的元素的值并沒(méi)有變化,選擇A。
66.B
67.B
68.B
69.AA)選項(xiàng)dPx[2][31定義的是一個(gè)2行3列的二維數(shù)組,而在給數(shù)組元素賦值時(shí)卻賦成了3行,因此錯(cuò)誤。
70.D
71.B頭文件;C語(yǔ)言中要用庫(kù)函數(shù),則需在前面添加頭文件。輸入輸出函數(shù)的頭文件為”stdio.h”
72.D
73.C本題主要考查函數(shù)定義的基本知識(shí)。函數(shù)是C語(yǔ)言的基本組成部分,用來(lái)完成子程序的功能。一個(gè)完整的C程序包括一個(gè)main()函數(shù)(主函數(shù))和若干個(gè)其他函數(shù),C程序從main()函數(shù)開始執(zhí)行。
在C語(yǔ)言中,函數(shù)定義是平行的,函數(shù)不能嵌套定義,即一個(gè)函數(shù)不能在另一個(gè)函數(shù)內(nèi)部定義,函數(shù)之間沒(méi)有從屬關(guān)系。函數(shù)定義表達(dá)的一般形式為:
<函數(shù)返回值類型>函數(shù)名(<類型名><形式參數(shù)1>,<類型名><形式參數(shù)2>,……)
{
函數(shù)體變量定義部分;
函數(shù)體語(yǔ)句部分;
}
其中,<函數(shù)返回值類型>部分可以省略,默認(rèn)為整型。函數(shù)返回值類型可以為各種整型、字符型、實(shí)型,還可以是指針類型。這里需要注意,在定義沒(méi)有形參的函數(shù)時(shí),函數(shù)的括號(hào)不能沒(méi)有,如果沒(méi)有,就不是函數(shù)了,很有可能被當(dāng)成變量處理。
74.B結(jié)構(gòu)體變量可以作為函數(shù)的參數(shù)和返回值。作為函數(shù)的實(shí)參時(shí),可以實(shí)現(xiàn)函數(shù)的傳值調(diào)用。當(dāng)使用結(jié)構(gòu)體變量作為函數(shù)的形參時(shí),實(shí)參也應(yīng)該是結(jié)構(gòu)體變量名以實(shí)現(xiàn)傳值調(diào)用,實(shí)參將拷貝副本給形參,在被調(diào)用函數(shù)中改變形參值對(duì)于調(diào)用函數(shù)中的實(shí)參沒(méi)有影響。所以選擇B。
75.BC語(yǔ)言規(guī)定用戶標(biāo)識(shí)符由字母、數(shù)字和下劃線組成,且第一個(gè)字符必須是字母或下劃線,可見(jiàn)選項(xiàng)C),D)是錯(cuò)誤的;此外,c語(yǔ)言不允許用戶將關(guān)鍵字作為標(biāo)識(shí)符,而選項(xiàng)A)中的void正是C語(yǔ)言的關(guān)鍵字。
76.C本題考查結(jié)構(gòu)體數(shù)組的相關(guān)操作,dt為結(jié)構(gòu)體數(shù)組,那么指針P指向了結(jié)構(gòu)體數(shù)組的一個(gè)元素,所以P一>x為1,P一>Y為2,結(jié)果為2,3。選項(xiàng)C正確。
77.B
78.C
79.Ae前e后有數(shù)字,e后數(shù)值為整數(shù),所以B)、c)、D)錯(cuò)誤。
80.C
81.(1)錯(cuò)誤:intproc(intn,intxx[][])
正確:intproc(intn,intxx[][M])
(2)錯(cuò)誤:printf(″%4f″,xx[i][j]);
正確:printf(″%4d″,xx[i][j]);
【解析】從主函數(shù)中的調(diào)用語(yǔ)句可知,實(shí)參中的一個(gè)為二維數(shù)組,因此其形參類型也應(yīng)該一樣,而二維時(shí),其列下標(biāo)必須是常量,因此把“intproc(intn,intxx[][])”改為“intproe(intn,intxx[][M])”。從形參中可知xx數(shù)組是整型數(shù)組,因此其輸出的控制應(yīng)為整型,故把printf中的”%4f”改為″%4d″。
82.1voidfun(intm,intk,intxx[])2{3inti,j,n;4for(i=m+1,n=0;n<k;i++)p*<>找大于m的素?cái)?shù),循環(huán)k次,即找出緊靠m的k個(gè)素?cái)?shù)*/5{for(j=2;j<i;j++)p*#]斷一<>個(gè)M否為素?cái)?shù),如果不是,跳出此循環(huán),判斷下一個(gè)數(shù)*/6if(i%j==0)break;7if(j>=i)/*如果是素?cái)?shù),存入數(shù)組XX中*/8xx[n++]=i;9}10}本題主要考查素?cái)?shù)的判定方法。如果一個(gè)數(shù)不能被除了1和其自身以外的數(shù)整除,則這個(gè)數(shù)為素?cái)?shù)。本程序使用循環(huán)語(yǔ)句控制需要判斷的數(shù),在循環(huán)體中判斷該數(shù)是否為素?cái)?shù),若是則存入數(shù)組XX中。當(dāng)數(shù)組XX的素?cái)?shù)個(gè)數(shù)為k個(gè)時(shí),退出循環(huán)。</i;j++)p*#]斷一<></k;i++)p*<></i<p)為()。2021年遼寧省營(yíng)口市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.有以下程序
#include<stdio.h>
intfun()
{staticintx=1;
x*2;returnx;
}
main()
{inti,s=1,
for(i=1;i<=2;i++)s=fun();
printf("%d\n",s);
}
程序運(yùn)行后的輸出結(jié)果是A.A.0B.1C.4D.8
2.
3.下列關(guān)于線性表的敘述中,不正確的是()
A.線性表可以是空表
B.線性表是一種線性結(jié)構(gòu)
C.線性表的所有結(jié)點(diǎn)有且僅有一個(gè)前件和后件
D.線性表是由n個(gè)元素組成的一個(gè)有限序列
4.若x,y,z均被定義為整數(shù),則下列表達(dá)式能正確表達(dá)代數(shù)式1/(x*y*z)的是()。A.1/x*y*zB.1.0/(x*y*z)C.1/(x*y*z)D.1/x/y/(float)z
5.有以下程序main(){intx,y,z;x=y=1;z=X++,y++,++y;printf("%d,%d,%d\n",x,y,z);}程序運(yùn)行后的輸出結(jié)果是
A.2,3,3B.2,3,2C.2,3,1D.2,2,1
6.若已知一個(gè)棧的進(jìn)棧序列是1,2,3…n,其輸出序列是P1,P2,P3,…PN,若P1=n,則Pi(1<i<p)為()。
A.IB.n-iC.n-i+1D.不確定
7.下面關(guān)于串的的敘述中,哪一個(gè)是不正確的()。
A.串是字符的有限序列
B.空串是由空格構(gòu)成的串
C.模式匹配是串的一種重要運(yùn)算
D.串既可以采用順序存儲(chǔ),也可以采用鏈?zhǔn)酱鎯?chǔ)
8.眾所周知數(shù)據(jù)結(jié)構(gòu)中非?;镜臉浣Y(jié)構(gòu)包括二叉查找樹(BST)。當(dāng)我們把如下序列:10,5,19,4,13,7,6,3,1按順序建立一棵BST時(shí),樹的最大深度是?(令根節(jié)點(diǎn)深度為0,不執(zhí)行平衡二叉樹操作)()
A.5B.4C.3D.2
9.有下列程序:#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]);}程序的運(yùn)行結(jié)果是()。A.xy,aaaaccB.aaaacc,xyC.bcc,aabccD.aabcc,bcc
10.有以下程序
main()
{inti;
for(i=1;i<=40;i++)
{if(i++%5==0)
if(++i%8==0)printf("%d",i);
}
printf("\n");
}
執(zhí)行后的輸出結(jié)果是
A.5B.24C.32D.40
11.a、b、c、d變量均為float類型且已正確賦值,下列選項(xiàng)中與數(shù)學(xué)式子“2ab/(5cd)”等價(jià)的C語(yǔ)言表達(dá)式是()。
A.2/5*a/c*d/b
B.a/(5*c*d)*(2*b)
C.2*a*b/5*c*d
D.2/5*a*d*(1/c*d)
12.以下敘述中正確的是()。
A.算法的時(shí)間復(fù)雜度是指算法在執(zhí)行過(guò)程中基本運(yùn)算的次數(shù)
B.算法的時(shí)間復(fù)雜度是指算法執(zhí)行所需要的時(shí)間
C.算法的時(shí)間復(fù)雜度是指算法執(zhí)行的速度
D.算法的復(fù)雜度是指算法控制結(jié)構(gòu)的復(fù)雜程度
13.面向?qū)ο蟮脑O(shè)計(jì)方法與傳統(tǒng)的面向過(guò)程的方法有本質(zhì)不同,它的基本原理是()。
A.模擬現(xiàn)實(shí)世界中不同事物之間的聯(lián)系
B.強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的算法而不強(qiáng)調(diào)概念
C.使用現(xiàn)實(shí)世界的概念抽象地思考問(wèn)題從而自然地解決問(wèn)題
D.不強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的算法而強(qiáng)調(diào)概念
14.為了提高軟件的獨(dú)立性,模塊之間最好是()。
A.控制耦合B.公共耦合C.內(nèi)容耦合D.數(shù)據(jù)耦合
15.若有定義“charc=“hello!”;”,則以下說(shuō)法正確的是()。
A.c占用7字節(jié)內(nèi)存B.c是一個(gè)字符串變量C.定義中有語(yǔ)法錯(cuò)誤D.c的有效字符個(gè)數(shù)是6
16.printf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占用5列。如果字符串長(zhǎng)度大于5,則輸出按方式()。
A.從左起輸出該字串,右補(bǔ)空格B.按原字符長(zhǎng)從左向右全部輸出C.右對(duì)齊輸出該字串,左補(bǔ)空格D.輸出錯(cuò)誤信息
17.在進(jìn)行單元測(cè)試時(shí),常用的方法是
A.采用白盒測(cè)試,輔之以黑盒測(cè)試B.采用黑盒測(cè)試,輔之以白盒測(cè)試C.只使用白盒測(cè)試D.只使用黑盒測(cè)試
18.有如下程序intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(fnnc(x,y),z);printf("%d\n",r);}該程序的輸出結(jié)果是______。
A.12B.13C.14D.15
19.有以下程序:#include<stdio.h>main(){ints[12]=(1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;for(i=0;i<12;i++) c[s[i]]++; for(i=1;i<5;i++) printf(“%d”,c[i]);printf(“\n”);}程序的運(yùn)行結(jié)果是()。
A.2344B.4332C.1234D.1123
20.在Windows環(huán)境下,單擊當(dāng)前應(yīng)用程序窗口中的“關(guān)閉”按鈕,其功能是A.將當(dāng)前應(yīng)用程序轉(zhuǎn)為后臺(tái)運(yùn)行
B.退出Windows后再關(guān)機(jī)
C.退出Windows后重新啟動(dòng)計(jì)算機(jī)
D.終止當(dāng)前應(yīng)用程序的運(yùn)行
二、2.填空題(20題)21.以下程序的輸出結(jié)果是【】。
#include<stdio.h>
unsignedfun6(unslgnednum)
{unsignedk=1;
do{k*=mum%10;num/=10;}
while(num);
returnk;
}
main()
{unsignedn=26;
printf("%d\n",fan6(n));
}
22.以下程序段打開文件后,先利用fseek函數(shù)將文件位置指針定位在文件末尾,然后調(diào)用刪函數(shù)返回當(dāng)前文件位置指針的具體位置,從而確定文件長(zhǎng)度,請(qǐng)?zhí)羁铡?/p>
FILE*myf;longfl;
myf=【】("test.t","rb");
fseek(myf,(),SEEK_END);fl+ftell(myf);
fclose(myf);
printf("%d\n",fl);
23.與結(jié)構(gòu)化需求分析方法相對(duì)應(yīng)的是【】方法。
24.軟件工程研究的內(nèi)容主要包括:【】技術(shù)和軟件工程管理。
25.表示條件:10<x<100或x<0的C語(yǔ)言表達(dá)式【】。
26.以下程序中,函數(shù)fun的功能是計(jì)算x2-2x+6,主函數(shù)中將調(diào)用fun函數(shù)計(jì)算:
y1=(x+8)2-2(x+8)+6
y2=sin2(x)-2sin(x)+6
請(qǐng)?zhí)羁铡?/p>
ginclude"math.h"
doublefun(doublex){return(x*x-2*x+6);}
main()
{doublex,y1,y2;
pfintf("Enterx:");scanf("%lf"&x);
y1=fun([10]);y2=fun([11]);
pin
27.某二叉樹中度為2的節(jié)點(diǎn)有18個(gè),則該二叉樹中有()個(gè)葉子節(jié)點(diǎn)。
28.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{intm=011,n=11;
printf("%d%d\n",++m,n++);
}
29.以下程序運(yùn)行后的輸出結(jié)果是【】
#include<stdio.h>
main()
{chara[]="123456789",*p;
inti=0;
p=a;
while(*p)
{if(i%2==0)*p='*';
p++;i++;
}
puts(a);
}
30.設(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>BADEP<CR>QTHRG<CR>,則程序的輸出結(jié)果是______。
31.數(shù)據(jù)庫(kù)是指按照一定的規(guī)則存儲(chǔ)在計(jì)算機(jī)中的【】的集合,它能被各種用戶共享。
32.二叉樹按某順序線索化后,其結(jié)點(diǎn)均有指向其前趨和后繼的線索,該說(shuō)法是【】的。
33.【】(黑箱或白箱)測(cè)試方法完全不考慮程序的內(nèi)部結(jié)構(gòu)和內(nèi)部特征。
34.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{intX==1,y=0,a=0,b=0;
switch(x)
{case1:switch(y)
{case0:a++;break;
case1:b++;break;
}
case2:a++;b++;break;
}
printf("%d%d\n",a,b);
}
35.下面程序的功能是將字符串a(chǎn)下標(biāo)值為偶數(shù)的元素由小到大排序,其他元素不變,請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{chara[]="labchmfye",t;
inti,j;
for(i=0;i<7;i+=2)
for(j=i+2;j<9;【】)
if(【】)
{t=a[i];a[i]=a[j];a[j]=t;j++;}
puts(a);
printf("\n");
}
36.實(shí)現(xiàn)算法所需的存儲(chǔ)單元多少和算法的工作量大小分別稱為算法的【】。
37.設(shè)有以下定義和語(yǔ)句,則*(*(p+2)+1)的值為【】。
inta[3][2]={10,20,30,40,50,60},(*p)[2];
p=a;
38.若a是血型變量,且a的初值為4,則計(jì)算a+=a-=a*a表達(dá)式后a的值為______。
39.設(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>代表回車符):CDEF<CR>BADEF<CR>QTHRG<CR>,則程序的輸出結(jié)果是______。
40.度為10的線性表進(jìn)行冒泡排序,最壞情況下需要比較的次數(shù)為______。
三、1.選擇題(20題)41.兩個(gè)或兩個(gè)以上模塊之間聯(lián)系的緊密程度稱為()。
A.耦合性B.內(nèi)聚性C.復(fù)雜性D.數(shù)據(jù)傳輸特性
42.SQL語(yǔ)言又稱為______。
A.結(jié)構(gòu)化定義語(yǔ)言B.結(jié)構(gòu)化控制語(yǔ)言C.結(jié)構(gòu)化查詢語(yǔ)言D.結(jié)構(gòu)化操縱語(yǔ)言
43.下列關(guān)于棧的描述中錯(cuò)誤的是()
A.棧是先進(jìn)后出的線性表B.棧只能順序存儲(chǔ)C.棧具有記憶作用D.對(duì)棧的插入與刪除操作中,不需要改變棧底指針
44.已知p、p1為指針變量,a為數(shù)組名,i為整型變量,下列語(yǔ)句中,不正確的是______。
A.p=&i;B.p=a;C.p=&a[i];D.p=10;
45.有如下程序
main()
{charch[2][5]={"6937","8254"},*p[2];
inti,j,s=0;
for(i=0;i<2;i++)p[i]=ch[i];
for(i=0;i<2;i++)
for(j=0;p[i][j]>′\0′;j+=2)
s=10*s+p[i][j]-′0′;
printf("%d\n",s);}
該程序的輸出結(jié)果是
A.69825B.63825C.6385D.693825
46.有以下程序:intf(intn){if(n==1)retuxn1;elsereturnf(n-1)+1;}main(){inti,j=0;for(i=1;i<3;i++)j+=f(i);printf("%d\n",j);}程序運(yùn)行后的輸出結(jié)果是______。
A.4B.3C.2D.1
47.以下正確的函數(shù)定義是______。
A.doublef1(intx,inty)
B.doublef1(intx;inty)
C.doublef1(intx;floaty)
D.doublef1(intx,y)
48.有以下程序:main(){inty=1,x=2,z=3;printf("%d,%d\n",(++x,y++),z+2);}執(zhí)行后的輸出結(jié)果是()。
A.3,5B.2,5C.3,3D.1,5
49.下列司用于C語(yǔ)言用戶標(biāo)識(shí)符的—組是______。
A.voiddefineWORD
B.a3_b3_123Car
C.For-abcIFCase
D.2aDOsizeof
50.
(2)
A.*sB.sC.*s++D.(*s)++
51.在標(biāo)準(zhǔn)C語(yǔ)言中,下列程序的輸出結(jié)果為______。main(){printf("%e",123.456);}
A.123.456B.123.4560C.1.23456e2D.1.234560e+002
52.軟件開發(fā)離不開系統(tǒng)環(huán)境資源的支持,其中必要的測(cè)試數(shù)據(jù)屬于A.硬件資源B.通信資源C.支持軟件D.輔助資源
53.算法的時(shí)間復(fù)雜度是指______。
A.執(zhí)行算法程序所需要的時(shí)間B.算法程序的長(zhǎng)度C.算法執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)D.算法程序中的指令條數(shù)
54.能正確表示邏輯關(guān)系:"a≥10或a≤0"的C語(yǔ)言表達(dá)式是
A.a>=10ora<=0
B.a>=0|a<=10
C.a>=10&&a<=0
D.a>=10||a<=0
55.以下錯(cuò)誤的定義語(yǔ)句是A.intx[][3]={{0},{1},{1,2,3}};
B.intx[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
C.intx[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
D.intx[][3]={1,2,3,4};
56.以下程序輸出結(jié)果是#include<stdio.h>main(){inti=0,a=0;while(i<20){for(;;){if((i%10)==0)break;elsei--;}i+=11;a+=i;}printf("%d\n",a);}
A.21B.32C.33D.11
57.以下對(duì)C語(yǔ)言函數(shù)的有關(guān)描述中,正確的是
A.在C語(yǔ)言中調(diào)用函數(shù)時(shí),只能把實(shí)參的值傳給形參,形參的值不能傳送給實(shí)參
B.C函數(shù)既可以嵌套定義又可以遞歸調(diào)用
C.函數(shù)必須有返回值,否則不能使用函數(shù)
D.函數(shù)必須有返回值,返回值類型不定
58.能將高級(jí)語(yǔ)言程序轉(zhuǎn)換成目標(biāo)語(yǔ)言程序的是______。
A.調(diào)試程序B.解釋程序C.編譯程序D.編輯程序
59.有以下程序:main(){chars[]="\n123\\";printf("%d,%d\n",strlen(s),sizeof(s));}執(zhí)行后輸出結(jié)果是()。
A.賦初值的字符串有錯(cuò)B.6,7C.5,6D.6,6
60.下列選項(xiàng)中,合法的C語(yǔ)言關(guān)鍵字是______。
A.VARB.cherC.integerD.default
四、選擇題(20題)61.兩個(gè)或兩個(gè)以上模塊之間聯(lián)系的緊密程度稱為()。
A.耦合性B.內(nèi)聚性C.復(fù)雜性D.數(shù)據(jù)傳輸特性
62.若有函數(shù)內(nèi)部說(shuō)明:inta[3][4];則數(shù)組a中各元素
A.可在程序的運(yùn)行階段得到初值0
B.可在程序的編譯階段得到初值0
C.不能得到確定的初值
D.可在程序的編譯或運(yùn)行階段得到初值0
63.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.B,C,D,E,B.A,B,C,D,C.C,D,E,F(xiàn),D.B,D,F(xiàn),H,
64.
65.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.1,2,3,4,5,6,7,8,9,0,
B.2,1,4,3,6,5,8,7,0,9,
C.0,9,8,7,6,5,4,3,2,1,
D.0,1,2,3,4,5,6,7,8,9,
66.
67.
68.
69.以下數(shù)組定義中錯(cuò)誤的是()。
70.
71.如果在C程序中要用到庫(kù)函數(shù)中的字符串比較函數(shù)strcmp(),那么在程序前面應(yīng)該添加的頭文件是()。
A.stdio.hB.string,hC.a(chǎn)lloc.hD.math.H
72.
73.下列說(shuō)法中不正確的是
A.C語(yǔ)言規(guī)定,不能在一個(gè)函數(shù)的內(nèi)部再定義函數(shù)
B.在沒(méi)有聲明函數(shù)返回值類型的情況下,默認(rèn)的函數(shù)返回值類型為int型
C.函數(shù)的類型可以是整型、實(shí)型、字符型,但不能是指針型
D.函數(shù)可以沒(méi)有形參,但函數(shù)名后的一對(duì)圓括號(hào)不能省略
74.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.2,4B.1,2C.1,4D.2.3
75.以下可用作C語(yǔ)言用戶標(biāo)識(shí)符的是()
A.void,define,WORD
B.a3_b3,_123,IF
C.FOR,--abc,Case
D.2a,Do,Sizeof
76.有以下程序:
i
程序運(yùn)行后的輸出結(jié)果是()。。,
A.3,4B.4,1C.2,3D.1,2
77.
78.
79.以下選項(xiàng)中可用作C程序合法實(shí)數(shù)的是()。A..1eOB.3.0e0.2C.E9D.9.12E
80.若已定義:inta[9],*p=a;并在以后的語(yǔ)句中未改變p的值,不能表示a[1]地址的表達(dá)式為()。
A.p+1B.a+1C.a++D.++p
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)proc()的功能是:輸出M行M列整數(shù)方陣,然后求兩條對(duì)角線上的各元素之和并將其返回。請(qǐng)修改程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.使用VC++2010打開考生文件夾下prog1中的解決方案。此解決方案的項(xiàng)目中包含一個(gè)源程序文件prog1.c。在此程序中,請(qǐng)編寫一個(gè)函數(shù)fun(),該函數(shù)的功能是將大于整數(shù)m且緊靠m的k個(gè)素?cái)?shù)存入所指的數(shù)組中。例如,若輸入17、5,則應(yīng)輸出19、23、29、31、37。注意:部分源程序在文件prog1.c中。請(qǐng)勿改動(dòng)主函數(shù)main()和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入你編寫的若干語(yǔ)句。試題程序:
參考答案
1.C
2.B
3.CC)【解析】線性表是一種線性結(jié)構(gòu),由n(n≥O)個(gè)元素組成,所以線性表可以是空表。但是性表中,第一個(gè)結(jié)點(diǎn)沒(méi)有前件,最后一個(gè)結(jié)點(diǎn)沒(méi)有后件,其他結(jié)點(diǎn)有且只有一個(gè)前件和后件,所以選項(xiàng)C)是錯(cuò)誤的。
4.B
5.C解析:整型變量x、y的初值都為1,“x++,y++,++y”是一個(gè)逗號(hào)表達(dá)式,程序執(zhí)行“z=x++,y++,++y”后,x的值為2,y的值為3,z取豆號(hào)表達(dá)式中第二個(gè)表達(dá)式的值,為1。
6.C
7.B
8.B
9.A解析:從main函數(shù)入手,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 金屬工藝品與文化傳承考核試卷
- 游戲廣告投放心理策略-洞察分析
- 藝術(shù)史分期與分期理論-洞察分析
- 土壤生態(tài)系統(tǒng)服務(wù)價(jià)值評(píng)估-洞察分析
- 隱私保護(hù)數(shù)據(jù)分析-洞察分析
- 云母粉改性技術(shù)綜述-洞察分析
- 信號(hào)燈故障智能診斷與修復(fù)-洞察分析
- 2025屆河南部分重點(diǎn)高中高三上學(xué)期大聯(lián)考模擬預(yù)測(cè)物理試題(解析版)
- 個(gè)人校本研修計(jì)劃
- 2024-2025學(xué)年浙江省金磚聯(lián)盟高二上學(xué)期11月期中物理試題(解析版)
- 《蘇寧電器的內(nèi)部控制與評(píng)價(jià)研究》18000字(論文)
- ISO 56001-2024《創(chuàng)新管理體系-要求》專業(yè)解讀與應(yīng)用實(shí)踐指導(dǎo)材料之12:“6策劃-6.1應(yīng)對(duì)風(fēng)險(xiǎn)和機(jī)遇的措施”(雷澤佳編制-2025B0)
- 《IT企業(yè)介紹》課件
- 2024年研究生考試考研思想政治理論(101)試卷及解答參考
- 年終獎(jiǎng)發(fā)放通知范文
- 油田員工勞動(dòng)合同范例
- Unit 5 Music Listening and Talking 說(shuō)課稿-2023-2024學(xué)年高一英語(yǔ)人教版(2019)必修第二冊(cè)
- 車間主任個(gè)人年終總結(jié)
- 2024年甘肅省公務(wù)員錄用考試《行測(cè)》試題及答案解析
- 消防工程技術(shù)專業(yè)畢業(yè)實(shí)習(xí)報(bào)告范文
- 2024年高等教育法學(xué)類自考-00229證據(jù)法學(xué)考試近5年真題附答案
評(píng)論
0/150
提交評(píng)論