




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2023CCF非專業(yè)級(jí)別軟件能力認(rèn)證第一輪
(CSP-31)入門級(jí)C++語(yǔ)言試題
認(rèn)證時(shí)間:2023年9月16日09:30~11:30
考生注意事項(xiàng):
?試題紙共有10頁(yè),答題紙共有1頁(yè),滿分100分。請(qǐng)?jiān)诖痤}紙上作答,
寫在試題紙上的
一律無(wú)效。
?不得使用任何電子設(shè)備(如計(jì)算器、手機(jī)、電子詞典等)或查閱任何書籍資
料。
一、單項(xiàng)選擇題(共15題,每題2分,共計(jì)30分;每題有且僅有一個(gè)正確
選項(xiàng))
1.在C++中,下面哪個(gè)關(guān)鍵字用于聲明一個(gè)變量,其值不能被修改?()
A.unsigned
B.const
C.static
D.mutable
2.八進(jìn)制數(shù)123456708和076543218的和為O
A.222222218
B.211111118
C.221111118
D.222222118
3.閱讀下述代碼,請(qǐng)問(wèn)修改data的value成員以存3.14,正的方式是()
unionData{
intnum;
floatvalue;
charsymbol;
);
unionDatadata;
A.data.value=3.14;
B.value.data=3.14;
C.data->value=3.14;
D.value->data=3.14;
4.假設(shè)有一個(gè)鏈表的節(jié)點(diǎn)定義如下:
structNode{
intdata;
Node*next;
);
現(xiàn)在有一個(gè)指向鏈表頭部的指針:Node*heado如果想要在鏈表中插入一個(gè)新節(jié)點(diǎn),其成員
data的值為42,并使新節(jié)點(diǎn)成為鏈表的第一個(gè)節(jié)點(diǎn),下面哪個(gè)操作是正確的?()
A.Node*newNode=newNode;newNode->data=42;newNode->next=head;head=
newNode;
B.Node*newNode=newNode;head->data=42;newNode->next=head;head=
newNode;
C.Node*newNode=newNode;newode->data=42;head-next=newNode;
D.Node*newNode=newNode;newNode->data=2;newNode->next=head;
5.根節(jié)點(diǎn)的高度為1,一棵有2023個(gè)節(jié)點(diǎn)的三叉樹高度至少為()
A.6
B.7
C.8
D.9
6.小明在某一天中依次有七個(gè)空閑時(shí)間段,他想要選出至少一個(gè)空閑時(shí)間段來(lái)練習(xí)唱歌,
但他希望任意兩個(gè)練習(xí)的時(shí)間段之間都有至少兩個(gè)空閑的時(shí)間段讓他體息,則小明一共有()
種選擇時(shí)間段的方案。
A.31
B.18
C.21
D.33
7.以下關(guān)于高精度運(yùn)算的說(shuō)法錯(cuò)誤的是()
A.高精度計(jì)算主要是用來(lái)處理大整數(shù)或需要保留多位小數(shù)的運(yùn)算
B.大整數(shù)除以小整數(shù)的處理的步驟可以是,將被除數(shù)和除數(shù)對(duì)齊,從左到右逐位嘗試將
除數(shù)乘以某個(gè)數(shù),通過(guò)減法得到新的被除數(shù),并累加商。
C.高精度乘法的運(yùn)算時(shí)間只與參與運(yùn)算的兩個(gè)整數(shù)中長(zhǎng)度較長(zhǎng)者的位數(shù)有關(guān)。
D.高精度加法運(yùn)算的關(guān)鍵在于逐位相加并處理進(jìn)位。
8.后綴表達(dá)式“623+-382/+*2八3+”對(duì)應(yīng)的中表達(dá)式是()
A.((6-(2+3))*(3+8/2))A2+3
B.6-2+3*3+8/2A2+3
C.(6-(2+3))*((3+8/2)A2)+3
D.6-((2+3)*(3+8/2))A2+3
數(shù)和的和為()
9.10101021668
A.IOIIOOOO2
B.2368
C.158io
D.AOie
10.假設(shè)有一組字符(a,b,c,d,e,f},對(duì)應(yīng)的頻率分別為5%、9%、12%、13%、16%、45%。請(qǐng)同
以下哪個(gè)選項(xiàng)是字符a,b,c,d,e,f分別對(duì)應(yīng)的一組哈夫曼編碼?
A.llll,1H0,101,100,110,0
B.1010,1001,1000,011,010,00
C.000,001,010,011,11
D.1010,1011,110,111,00,01
11.給定一棵二叉樹,其前序遍歷結(jié)果為:ABDECFG,中序通歷結(jié)果為:請(qǐng)問(wèn)這模DEBACFG。樹
的正確后序遍歷結(jié)果是什么?()
A.EDBGFCA
B.EDBGCFA
C.DEBGFCA
D.DBEGFCA
12.考慮一個(gè)有向無(wú)環(huán)圖,該圖包含4條有向邊:(1,2),(1,3),(2,4)和(3,4)。以下哪個(gè)選項(xiàng)是
這個(gè)有向無(wú)環(huán)圖的一個(gè)有效的拓?fù)渑判颍?)
/71
A.4,2,3,1
B.1,2,3,4
C.1,2,4,3
D.2,1,3,4
13.在計(jì)算機(jī)中,以下哪個(gè)選項(xiàng)描述的數(shù)據(jù)存儲(chǔ)容量最小?()
A.字節(jié)(byte)
B.比特(bit)
C.字(word)
D.千字節(jié)(kilobyte)
14.一個(gè)班級(jí)有10個(gè)男生和12個(gè)女生。如果要選出一個(gè)3人的小組,并且小組中必須至少
包含1個(gè)女生,那么有多少種可能的組合?()
A.1420
B.1770
C.1540
D.2200
15.以下哪個(gè)不是操作系線?
A.Linux
B.Windows
C.Android
D.HTML
二、閱讀程序(程序輸入不超過(guò)數(shù)組或字符串定義的范圍;判斷題正確填V,錯(cuò)
誤填X;除特殊說(shuō)明外,判斷題1.5分,選擇題3分,共計(jì)40分)
(1)程序閱讀一:
01#include<iostream>
02#include<cmath>
03usingnamespacestd;
04
05doublef(doublea,doubleb,doublec){
06doubles=(a+b+c)/2;
07returnsqrt(s*(s-a)*(s-b)*(s-c));
08)
09
10intmain(){
11cout.flags(ios::fixed);
12cout.precision(4);
13
14inta,b,c;
15cin?a?b?c;
16cout?f(a,b,c)?endl;
17return0;
18)
假設(shè)輸入的所有數(shù)都為不超過(guò)1000的正整數(shù),完成下面的判斷題和單選題:
?判斷題
16.(2分)當(dāng)輸入為“222”時(shí),輸出為“1.7321”。()
17.(2分)將第6行中的“(s-b)*(s-c)”改為“(s-c)*(s-b)”不會(huì)影響程序運(yùn)行的結(jié)果。()
18.(2分)程序總是輸出四位小數(shù)。()
?單選題
19.當(dāng)輸入為"345”時(shí),輸出為()。
A.“6.0000”B.“12.0000”C.“24.0000”D.“30.0000”
20.當(dāng)輸入為“51213”時(shí),輸出為()。
A.“24.0000”B.“30.0000”C.“60.0000"D.u120.0000"
(2)程序閱讀二:
01#include<iostream>
02#include<vector>
03#include<algorithm>
04usingnamespacestd;
05
06intf(stringx,stringy){
07intm=x.size();
08intn=y.size();
09vector<vector<int?v(m+l,vector<int>(n+l,0));
10for(inti=l;i<=m;i++){
11for(intj=l;j<=n;j++){
12if(x[i-l]==y[j-l]){
13v[i]U]=v[i-l][j-l]+l;
14}else{
15v[i][j]=maxMi-llUlMilU-l]);
16}
17)
18}
19returnv[m][n];
20)
21
22boolg(stringx,stringy){
23if(x.size()!=y.size()){
24returnfalse;
25}
26returnf(x+x,y)==y.size();
27)
28
29intmain(){
30stringx,y;
31cin?x?y;
32cout?g(x,y)?endl;
33return0;
34)
假設(shè)輸入的n、m均是不超過(guò)100的正整數(shù),完成下面的判斷題和單選題:
?判斷題
21.f函數(shù)的返回值小于等于min(n,m)。()
22.f函數(shù)的返回值等于兩個(gè)輸入字符串最長(zhǎng)公共子串的長(zhǎng)度。()
23.當(dāng)輸入兩個(gè)完全相同的字符串時(shí),g函數(shù)的返回值總是true。()
?單選題
24.將第19行中的“v[mHn]”更改為,那么程序()。
A.行為不變B.只會(huì)改變輸出C.一定非正常退出D.可能非正常退出
25.當(dāng)輸入為"csp-jp-jcs"時(shí),輸出為()。
A."0"B."1"C."VD."F"
26.當(dāng)輸入為"csppscspsccp"時(shí),輸出的第一行為()。
A."T"B."F"C."0"D."1"
⑶程序閱讀三:
01#include<iostream>
02#include<cmath>
03usingnamespacestd;
04
05intsolvel(intn){
06returnn*n;
07)
08
09intsolve2(intn){
10intsum=0;
11for(inti=l;i<=sqrt(n);i++){
12if(n%i==0){
13if(n/i==i){
14sum+=i*i;
15}else{
16sum+=i*i+(n/i)*(n/i);
17}
18)
19)
20returnsum;
21)
22
23intmain(){
24intn;
25cin?n;
26cout?solve2(solvel(n))?""?solvel(solve2(n))?endl;
27return0;
28)
假設(shè)輸入的n是絕對(duì)值不超過(guò)1000的整數(shù),完成下面的判斷題和單選題:
?,判斷題
27.如果輸入的n為正整數(shù),solve2函數(shù)的作用是計(jì)算n所有的因子的平方和。()
28.第13~14行的作用是避免n的平方根因子(或n/i)進(jìn)入第16行而被計(jì)算兩次。()
29.如果輸入的n為質(zhì)數(shù),solve2(n)的返回值為M+1。()
?單選題
30.(4分)如果輸入的n為質(zhì)數(shù)p的平方,那么solve2(n)的返回值為()。
A.p2+p+lB.M+n+lC.n2+lD,p4+2p2+l
31.當(dāng)輸入為正整數(shù)時(shí),第一項(xiàng)減去第二項(xiàng)的差值一定()。
A.大于0B.大于等于0且不一定大于0
C.小于0D,小于等于0且不一定小于0
32.當(dāng)輸入為"5"時(shí),輸出為()。
A.“651625”B.“650729”
C.“651676”D.“652625”
三、完善程序(單選題,每小題3分,共計(jì)30分)
(1)(尋找被移除的元素)問(wèn)題:原有長(zhǎng)度為n+1、公差為1的等差升序數(shù)列;將數(shù)列輸
入到程序的數(shù)組時(shí)移除了一個(gè)元素,導(dǎo)致長(zhǎng)度為n的升序數(shù)組可能不再連續(xù),除非被移除
的是第一個(gè)或最后一個(gè)元素,需要在數(shù)組不連續(xù)時(shí),找出被移除的元素。
試補(bǔ)全枚舉程序。
01//include<iostream>
02#include<vector>
03
04usingnamespacestd;
05
06intfind_missing(vector<int>&nums){
07intleft=O,right=nums,size()-l;
08while(left<right){
09intmid=left+(right-left)/2;
10if(nums[mid]==mid+①){
11②;
12}else{
13③;
14}
15}
16return(4);
17)
18
19intmain(){
20intn;
21cin?n;
22vector<int>nums(n);
23for(inti=0;i<n;i++)cin?nums[i];
24intmissing_number=find_missing(nums);
25if(missing_number==⑤){
26cout?"Sequenceisconsecutive"?endl;
27}else{
28cout?"Missingnumberis"?missing_number?endl;
29}
30return0;
31)
33.①處應(yīng)填()
A.1B.nums[0]C.rightD.left
34.②處應(yīng)填()
A.left=mid+1B.right=mid-l
C.right=midD.left=mid
35.③處應(yīng)填()
A.left=mid+1B.right=mid-l
C.right=midD.left=mid
36.④處應(yīng)填()
A.left+nums[O]B.right+nums[O]
C.mid+nums[O]D.right+1
37.⑤處應(yīng)填()
A.nums[O]+nB.nums[O]+n-lC.nums[O]+n+lD.nums[n-l]
(2)(編輯距離)給定兩個(gè)字符串,每次操作可以選擇刪除(Delete)、插入(Insert)、替換
(Replace)一個(gè)字符,求將第一個(gè)字符串轉(zhuǎn)換為第二個(gè)字符串所需要的最少操作次數(shù)。
試補(bǔ)全動(dòng)態(tài)規(guī)劃算法。
01#include<iostream>
02include<string>
03//include<vector>
04usingnamespacestd;
05
06intmin(intx,inty,intz){
07returnmin(min(x,y),z);
08)
09
10intedit_dist_dp(stringstrl,stringstr2){
11intm=strl.length();
12intn=str2.length();
13vector<vector<int?dp(m+l,vector<int>(n+l));
14
15for(inti=0;i<=m;i++){
16for(intj=O;j
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國(guó)硬雙鋁包裝機(jī)行業(yè)發(fā)展監(jiān)測(cè)及投資戰(zhàn)略規(guī)劃研究報(bào)告
- 固廢處理場(chǎng)深調(diào)研報(bào)告計(jì)劃書
- 2025年無(wú)定形態(tài)硅球項(xiàng)目投資可行性研究分析報(bào)告
- 2025年中國(guó)膠糖維生素行業(yè)市場(chǎng)調(diào)查研究及發(fā)展戰(zhàn)略規(guī)劃報(bào)告
- 2025年一次性使用連接管項(xiàng)目可行性研究報(bào)告
- 路燈報(bào)告申請(qǐng)書
- 2025年式鹽霧腐蝕試驗(yàn)箱項(xiàng)目投資可行性研究分析報(bào)告
- 農(nóng)貿(mào)市場(chǎng)綜合體建設(shè)項(xiàng)目資金申請(qǐng)報(bào)告
- 2025年奈比洛爾鹽酸鹽項(xiàng)目投資可行性研究分析報(bào)告
- 2019-2025年中國(guó)高轉(zhuǎn)化糖漿市場(chǎng)發(fā)展現(xiàn)狀調(diào)研及投資趨勢(shì)前景分析報(bào)告
- 2024年上海市普通高中學(xué)業(yè)水平等級(jí)性考試化學(xué)試卷(含答案)
- 【喜德盛自行車營(yíng)銷策略探究13000字】
- 乳制品及含乳飲料制造行業(yè)作業(yè)活動(dòng)風(fēng)險(xiǎn)分級(jí)管控清單
- 免疫檢查點(diǎn)抑制劑相關(guān)肺炎診治專家共識(shí)
- 計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)基礎(chǔ) (項(xiàng)目式微課版) 課件全套 崔升廣 第1-6章-計(jì)算機(jī)網(wǎng)絡(luò)概述 - 廣域網(wǎng)技術(shù)
- 康復(fù)治療技術(shù)專業(yè)《康復(fù)工程技術(shù)》課程標(biāo)準(zhǔn)
- (高清版)TDT 1013-2013 土地整治項(xiàng)目驗(yàn)收規(guī)程
- 床位預(yù)約管理提高患者就診效率減少等待時(shí)間
- 吉利圍墻施工組織設(shè)計(jì)樣本
- 人教版三年級(jí)上冊(cè)數(shù)學(xué)應(yīng)用題100題及答案
- 第6課《飛向藍(lán)天的恐龍》兩課時(shí)學(xué)習(xí)任務(wù)單部編版四年級(jí)語(yǔ)文下冊(cè)
評(píng)論
0/150
提交評(píng)論