




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
2021-2022年山東省濰坊市全國計算機等級考試C語言程序設計測試卷一(含答案)學校:________班級:________姓名:________考號:________
一、單選題(20題)1.下列敘述中正確的是()。
A.一個邏輯數(shù)據(jù)結構只能有一種存儲結構
B.邏輯結構屬于線性結構,存儲結構屬于非線性結構
C.一個邏輯數(shù)據(jù)結構可以有多種存儲結構,且各種存諸結構不影響數(shù)據(jù)處理的效率
D.一個邏輯數(shù)據(jù)結構可以有多種存儲結構,且各種存諸結構影響數(shù)據(jù)處理的效率
2.
3.有以下程序:#include<stdio.h>main(){inta=-2,b=2;for(;++a&&--b;)printf(“%d,%d\n”,a,b);}程序運行后的輸出結果是()。
A.0,1B.0,0C.1,-1D.0,2
4.若有定義:typedefint*INTEGER;INTEGERp,*q;則以下敘述正確的是()。
A.q是基類型為int的指針變量
B.p是int型變量
C.p是基類型為int的指針變量
D.程序中可用INTEGER代替類型名int
5.判定一個順序棧st(最多元素為MaxSize)為空的條件是()。
A.st->top!B.st->top!C.top==-1D.top==MaxSize
6.以下關于字符串的敘述中正確的是()。
A.C語言中有字符串類型的常量和變量
B.兩個字符串中的字符個數(shù)相同時才能進行串符串大小的比較
C.可以用關系運算符對字符串的大小進行比較
D.空串一定比空格打頭的字符串小
7.
8.設inta=12,則執(zhí)行完語句a+=a-=a*a后,a的值是()。
A.552B.264C.144D.-264
9.在下面的一維數(shù)組定義中,哪一個有語法錯誤()。A.inta[]={1,2,3};B.inta[10]={0};C.inta[];D.inta[5];
10.在Internet中,域名服務器的主要功能是實現(xiàn)()的轉換。
A.IP地址到域名(主機名字)B.域名到IP地址C.主機IP地址和路由器IP地址之間D.路由器IP地址之問
11.有以下程序:
程序的運行結果是()。
A.0987654321
B.4321098765
C.5678901234
D.0987651234
12.下列敘述中錯誤的是()。A.在數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)的物理結構必須與邏輯結構一致,
B.數(shù)據(jù)庫技術的根本目標是要解決數(shù)據(jù)的共享問題
C.數(shù)據(jù)庫設計是指在已有數(shù)據(jù)庫管理系統(tǒng)的基礎上建立數(shù)據(jù)庫
D.數(shù)據(jù)庫系統(tǒng)需要操作系統(tǒng)的支持
13.一個模塊直接調用的下層模塊的數(shù)目稱為模塊的()。
A.扇入數(shù)B.扇出數(shù)C.寬度D.作用域
14.有以下程序:#include<stdio.h>#defineF(x,y)(x)*(y)main(){inta=3,b=4;printf("%d\n",F(a++,b++));}程序運行后的輸出結果是()。
A.12B.15C.16D.20
15.以下敘述中錯誤的是()。
A.在同一源文件中,函數(shù)名必須唯一
B.凡是帶有返回值的庫函數(shù),都不能通過加分號而作為獨立的語句出現(xiàn)
C.不同函數(shù)中的形式參數(shù)可以同名
D.返回基本數(shù)據(jù)類型的庫函數(shù)的調用,均可以出現(xiàn)在賦值號右邊的表達式中
16.下述程序的輸出結果是()。#include<stdio.h>main(){inti;for(i=1;i<=10;i++){if(i*i>=20)(i*i<=lOO))break;}printf("%d\n",i*i);}A.49B.36C.25D.64
17.軟件需求規(guī)格說明書的作用不包括()。
A.軟件設計的依據(jù)B.軟件可行性研究的依據(jù)C.軟件驗收的依據(jù)D.用戶與開發(fā)人員對軟件要做什么的共同理解
18.設變量已正確定義,則以下能正確計算n!的程序段是______。
A.f=0;for(i=1;i<=n;i++)f*=i;
B.f=1;for(i=1;i<n;i++)f*=i;
C.f=1;for(i=n;i>1;i++)f*=i;
D.f=1;for(i=n;i>=2;i--)f*=i;
19.有以下程序:voidsum(int*a){a[0]=a[1];}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;for(i=1;i>0;i--)sum(&aa[i]);print("%d\n",aa[0]);}程序運行后的輸出結果是______。
A.4B.3C.2D.1
20.下列鏈表中,其邏輯結構屬于非線性結構的是()
A.雙向鏈表B.帶鏈的棧C.二叉鏈表D.循環(huán)鏈表
二、2.填空題(20題)21.下列程序的功能是將2個數(shù)從小到大輸出。
main()
{floata,b,【】;
scanf(【】,&a,&b);
if(a>b)
{t=a;
【】;
b=t;
}
printf("%5.2f,%5.2f\n",a,b);
}
22.下面程序的運行結果是:【】。
fun(intt[],intn)
{inti,m;
if(n==1)returnt[0];
elseif(n>=2){m=fun(t,n-1);returnm;}
}
main()
{inta[]={11,4,6,3,8,2,3,5,9,2};
printf("%d\n",fun(a,10));
}
23.以下程序的運行結果是【】。
#include<stdio.h>
main()
{intx=1,y=0,a=0,b=0;
switch(x)
{case1:
switch(y)
{case0:a++;break;
case1:b++;break;
}
case2:a++;b++;break;
case3:a++;b++;
}
printf("a=%d,b=%d\n",a,b);
}
24.排序是計算機程序設計中的一種重要操作,常見的排序方法有插入排序、【】和選擇排序等。
25.在面向對象方法中,類之間共享屬性和方法的機制稱為______。
26.數(shù)據(jù)庫系統(tǒng)中實現(xiàn)各種數(shù)據(jù)管理功能的核心軟件是______。
27.成本估算模型中,Putnam估算模型是一種【】模型。
28.以下程序中,函數(shù)fun的功能是計算x2-2x+6,主函數(shù)中將調用fun函數(shù)計算:
y1=(x+8)2-2(x+8)+6
y2=sin2(x)-2sin(x)+6
請?zhí)羁铡?/p>
#include"math.h"
doublefun(doublex){return(x*x-2*x+6);}
main()
{doublex,y1,y2;
printf("Enterx:");scanf("%lf",&x);
y1=fun(【】);
y2=fun(【】);
printf("y1=%lf,y2=%lf\n",y1,y2);
}
29.一個項目具有一個項目經(jīng)理,一個項目經(jīng)理可管理多個項目,則實體“項目經(jīng)理”與實體“項目”的聯(lián)系屬于()的聯(lián)系。
30.以下程序的輸出結果是【】。
#include<stdio.h>
voidswap(int*a,int*b)
{int*t;
t=a;a=b;b=t;
}
main()
{inti=3,j=5,*p=&i,*q=&j;
swap(p,q);printf("%d%d\N,*p,*q))
}
31.長度為n的順序存儲線性表中,當在任何位置上插入一個元素概率都相等時,插入一個元素所需移動元素的平均個數(shù)為【】。
32.下列程序用來將從鍵盤上輸入的2個字符串進行比較,然后輸出2個字符串中第1個不相同字符的ASCII碼之差。例如,輸入的2個字符串分別為abcdef和abceef,則輸出為-1。
#include
main()
{charstr[100],str2[100],c;
inti,s;
printf("\ninputstring1:\n");gest(str1);
printf("\ninputstring2:\n");gest(str2);
i=0;
while((strl[i]==str2[i]&&(strl[i]!=【】))
i++;
s=【】;
printf(.%d\n",s);
33.冒泡排序算法在最好的情況下的元素交換次數(shù)為【】。
34.下列程序的運行結果是______。
#definePOW(r)(r)*(r)
main()
{intx=3,y=2,t;
t=POW(x+y);
printf("%d\n",t);
}
35.以下程序的輸出結果是【】。
main()
{inta=0;
a+=(a=8);
printf("%d\n",A);
}
36.已知bead指向一個帶頭結點的單向鏈表,鏈表中每個結點包含數(shù)據(jù)域(data)和指針域(next),數(shù)據(jù)域為整型。以下函數(shù)求出鏈表中所有連接點數(shù)據(jù)域的和值作為函數(shù)值返回。請在橫線處填入正確內容。
{intdata;structlink*next;}
main()
{structlink*head;
sam(______);
{stmctlink*p;ints=0;
p=head->next;
while(p){s+=p->data;p=p->next;}
return(s);}
37.在算法正確的前提下,評價一個算法的兩個標準是空間復雜度和()。
38.以下程序運行后的輸出結果是【】。
#include<stdio,h>
main()
{chara[]="Language",b[]:"Programe";
char*pl,*p2;intk;
p1=a;p2=b;
for(k=0;k<=7;k++)
if(*(p1+k)==*(p2+k))printf("%c",*(pi+k));
}
39.對下列二叉樹進行中序遍歷的結果為【】。
40.以下程序的輸出結果是【】。
#include<stdio.h>
#defineM5
#defineNM+M
main()
{intk;
k;N*N*5;printf("%d\n"k);
}
三、1.選擇題(20題)41.若定義了以下函數(shù):voidf(……){……*p=(double*)malloc(10*sizeof(double));……}p是該函數(shù)的形參,要求通過p把動態(tài)分配存儲單元的地址傳回主調函數(shù),則形參p的正確定義應當是()
A.double*pB.float**pC.double**pD.float*p
42.下列敘述中正確的是()。
A.黑箱(盒)測試方法完全不考慮程序的內部結構和內部特征
B.黑箱(盒)測試方法主要考慮程序的內部結構和內部特征
C.白箱(盒)測試不考慮程序內部的邏輯結構
D.上述三種說法都不對
43.若有語句:char*line[5];,以下敘述中正確的是
A.定義line是一個數(shù)組,每個數(shù)組元素是一個基類型為char的指針變量
B.定義line是一個指針變量,該變量可以指向一個長度為5的字符型數(shù)組
C.定義line是一個指針數(shù)組,語句中的。號稱為間址運算符
D.定義line是一個指向字符型函數(shù)的指針
44.在C語言中,int,char和short三種類型數(shù)據(jù)在內存中所占用的字節(jié)數(shù)
A.由用戶自己定義B.均為2個字節(jié)C.是任意的D.由所用機器的機器字長決定
45.下列寫法正確的是()。
A.main(){inti=3,j;j=5}
B.main(){inti=3;
C.main()
D.main(){;}
46.當執(zhí)行下面的程序時,如果輸入ABC,則輸出的結果是()。#include<Stdlib.h>main(){charss[]="1,2,3,4,5";gets(ss);strcat(ss,"6789");printf("%s\n",ss);}
A.ABC6789B.ABDC67C.123ABC678D.ABC456789
47.若有以下定義:chars[20]="programming",*ps=s;則不能代表字符。的表達式是()
A.ps+2B.s[2]C.ps[2]D.ps+=2,*ps
48.以下選項中不合法的標識符是
A.ptintB.FORC.&aD._00
49.有以下程序main(){chara[]="abcdefg",b[10]="abedefg";pfintf("%d%d\n",sizeof(a),sizeof(b));}執(zhí)行后輸出結果是
A.77B.88C.810D.1010
50.以下各選項企圖說明一種新的類型名,其中正確的是______。
A.typedefv1int;
B.typedefv2=int;
C.typedefintv3;
D.typedefv4:int
51.在下列敘述中,錯誤的一條是()
A.scanf()函數(shù)可以用來輸入任何類型的多個數(shù)據(jù)
B.數(shù)組名作函數(shù)參數(shù)時,也采用“值傳送”方式
C.如果形參發(fā)生改變,不會改變主調函數(shù)的實參值
D.函數(shù)的實參與形參的類型應一致
52.以下定義語句中正確的是()。
A.chara='A'b='B';
B.floata=b=l0.0;
C.inta=l0,*b=&a;
D.float*a,b=&a;
53.數(shù)據(jù)庫設計包括兩個方面的設計內容,它們是()
A.概念設計和邏輯設計B.模式設計和內模式設計C.內模式設計和物理設計D.結構特性設計和行為特性設計
54.設有以下定義:inta=0;doubleb=1.25;charc='A';#defined2則下面語句中錯誤的是()。
A.a++;B.b++;C.c++;D.d++;
55.能將高級語言程序轉換成目標語言程序的是______。
A.調試程序B.解釋程序C.編譯程序D.編輯程序
56.下列選項中正確的語句是
A.chars[8];s={"Beijing"};
B.char*s;s={"Beijing"};
C.chars[8];s="Beijing";
D.char*s;s="Beijing";
57.程序設計是以()和數(shù)據(jù)結構為基礎的。
A.算法設計B.編程語言C.設計風格D.數(shù)據(jù)結構
58.若有以下定義;chara;intb;floatc;doubled;則表達式“a*b+d-c”值的類型為()
A.floatB.intC.charD.double
59.下面能正確進行字符串賦值操作的是
A.chars[5]={"ABCDE"};
B.chars[5]={'A','B','C','D','E'};
C.char*s;s="ABCDE";
D.char*s;chara;scanf("%s",&s);
60.下述關于C語言文件的操作的結論中,正確的是______。
A.對文件操作必須先關閉文件
B.對文件操作必須先打開文件
C.對文件操作順序無要求
D.對文件操作前必須先測文件是否存在,然后再打開文件
四、選擇題(20題)61.
62.以下敘述中錯誤的是()。
A.可以給指針變量賦一個整數(shù)作為地址值
B.函數(shù)可以返回地址值
C.改變函數(shù)形參的值,不會改變對應實參的值
D.當在程序的開頭包含頭文件stdi0.h時,可以給指針變量賦NULL、、、
63.有以下程序:
程序運行后的輸出結果是()。
A.116B.8C.40D.4
64.
65.
66.有下列程序:intfun(intx[],intn){staticintsum=0,i;for(i=0;i<n;i++)sum+=x[i]:returnsum;}main(){inta[3]={1,2,3,4,5),b[3]={6,7,8,9),s=0;s=fun(a,5)+fun(b,4);printf(“%d\n”,s);}程序執(zhí)行后的輸出結果是()。A.45B.50C.60D.55
67.有定義如下:
structsk
{inta;
floatb;
}data,*p;
如果p=&data;則對于結構變量data的成員a的正確引用時()
A)(*).data.aB)(*p).a
C)p->data.aD)p.data.a
68.在單鏈表中,增加頭結點的目的是()。A.A.方便運算的實現(xiàn)B.使單鏈表至少有一個結點
C.標識表結點中首結點的位置
D.說明單鏈表是線性的鏈式存儲實現(xiàn)
69.
70.
71.已定義:inta=25,b=14,c=19;,以下三目運算符(?:)所構成語句的執(zhí)行后
a<=25&&b--<=2&&c?printf("***a=%d,b=%d,c=%d\n",a,b,c):printf("###a=%d,b=%d,c=%d\n",a,b,c);程序輸出的結果是
A.***a=25,b=13,c=19B.***a=26,b=14,c=19C.###a=25,b=13,c=19D.###a=26,b=14,c=19
72.
73.下面的函數(shù)調用語句中func函數(shù)的實參個數(shù)是()。func((f2v1,v2),(v3,v4,v5),(v6,max(v7,v8)))
A.3B.4C.5D.8
74.軟件的()設計又稱總體結構設計,其主要任務是建立軟件系統(tǒng)的總體結構。
A.概要B.抽象C.邏輯D.規(guī)劃
75.軟件生命周期是指()。A.軟件產品從提出、實現(xiàn)、使用維護到停止使用退役的過程
B.軟件從需求分析、設計、實現(xiàn)到測試完成的過程
C.軟件的開發(fā)過程
D.軟件的運行維護過程
76.
77.定義無符號整數(shù)類為UInt,下面可以作為類UInt實例化值的是()。
A.-369B.369C.0.369D.整數(shù)集合11,2,3,4,51
78.下列敘述中正確的是()。A.在switch語句中,不一宗使用break語句
B.在switch語句中,必須使用default
C.break語句必須與swifth語句中的case配對使用
D.break語句只能用于swifth著句
79.下列關于棧的描述中錯誤的是()。
A.棧是先進先出的線性表B.棧只能順序存儲C.棧具有記憶作用D.對棧的插入刪除操作中,不需要改變棧底指針
80.要求通過while循環(huán)不斷讀入字符,當讀人字母N時結束循環(huán),若變量已正確定義,下列正確的程序段是()。A.B.C.D.A.A.AB.BC.CD.D
五、程序改錯題(1題)81.下列給定程序中,函數(shù)proc的功能是:從字符串str中,刪除所有大寫字母F。
請修改程序中的錯誤,使它能得到正確結果。
注意:不要改動main函數(shù),不得增行或刪行,也不得更改程序的結構。
試題程序:
#include<stdio.h>
voidproc(char*str)
{
inti,j;
//****found****
for(i=j=0;str[i]一0;i++)
if(str[i]!=F)
//****found****
str[i]=str[i];
str[j]=\0;
}
voidmain
{
charstr[80];
printf("\nEnterastring:");
gets(str);
printf("Theoriginalstring:");
puts(str);
proc(str);
printf("Thestringafterdeleted:");
puts(str);
printf("\n\n");}
六、程序設計題(1題)82.請編寫一個函數(shù)proc(),它的功能是:將str所指字符串中所有下標為奇數(shù)位置的字母轉換為大寫(若該位置上不是字母,則不轉換)。例如,若輸入abcdel23,則應輸出aBcDe123。注意:部分源程序給出如下。請勿改動main()函數(shù)和其他函數(shù)中的任何內容,僅在函數(shù)proc()的花括號中填入所編寫的若干語句。試題程序:
參考答案
1.D數(shù)據(jù)的存儲結構是指數(shù)據(jù)的邏輯結構在計算機存儲空間中的存放形式,一種數(shù)據(jù)結構可以根據(jù)需要采用不同的存儲結構,用的存儲結構有順序和鏈式結構。用不同的存儲結構,其處理的效率是不同的。
2.D
3.A在語句“for(;++a&&--b;)”中,for循環(huán)的表達式1和表達式3為缺省項。首先判斷條件表達式“b”。當“a=-2,b=2”時,第1次執(zhí)行“++a”和“--b”,條件表達式為真,循環(huán)條件成立。第2次執(zhí)行“++a”為0,由于運算符,當?shù)?個條件為假時,不執(zhí)行第2個條件,因此“b=1”,發(fā)生短路,“--b”不再執(zhí)行。因此輸出的最終值為0,1。故本題答案為A選項。
4.C題干中使用typedef定義新類型名INTEGER,它代表int*類型。使用INTEGER定義p,相當于int*p。使用INTEGER定義*q,相當于int**q。所以p是基類型為int的指針變量,q是基類型為int*的指針變量,選項A、B、D錯誤。故本題答案為C選項。
5.B
6.D解析:C語言中只有字符串常量而沒有字符串變量,故選項A不正確:字符串比較大小是以第1個不相同字符的大小為標準的,跟長度沒有關系,故選項B不正確:字符串比較大小除了使用庫函數(shù)stremp()以外,就只能靠自己寫代碼來實現(xiàn)了,而不能通過關系運算符來比較大小,因為字符串在表達式中相當于coostchar*,即常字符指針,代表的是字符串的首地址,關系運算符會將兩個字符串的首地址值比較大小,這是毫無意義的。所以選項C也不正確??沾拈L度為0,而以空格打頭的字符串的長度至少為1,故選項D正確,本題應該選擇D。
7.A
8.D
9.C
10.B在Internet中,把域名翻譯為IP地址的軟件稱為域名系統(tǒng)DNS,運行域名系統(tǒng)的主機稱為域名服務器。域名服務器的主要功能是實現(xiàn)入網(wǎng)主機名字和IP地址的轉換。
11.C函數(shù)fun(int*s,intn1,intn2)的功能是對數(shù)組s中的元素進行首尾互相調換。所以在主函數(shù)中,當fun(a,0,3)執(zhí)行完后,數(shù)組a[12]={4,3,2,1,5,6,7,8,9,0};再執(zhí)行fun(a,4,9),數(shù)組a[12]={4,3,2,1,0,9,8,7,6,5};再執(zhí)行fun(a,0,9)后,數(shù)組a[12]={5,6,7,8,9,0,1,2,3,4}。所以正確答案為c)。
12.A解析:本題考查數(shù)據(jù)庫系統(tǒng)的基本概念和知識。數(shù)據(jù)的邏輯結構,是數(shù)據(jù)間關系的描述,它只抽象地反映數(shù)據(jù)元素之間的邏輯關系,而不管其在計算機中的存儲方式。數(shù)據(jù)的存儲結構,又叫物理結構,是邏輯結構在計算機存儲器里的實現(xiàn)。這兩者之間沒有必然的聯(lián)系。因此,選項A的說法是錯誤的。
數(shù)據(jù)庫可以看成是長期存儲在計算機內的、大量的、有結構的和可共享的數(shù)據(jù)集合。因此,數(shù)據(jù)庫具有為各種用戶所共享的特點。不同的用戶可以使用同一個數(shù)據(jù)庫,可以取出它們所需要的子集,而且容許子集任意重疊。數(shù)據(jù)庫的根本目標是要解決數(shù)據(jù)的共享問題。因此,選項B的說法是正確的。
數(shù)據(jù)庫設計是在數(shù)據(jù)庫管理系統(tǒng)的支持下,按照應用的要求,設計一個結構合理、使用方便、效率較高的數(shù)據(jù)庫及其應用系統(tǒng)。數(shù)據(jù)庫設計包含兩方面的內容:一是結構設計,也就是設計數(shù)據(jù)庫框架或數(shù)據(jù)庫結構;二是行為設計,即設計基于數(shù)據(jù)庫的各類應用程序、事務等。因此,選項C的說法是錯誤的。
數(shù)據(jù)庫系統(tǒng)除了數(shù)據(jù)庫管理軟件之外,還必須有其他相關軟件的支持。這些軟件包括操作系統(tǒng)、編譯系統(tǒng)、應用軟件開發(fā)工具等。對于大型的多用戶數(shù)據(jù)庫系統(tǒng)和網(wǎng)絡數(shù)據(jù)庫系統(tǒng),還需要多用戶系統(tǒng)軟件和網(wǎng)絡系統(tǒng)軟件的支持。因此,選項D的說法是正確的。因此,本題的正確答案是選項A。
13.B扇入數(shù)是指調用一個給定模塊的模塊個數(shù)。扇出數(shù)是指由一個模塊直接調用的其他模塊數(shù),即一個模塊直接調用的下層模塊的數(shù)目。本題答案為B選項。
14.A解析:本題考查帶參數(shù)的宏定義,參數(shù)只是簡單的替換而不是求出其值后再替換形式參數(shù)。本題中用a++替換X,用b++替換Y,再求(a++)*(b++)的值,即3*4的值,其結果為12。
15.B在同一源文件中,函數(shù)名必須唯一,選項A正確。函數(shù)的調用有兩種形式:①出現(xiàn)在表達式中,可以出現(xiàn)在賦值號右邊的表達式中;②作為獨立的語句完成某種操作。因此選項B錯誤,選項D正確。不同函數(shù)中的形參可以同名,它們的作用域都限制在各自的函數(shù)體內,選項C正確。故本題答案為B選項。
16.C當if執(zhí)行到第一個滿足(i*i>=20)(i*i<=100)這個條件的i出現(xiàn)時,通過break語句跳出循環(huán),執(zhí)行下面的prinlf語句。
17.B《軟件可行性分析報告》是軟件可行性研究的依據(jù)。
18.D解析:A選項,將f賦值為0,結果得到0,因為0乘任何數(shù)都為0;B選項,i<n,計算的是(n-1)!,C選項將陷入死循環(huán)。
19.D解析:C語言覿定,實參變量對形參變量的數(shù)據(jù)傳遞是“值傳遞”,只由實參傳給形參,而不能由形參傳回來給實參。函數(shù)調用結束后,形參單元被釋放,實參單元仍保留并維持原值。本題要求輸出aa[0]的值,結果應為1。
20.C數(shù)據(jù)的邏輯結構是描述數(shù)據(jù)之間的關系,分兩大類:線性結構和非線性結構。線性結構是n個數(shù)據(jù)元素的有序(次序)集合,指的是數(shù)據(jù)元素之間存在著“一對一”的線性關系的數(shù)據(jù)結構。常用的線性結構有:線性表,棧,隊列,雙隊列,數(shù)組,串。非線性結構的邏輯特征是一個結點元素可能對應多個直接前驅和多個后驅。常見的非線性結構有:樹(二叉樹等),圖(網(wǎng)等),廣義表。
21.t"%f%f"a=b
22.1111解析:此題涉及函數(shù)的調用和if語句。程序先執(zhí)行第二個if語句,然后再執(zhí)行第一個if語句,最后用return返回數(shù)值。
23.a=2b=1a=2,b=1解析:本題考查了switch結構的內容。C語言中,程序執(zhí)行完一個case標號的內容后,如果沒有break語句,控制結構會轉移到下一個case繼續(xù)執(zhí)行,因為case常量表達式只是起語句標號作用,并不是在該處進行條件判斷。本題程序在執(zhí)行完內部switch結構后,繼續(xù)執(zhí)行了外部switch結構的case2分支,最后a和b的值分別為2和1。
24.交換排序交換排序解析:常見的排序方法有插入排序(包括簡單插入排序法和希爾排序法等)、交換排序(包括冒泡排序和快速排序法等)和選擇排序(包括簡單選擇排序和堆排序等)。注意:常見的排序方法及其作用機制和區(qū)別。
25.繼承繼承解析:在面向對象的程序設計方法中,某些屬性和方法是可以共享的,由于類從父類中繼承而來,這樣提高了軟件的可重用性。
26.數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)解析:數(shù)據(jù)庫管理系統(tǒng)是數(shù)據(jù)庫的管理機構,它是一種系統(tǒng)軟件,負責數(shù)據(jù)庫中的數(shù)據(jù)組織、數(shù)據(jù)操縱、數(shù)據(jù)維護、控制及保護和數(shù)據(jù)服務等。
27.動態(tài)多變量動態(tài)多變量
28.x+8sin(x)x+8,sin(x)解析:考查考生對函數(shù)調用相關知識的了解。用x+8代替函數(shù)fun(doublex)中形式參數(shù)x;用sin(x)代替函數(shù)fun(doublex)中形式參數(shù)x。
29.一對多一對多解析:實體之間的對應關系稱為聯(lián)系,它反映現(xiàn)實世界事物之間的相互關聯(lián)。兩個實體間的聯(lián)系可以歸結為三種類型:一對一聯(lián)系表現(xiàn)為某一實體與另一實體一一對應相關聯(lián):一對多聯(lián)系表現(xiàn)為某一實體與相關多個實體相關聯(lián);多對多聯(lián)系表現(xiàn)為多個實體與相關多個實體相聯(lián)系。所以實體“項目經(jīng)理”與實體“項目”的聯(lián)系屬于一對多的聯(lián)系。
30.3535解析:函數(shù)swap(int*a,int*b)的功能是實現(xiàn)*a和*b中兩個數(shù)據(jù)的交換,在主函數(shù)中調用swap(p,q)后,形參指針變量a和b分別指向i和j,在swap(int*a,int*b)執(zhí)行完后,指針變量a和b分別指向j和i,而指針變量p,q所指向變量的值沒有發(fā)生變化,所以輸出結果為35。
31.n/2性表的任何位置插入一個元素的概率相等,即概率為p=1/(n+1),則插入一個元素時所需移動元素的平均次數(shù)為E=1/(n+1)(n-i+1)=n/2。
32.\0'strl[i]-str2[i]
33.0
34.2525解析:本題考查帶參數(shù)的宏的定義及相關運算。運算過程為:t=POW(x+y)=(2+3)*(2+3)=25。
35.1616解析:在程序中首先將8賦值給變量a,然后在進行復合賦值運算。即a=a+a=8+8=16,所以該空格處應該填16。
36.
37.時間復雜度時間復雜度解析:在算法正確的前提下,評價一個算法的兩個標準是空間復雜度和時間復雜度。算法的時間復雜度,是指執(zhí)行算法所需要的計算工作量。算法的空間復雜度是指執(zhí)行這個算法所需要的內存空間。
38.gaegae解析:本題考查字符指針變量與字符數(shù)組。for循環(huán)語句共循環(huán)8次:
①當k=0時,*(Pl+0)='L',*(p2+0)='P',L!=P,沒有輸出。
②當k=1時,*(p1+1)='a',*(p2+1)='r',a!=r,沒有輸出。
③當k=2時,*(p1+2)='n',*(p2+2)='o',n!=o,沒有輸出。
④當k=3時,*(P1+3)='g',*(p2+3)='g',g==g,所以輸出g。
⑤當k=4時,*(p1+4)='u',*(P2+4)='r',u!=r,沒有輸出。
⑥當k=5時,*(p1+5)='a',*(p2+5)='a',a==a,所以輸出a。
⑦當k=6時,*(p1+6)='g',*(p2+6)='m',g!=m,沒有輸出。
⑧當k=7時,*(p1+7)='e',*(p2+7)='e',e==e,輸出e。
⑨當k=8時結束循環(huán),輸出結果為:gae。
39.ACBDFEHGPACBDFEHGP解析:中序遍歷方法的遞歸定義;當二叉樹的根不為空時,依次執(zhí)行如下3個操作:①按中序遍歷左子樹。②訪問根結點。③技中序遍歷右子樹。根據(jù)遍歷規(guī)則來遍歷本題中的二叉樹。首先遍歷F的左子樹,同樣按中序遍歷。先遍歷C的左子樹,即結點A,然后訪問C,接著訪問C的右子樹,同樣按中序遍歷C的右子樹,先訪問結點B,然后訪問結點D,因為結點D沒有右子樹,因此遍歷完C的右子樹,以上就遍歷完根結點F的左子樹。然后訪問根結點F,接下來遍歷F的右子樹,同樣按中序遍歷。首先訪問E的左子樹,E的左子樹為空,則訪問結點E,然后訪問結點E的右子樹,同樣按中序遍歷。首先訪問G的左子樹,即H,然后訪問結點G,最后訪問G的右子樹P。以上就把整個二叉樹遍歷一遍,中序遍歷的結果為ACBDFEHGP。因此,劃線處應填入“ACBDFEHGP”。
40.5555解析:宏替換不是函數(shù)調用,所以不能因為M被定義為5,而N被定義為M+M而武斷地認為N的值就是5+5=10。宏替換就是簡單的字符串替換,以本題為例:因為N被定義為M+M,所以k=N*N*5;語句展開后為k=M+M*M+M*5;。又因為M被定義為5,所以再展開后為k=5+5*5+5*5;?,F(xiàn)在不難計算出,這個表達式的結果為k=55。故最終輸出結果是55。
41.C解析:從上面程序中對指針變量p值的定義可見,p所指單元的內容又是一個地址,這個地址是申請分配內存空間后的返回首地址,而分配的空間中又存放double型的數(shù)據(jù),因此p是指向指針的指針變量,通過兩層間接尋址對double型的數(shù)據(jù)操作,故正確答案應該是選項C。
42.A解析:黑箱測試方法完全不考慮程序的內部結構和內部特征,而只是根據(jù)程序功能導出測試用例,選項A是正確的,選項B錯誤。白箱測試是根據(jù)對程序內部邏輯結構的分析來選取測試用例,選項C錯誤。正確答案為A。
43.A解析:C語言中[]比*優(yōu)先級高,因此line先與[5]結合,形成line[5]形式,這是數(shù)組形式,它有5個元素,然后再與line前面的“*”結合,表示此數(shù)組是一個指針數(shù)組,每個數(shù)組元素都是一個基類型為char的指針變量。
44.D解析:C語言中,常用的數(shù)據(jù)類型有int,char,float,double等,但C標準沒有具體規(guī)定以上各類數(shù)據(jù)所占內存字節(jié)數(shù),只要求long型數(shù)據(jù)長度不短于int型,short型不長于int型,具體如何實現(xiàn),由各計算機系統(tǒng)自行決定。
45.D解析:本題考查語句的基本構成。選項A)中j=5后面少了一個分號:選項B)中少了“}”;選項C)不是一個完整的函數(shù)定義格式,一個完整的函數(shù)定義格式還包括一對花括號:選項D)正確,是一個空語句。
46.A解析:本題程序一開始定義了一個字符數(shù)組ss,并用一個字符串常量初始化之。然后使用gets()函數(shù)從鍵盤緩沖區(qū)讀入一個字符串'ABC',此時gets()將改變數(shù)組的前4個元素為{\'A\',\'B\',\'C\',\'\\0\'}。接下來的strcat()函數(shù)將一個字符串連接到字符串ss之后,因為ss[3]被gets()設置為\'\\0\'(字符串結束標志),故strcat()從ss[3]開始將'6789'依次寫入ss[3]、ss[4]、ss[5]、ss[6],并將一個\'\\0\'寫入ss[7]。所以輸出結果是ABC6789,故應該選擇A。
47.A
48.C
49.C解析:本題小定義兩個字符型數(shù)組,其中a省略了長度,定義了b的長度為10,并賦初值分別為“abcdefg”和“abcdefg”。所以a的長度為賦值給它的字符串的字符個數(shù)7加上一個結束轉義字符,即a的長度為7+1為8。定義時b的長度定義為10,故b的長度為10,因此最后通過函數(shù)sizeof()求得的數(shù)組a和數(shù)組b的長度分別為8和10。
50.C解析:C語言中可以使用typedef來重新定義已有的數(shù)據(jù)類型,相當于為數(shù)據(jù)類型取個別名。
51.B
52.C解析:C語言中可以同時定義多個變量,但變量之間必須用“,”隔開,顯然,選項A中少了一個逗號“,”,故選項A不正確;選項B中定義變量時用了連續(xù)的賦值語句,這在定義變量是不正確的,故選項B不正確:選項D定義了一個float型指針a,然后定義了一個float型變量b,并。讓這個變量的初值為指針變量a的地址,顯然這是錯誤的,除非b是指向float型指針變量的指針。故選項D不正確,所以選項C符合題意。
53.A解析:模式設計和內模式設計是概念設計的兩種方法。物理設計是根據(jù)特定的計算機系統(tǒng),對數(shù)據(jù)的存儲結構和存取方法進行設計,從而實現(xiàn)從邏輯結構到物理結構的轉換。從系統(tǒng)開發(fā)的角度來看,結構特性設計和行為特性-設計是數(shù)據(jù)庫應用系統(tǒng)所具有的兩個特性。結構特性的設計,設計各級數(shù)據(jù)庫模式(靜態(tài)特性):行為特性的設計,改變實體及其特性,決定數(shù)據(jù)庫系統(tǒng)的功能(動態(tài)特性)。
54.D解析:本題考核的知識點是在自加運算符的運算對象。自加運算對象可以是整型變量也可以是實型變量,但不能是表達式和常量。本題中,#defined2定義了d為常數(shù)2,不能在對d進行自加運算.故選項D是個不正確的語句,所以,4個選項中選項D符合題意。
55.C解析:用高級語言編寫的程序稱為“源程序”,而計算機只能識別和執(zhí)行由O和1組成的二進指令,所以高級語言必須先用—種稱為“編譯程序”的軟件,把源程序翻譯成二進制形式的“目標程序”。
56.D解析:本題考核的知識點是字符欺組初始化及字符型指針的應用。字符數(shù)組初始化可以有兩種方式:方式一,按單個字符的方式賦初值。方式二,把一個字符串作為初值賦給字符數(shù)組。比如:charch[5]=rabc”),選項A屬于這種情況,但是選項A定義的字符數(shù)組長度為8,由于最后還要加一個“\\0”做結束標志,所以賦給他的字符串長度應小于等于7,所以選項A不正確;在給字符數(shù)組賦初值的時候,應該用花括號“{”和“}”將字符串括起來,故選項C不正確。將字符型指針變量指向字符串也有兩種方法,一是在定義指針變量時就給其賦初值,比如:char*p='student';二是給指針變量賦值,比如:p='student';(p已經(jīng)被定義為字符型指針變量;),故選項D正確,而選項C中的花括號是多余的,應該去掉,所以,4個選項中選項D符合題意。
57.A
58.D解析:參加運算的數(shù)據(jù)類型不同,要轉換為統(tǒng)一的數(shù)據(jù)類型,double在數(shù)據(jù)類型轉換中的級別最高,其他數(shù)據(jù)類型都要轉化為double,因此表達式值的類型為double。
59.C解析:如果一個字符數(shù)組用來存儲字符串,那么在定義該字符數(shù)組時,數(shù)組的大小應該比它將要實際存放的字符串長度大1,所以選項A)和B)錯。選項D)e本身就是一個字符指針,不需再取地址。
60.B解析:在C中對文件操作必須先打開文件,待文件操作完畢后要關閉文件。對文件以讀的方式進行打開操作時,同時會執(zhí)行文件的檢查文件是否存在,不存在將會返回空的文件指針,如果對文件以寫的方式打開時,文件不存在,將會自動創(chuàng)建文件,因此在C中打開文件前不必對其檢查文件是否存在,故答案為B。
61.C
62.A不能將一個整數(shù)直接賦給指針變量作為地址,因此A)是錯誤的。函數(shù)的返回值可以是地址,即指針。函數(shù)調用中形參值的變化不會傳遞給實參。故本題答案為A)。
63.B本題考查位運算,題目中將4向左移一位然后重新賦值給a,4左移一位為8,程序運行結果為8,選項B正確。
64.D
65.A
66.C在函數(shù)intfun(intx[],intn)的定義中,變量sum為一個靜態(tài)局部變量。由于在整個程序運行期間,靜態(tài)局部變量在內存中的靜態(tài)存儲中占據(jù)著
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國植物根尖縱切標本數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國核電用減速機市場分析及競爭策略研究報告
- 2025至2030年中國染色亮白PET標簽市場分析及競爭策略研究報告
- 2025至2030年中國板對板精密連接器市場現(xiàn)狀分析及前景預測報告
- 2025至2030年中國未漂防油紙行業(yè)投資前景及策略咨詢報告
- 美業(yè)銷售人員培訓課件
- 2025至2030年中國有機鹽行業(yè)投資前景及策略咨詢研究報告
- 2025至2030年中國智能溫控伴熱電纜行業(yè)投資前景及策略咨詢報告
- 2025至2030年中國晶體式高周波金屬加熱機市場分析及競爭策略研究報告
- 2025至2030年中國顯示記錄儀表市場調查研究報告
- 北京2025年北京市農林科學院招聘43人筆試歷年參考題庫附帶答案詳解
- 2025年廣州市勞動合同范本下載
- 2025-2030氣體檢測儀器行業(yè)市場深度調研及前景趨勢與投資研究報告
- 2025年北大荒黑龍江建三江水利投資有限公司招聘筆試參考題庫附帶答案詳解
- 靈活運用知識的2024年ESG考試試題及答案
- 國家藥品監(jiān)督管理局直屬單位招聘考試真題2024
- 受限空間作業(yè)施工方案
- 黃金卷(江蘇蘇州專用)-【贏在中考·黃金預測卷】2025年中考數(shù)學模擬卷
- (一模)2025年廣州市普通高中畢業(yè)班綜合測試(一)政治試卷(含答案)
- 視力防控健康教育
- 太乙課堂游戲最終版
評論
0/150
提交評論