




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
歷年noip普及組初賽試題匯編蕪湖縣實驗學(xué)校NOIP初賽復(fù)習(xí)資料第十五屆全國青少年信息學(xué)奧林匹克聯(lián)賽初賽試題(2009)(普及組C++語言二小時完成)??全部試題答案均要求寫在答卷紙上,寫在試卷紙上一律無效??一.單項選擇題(共20題,每題1.5分,共計30分。每題有且僅有一個正確答案。)關(guān)于圖靈機下面的說法哪個是正確的:圖靈機是世界上最早的電子計算機。由于大量使用磁帶操作,圖靈機運行速度很慢。圖靈機是英國人圖靈發(fā)明的,在二戰(zhàn)中為破譯德軍的密碼發(fā)揮了重要作用。圖靈機只是一個理論上的計算模型。2、關(guān)于計算機內(nèi)存下面的說法哪個是正確的:A)隨機存儲器(RAM)的意思是當(dāng)程序運行時,每次具體分配給程序的內(nèi)存位置是隨機而不確定的。1MB內(nèi)存通常是指1024*1024字節(jié)大小的內(nèi)存。C)計算機內(nèi)存嚴格說來包括主存(memory)、高速緩存(cache)和寄存器(register)三個部分。一般內(nèi)存中的數(shù)據(jù)即使在斷電的情況下也能保留2個小時以上。3、關(guān)于BIOS下面說法哪個是正確的:BIOS是計算機基本輸入輸出系統(tǒng)軟件的簡稱。BIOS里包含了鍵盤、鼠標、聲卡、顯卡、打印機等常用輸入輸出設(shè)備的驅(qū)動程序。BIOS一般由操作系統(tǒng)廠商來開發(fā)完成。BIOS能提供各種文件拷貝、復(fù)制、刪除以及目錄維護等文件管理功能。4、關(guān)于CPU下面哪個說法是正確的:CPU全稱為中央處理器(或中央處理單元)。CPU可以直接運行匯編語言。C)同樣主頻下,32位的CPU比16位的CPU運行速度快一倍。D)CPU最早是由Intel公司發(fā)明的。5、關(guān)于ASCII,下面哪個說法是正確的:ASCII碼就是鍵盤上所有鍵的唯一編碼。一個ASCII碼使用一個字節(jié)的內(nèi)存空間就能夠存放。C)最新擴展的ASCII編碼方案包含了漢字和其他歐洲語言的編碼。D)ASCII碼是英國人主持制定并推廣使用的。6、下列軟件中不是計算機操作系統(tǒng)的是:A)WindowsB)LinuxC)OS/2D)WPS7、關(guān)于互聯(lián)網(wǎng),下面的說法哪一個是正確的:A)新一代互聯(lián)網(wǎng)使用的IPv6標準是IPv5標準的升級與補充。B)互聯(lián)網(wǎng)的入網(wǎng)主機如果有了域名就不再需要IP地址。C)互聯(lián)網(wǎng)的基礎(chǔ)協(xié)議為TCP/IP協(xié)議。D)互聯(lián)網(wǎng)上所有可下載的軟件及數(shù)據(jù)資源都是可以合法免費使用的。8、關(guān)于HTML下面哪種說法是正確的:HTML實現(xiàn)了文本、圖形、聲音乃至視頻信息的統(tǒng)一編碼。HTML全稱為超文本標記語言。C)網(wǎng)上廣泛使用的Flash動畫都是由HTML編寫的。D)HTML也是一種高級程序設(shè)計語言。9、關(guān)于程序設(shè)計語言,下面哪個說法是正確的:加了注釋的程序一般會比同樣的沒有加注釋的程序運行速度慢。高級語言開發(fā)的程序不能使用在低層次的硬件系統(tǒng)如:自控機床或低端手機上。高級語言相對于低級語言更容易實現(xiàn)跨平臺的移植。以上說法都不對。10、已知大寫字母A的ASCII編碼為65(10進制),則大寫字母J的10進制ASCII編碼為:A)71B)72C)73D)以上都不是11、十進制小數(shù)125.125對應(yīng)的8進制數(shù)是A)100.1B)175.175C)175.1D)100.17512、有六個元素FEDCBA從左至右依次順序進棧,在進棧過程中會有元素被彈出棧。問下列哪一個不可能是合法的出棧序列?A)EDCFABB)DECABFC)CDFEBAD)BCDAEF13、表達式a*(b+c)-d的后綴表達式是:A)abcd*+-B)abc+*d-C)abc*+d-D)-+*abcd14、一個包含n個分支結(jié)點(非葉結(jié)點)的非空二叉樹,它的葉結(jié)點數(shù)目最多為:A)2n+1B)2n-1C)n-1D)n+115、快速排序最壞情況下的算法時間復(fù)雜度為:A)O(log2n) B)O(n)C)O(nlog2n)D)O(n2)16.有一個由4000個整數(shù)構(gòu)成的順序表,假定表中的元素已經(jīng)按升序排列,采用二分查找定位一個元素。則最多需要幾次比較就能確定是否存在所查找的元素:A)11次B)12次C)13次D)14次17、排序算法是穩(wěn)定的意思是關(guān)鍵碼相同的記錄排序前后相對位置不發(fā)生改變,下列哪種排序算法是不穩(wěn)定的:A)冒泡排序 B)插入排序 C)歸并排序 D)快速排序18、已知9個頂點的有向圖,若該圖是強連通的(從所有頂點都存在路徑到達其他頂點),則該圖中最少有多少條有向邊?A)nB)n+1C)n-1D)n*(n-1)19、全國信息學(xué)奧林匹克的官方網(wǎng)站為參與信息學(xué)競賽的老師同學(xué)們提供相關(guān)的信息和資源,請問全國信息學(xué)奧林匹克官方網(wǎng)站的網(wǎng)址是:A)/ B)/C)/ D)/20、在參加NOI系列競賽過程中,下面哪一種行為是不被嚴格禁止的:攜帶書寫工具,手表和不具有通訊功能的電子詞典進入賽場。在聯(lián)機測試中通過手工計算出可能的答案并在程序里直接輸出答案來獲取分數(shù)。通過互聯(lián)網(wǎng)搜索取得解題思路。在提交的程序中啟動多個進程以提高程序的執(zhí)行效率。二.問題求解(共2題,每空5分,共計10分)1.小陳現(xiàn)有2個任務(wù)A,B要完成,每個任務(wù)分別有若干步驟如下:A=a1->a2->a3,B=b1->b2->b3->b4->b5。在任何時候,小陳只能專心做某個任務(wù)的一個步驟。但是如果愿意,他可以在做完手中任務(wù)的當(dāng)前步驟后,切換至另一個任務(wù),從上次此任務(wù)第一個未做的步驟繼續(xù)。每個任務(wù)的步驟順序不能打亂,例如……a2->b2->a3->b3……是合法的,而……a2->b3->a3->b2……是不合法的。小陳從B任務(wù)的b1步驟開始做,當(dāng)恰做完某個任務(wù)的某個步驟后,就停工回家吃飯了。當(dāng)他回來時,只記得自己已經(jīng)完成了整個任務(wù)A,其他的都忘了。試計算小陳飯前已做的可能的任務(wù)步驟序列共有種。2.有如下的一段程序:a=1;b=a;d=-a;e=a+d;c=2*d;f=b+e-d;g=a*f+c;現(xiàn)在要把這段程序分配到若干臺(數(shù)量充足)用電纜連接的PC上做并行執(zhí)行。每臺PC執(zhí)行其中的某幾個語句,并可隨時通過電纜與其他PC通訊,交換一些中間結(jié)果。假設(shè)每臺PC每單位時間可以執(zhí)行一個語句,且通訊花費的時間不計。則這段程序最快可以在單位時間內(nèi)執(zhí)行完畢。注意:任意中間結(jié)果只有在某臺PC上已經(jīng)得到,才可以被其他PC引用。例如若語句4和6被分別分配到兩臺PC上執(zhí)行,則因為語句6需要引用語句4的計算結(jié)果,語句6必須在語句4之后執(zhí)行。三.閱讀程序?qū)懡Y(jié)果(共4題,每題8分,共計32分)1.#include<iostream>usingnamespacestd;inta,b;intwork(inta,intb){if(a%b)returnwork(b,a%b);returnb;intmain(){cin>>a>>b;cout<<work(a,b)<<endl;return0;)輸入:2012輸出: #include<iostream>usingnamespacestd;intmain(){inta[3],b[3];inti,j,tmp;for(i=0;i<3;i++)cin>>b[i];for(i=0;i<3;i++){a[i]=0;for(j=0;j<=i;j++){a[i]+=b[j];b[a[i]%3]+=a[j];))tmp=1;for(i=0;i<3;i++){a[i]%=10;b[i]%=10;tmp*=a[i]+b[i];)cout<<tmp<<endl;return0;輸入:235輸出: #include<iostream>usingnamespacestd;constintc=2009;intmain(){intn,p,s,i,j,t;cin>>n>>p;s=0;t=1;for(i=1;i<=n;i++){t=t*p%c;for(j=1;j<=i;j++)s=(s+t)%c;}cout<<s<<endl;return0;}輸入:112輸出: #include<iostream>usingnamespacestd;constintmaxn=50;voidgetnext(charstr[]){intl=strlen(str),i,j,k,temp;k=l-2;while(k>=0&&str[k]>str[k+1])k--;i=k+1;while(i<l&&str[i]>str[k])i++;temp=str[k];str[k]=str[i-1];str[i-1]=temp;for(i=l-1;i>k;i--)for(j=k+1;j<i;j++)if(str[j]>str[j+1]){temp=str[j];str[j]=str[j+1];str[j+1]=temp;}return;}intmain(){chara[maxn];intn;cin>>a>>n;while(n>0){getnext(a);n--;}cout<<a<<endl;return0;}輸入:NOIP3輸出: 四.完善程序(前8空,每空3分,后2空,每空2分,共28分)1.(最大連續(xù)子段和)給出一個數(shù)列(元素個數(shù)不多于100),數(shù)列元素均為負整數(shù)、正整數(shù)、0。請找出數(shù)列中的一個連續(xù)子數(shù)列,使得這個子數(shù)列中包含的所有元素之和最大,在和最大的前提下還要求該子數(shù)列包含的元素個數(shù)最多,并輸出這個最大和以及該連續(xù)子數(shù)列中元素的個數(shù)。例如數(shù)列為4,-5,3,2,4時,輸出9和3;數(shù)列為123-5078時,輸出16和7。#include<iostream>usingnamespacestd;inta[101];intn,i,ans,len,tmp,beg;intmain(){cin>>n;for(i=1;i<=n;i++)cin>>a[i];tmp=0;ans=0;len=0;beg二① ;for(i=1;i<=n;i++){if(tmp+a[i]>ans){ans=tmp+a[i];len=i-beg;}elseif(?&&i-beg>len)len=i-beg;TOC\o"1-5"\h\zif(tmp+a[i]③ ){beg二 ④ ;tmp=0;}else ? ;}cout<<ans<<""<<len<<endl;return0;}2.(國王放置)在n*m的棋盤上放置k個國王,要求k個國王互相不攻擊,有多少種不同的放置方法。假設(shè)國王放置在第(x,y)格,國王的攻擊的區(qū)域是:(x-1,y-1),(xT,y),(xT,y+1),(x,yT),(x,y+1),(x+1,yT),(x+1,y),(x+1,y+1)。讀入三個數(shù)n,m,k,輸出答案。題目利用回溯法求解。棋盤行標號為0~n-1,列標號為0~m-1。#include<iostream>usingnamespacestd;intn,m,k,ans;inthash[5][5];voidwork(intx,inty,inttot){inti,j;if(tot==k){ans++;return;}do(while(hash[x][y]){y++;if(y==m){x++;y二 ① ;}if(x==n)return;}for(i=x-1;i<=x+1;i++)if(i>=0&&i<n)for(j=y-1;j<=y+1;j++)if(j>=0&&j<m) ② ③ ;for(i=x-1;i<=x+1;i++)if(i>=0&&i<n)for(j=y-1;j<=y+1;j++)if(j>=0&&j<m)④ ;y++;if(y==m){x++;y=0;}if(x==n)return;}while(1);}intmain(){cin>>n>>m>>k;ans=0;memset(hash,0,sizeof(hash)); ? ;cout<<ans<<endl;return0;}第十四屆全國青少年信息學(xué)奧林匹克聯(lián)賽初賽試題2008(普及組C++語言二小時完成)??全部試題答案均要求寫在答卷紙上,寫在試卷紙上一律無效??一、單項選擇題(共20題,每題1.5分,共計30分。每題有且僅有一個正確答案.)。1.微型計算機中,控制器的基本功能是()。A.控制機器各個部件協(xié)調(diào)工作B.實現(xiàn)算術(shù)運算和邏輯運算C.獲取外部信息 D.存放程序和數(shù)據(jù)2.設(shè)人十口6,B二false,C二true,D二false,以下邏輯運算表達式值為真的是()。A.(AAB)V(CADV「A) B.((「AAB)VC)A「DC.(BVCVD)ADAA D.AA(DV「C)AB3.在下列關(guān)于圖靈獎的說法中,不正確的是()。圖靈獎是美國計算機協(xié)會于1966年設(shè)立的,專門獎勵那些對計算機事業(yè)作出重要貢獻的個人圖靈獎有“計算機界諾貝爾獎”之稱迄今為止,還沒有華裔計算機科學(xué)家獲此殊榮D.圖靈獎的名稱取自計算機科學(xué)的先驅(qū)、英國科學(xué)家阿蘭?圖靈4.計算機在工作過程中,若突然停電,( )中的信息不會丟失。A.ROM和RAMB.CPUC.ROMD.RAM.完全二叉樹共有2*N-1個結(jié)點,則它的葉節(jié)點數(shù)是()。A.N-1 B.N C.2*ND.2N-1.在以下各項中,()不是操作系統(tǒng)軟件。A.SolarisB.Linux C.WindowsVista D.Sybase.設(shè)棧S的初始狀態(tài)為空,元素a,b,c,d,e,f依次入棧S,出棧的序列為b,d,f,e,c,a,則棧S的容量至少應(yīng)該是()。A.6 B.5 C.4 D.3.與十進制數(shù)28.5625相等的四進制數(shù)是()。A.123.21B.131.22C.130.22D.130.21.設(shè)字符串5="01丫1^江”,S的非空子串的數(shù)目是()。A.28B.29C.16 D.17.Web2.0是近年來互聯(lián)網(wǎng)的熱門概念之一,其核心思想是互動與分享。下列網(wǎng)站中,()是典型的川0匕2.0應(yīng)用。A.Sina B.Flickr C.Yahoo D.Google.遞歸過程或函數(shù)調(diào)用時,處理參數(shù)和返回地址,通常使用一種稱為()的數(shù)據(jù)結(jié)構(gòu)。A.隊列 B.多維數(shù)組 C.線性表 D.棧. (2008)10+(5B)16的結(jié)果是()。A.(833)16B.(2089)10 C.(4163)8 D.(100001100011)213.二叉樹「已知其先根遍歷是1243576(數(shù)字為結(jié)點的編號,以下同),中根遍歷是2415736,則該二叉樹的后根遍歷是()。A.425763 1 B. 42 75631C.742563 1 D. 42 7653114.將數(shù)組{8,23, 4, 16,77, -5, 53, 100}中的元素按從大到小的順序排列,每次可以交換任意兩個元素,最少需要交換()次。TOC\o"1-5"\h\zA.4 B.5 C.6 D.7.對有序數(shù)組{5,13,19,21,37,56,64,75,88,92,100}進行二分查找,成功查找元素19的查找長度(比較次數(shù))是( )。A.1 B.2 C.3 D.4.面向?qū)ο蟪绦蛟O(shè)計(Object-OrientedProgramming)是一種程序設(shè)計的方法論,它將對象作為程序的基本單元,將數(shù)據(jù)和程序封裝在對象中,以提高軟件的重用性、靈活性和擴展性。下面關(guān)于面向?qū)ο蟪绦蛟O(shè)計的說法中,不正確的是()。A.面向?qū)ο蟪绦蛟O(shè)計通常采用自頂向下設(shè)計方法進行設(shè)計。B.面向?qū)ο蟪绦蛟O(shè)計方法具有繼承性(inheritance)、封裝性(encapsulation)、多態(tài)性(polymorphism)等幾大特點。C.支持面向?qū)ο筇匦缘恼Z言稱為面向?qū)ο蟮木幊陶Z言,目前較為流行的有C++、JAVA、C#等。D.面向?qū)ο蟮某绦蛟O(shè)計的雛形來自于Simula語言,后來在SmallTalk語言的完善和標準化的過程中得到更多的擴展和對以前思想的重新注解。至今,SmallTalk語言仍然被視為面向?qū)ο笳Z言的基礎(chǔ)。.在32*32點陣的“字庫”中,漢字“北”與“京”的字模占用字節(jié)數(shù)之和是( )。A.512 B.256 C.384 D.128.設(shè)T是一棵有n個頂點的樹,下列說法不正確的是( )。A.T有n條邊 B.T是連通的C.T是無環(huán)的 D.T有n-1條邊.下列不屬于NOIP競賽推薦使用的語言環(huán)境的是()。A.Dev-C++ B.VisualC++ C.freepascal D.Lazarus.在C++程序中,表達式200|10的值是()A.20 B.1 C.220 D.202二.問題求解(共2題,每題5分,共計10分)1.書架上有4本不同的書A、B、C、D。其中A和B是紅皮的,C和D是黑皮的。把這4本書擺在書架上,滿足所有黑皮的書都排在一起的擺法有種。滿足A必須比C靠左,所有紅皮的書要擺放在一起,所有黑皮的書要擺放在一起,共有 種擺法。2.有6個城市,任何兩個城市之間都有一條道路連接,6個城市兩兩之間的距離如下表所示,則城市1到城市6的最短距離為 。城市1城市2城市3城市4城市5城市6城市102311215城市22025312城市3320365城市4153079城市51236702城市615125920三.閱讀程序?qū)懡Y(jié)果(共4題,每題8分,共計32分)#include<iostream>usingnamespacestd;intmain(){inti,a,b,c,d,f[4];for(i=0;i<4;i++)cin>>f[i];a=f[0]+f[1]+f[2]+f[3];a=a/f[0];b=f[0]+f[2]+f[3];b=b/a;(b*f[1]+a)/f[2];d=f[(b/c)%4];if(f[(a+b+c+d)%4]>f[2])cout<<a+b<<endl;elsecout<<c+d<<endl;return0;}輸入:9192939輸出: 2.#include<iostream>usingnamespacestd;voidfoo(inta,intb,intc){if(a>b)foo(c,a,b);elsecout<<a<<','<<b<<','<<c<<endl;}intmain(){inta,b,c;cin>>a>>b>>c;foo(a,b,c);return0;}輸入:312輸出: 3.#include<iostream>usingnamespacestd;voidfunc(intary[],intn)inti=0,j,x;j=n-1;while(i<j){while(i<j&&ary[i]>0)i++;while(i<j&&ary[j]<0)j--;if(i<j){x=ary[i];ary[i++]=ary[j];ary[j--]=x;}}}intmain(){inta[20],i,m;m=10;for(i=0;i<m;i++){cin>>a[i];}func(a,m);for(i=0;i<m;i++)cout<<a[i]<<"";cout<<endl;return0;}輸入:54-6-116-5922-6110輸出: 4.#include<iostream>#include<cstring>usingnamespacestd;#defineMAX100voidsolve(charfirst[],intspos_f,intepos_f,charmid[],intspos_m,intepos_m){inti,root_m;if(spos_f>epos_f)return;for(i=spos_m;i<=epos_m;i++)if(first[spos_f]==mid[i]){root_m=i;break;}solve(first,spos_f+1,spos_f+(root_m-spos_m),mid,spos_m,root_m-1);solve(first,spos_f+(root_m-spos_m)+1,epos_f,mid,root_m+1,epos_m);cout<<first[spos_f];}intmain(){charfirst[MAX],mid[MAX];intlen;cin>>len;cin>>first>>mid;solve(first,0,len-1,mid,0,len-1);cout<<endl;return0;}輸入:7ABDCEGFBDAGECF輸出: 四.完善程序(前4空,每空2.5分,后6空,每空3分,共28分)1.(字符串替換)給定一個字符串S(S僅包含大小寫字母),下面的程序?qū)中的每個字母用規(guī)定的字母替換,并輸出S經(jīng)過替換后的結(jié)果。程序的輸入是兩個字符串,第一個字符串是給定的字符串S,第二個字符串S'由26個字母組成,它是a-z的任一排列,大小寫不定,S’規(guī)定了每個字母對應(yīng)的替換字母:S'中的第一個字母是字母A和a的替換字母,即S中的A用該字母的大寫替換,S中的a用該字母的小寫替換;S'中的第二個字母是字母B和b的替換字母,即S中的B用該字母的大寫替換,S中的b用該字母的小寫替換;……以此類推。#include<iostream>#include<string.h>charchange[26],str[5000];usingnamespacestd;voidCheckChangeRule(){inti;for(i=0;i<26;i++){if(?)change[i]-='A'-'a';}}voidChangeString(){inti;for(i=0;i<strlen(str);i++){if(?)str[i]=change[str[i]-'A']-'a'+'A';else}intmain(){inti;cin>>str;cin>>change;CheckChangeRule();?cout<<str<<endl;return0;}(找第k大的數(shù))給定一個長度為1,000,000的無序正整數(shù)序列,以及另一個數(shù)n(1<=n<=1000000),然后以類似快速排序的方法找到序列中第n大的數(shù)(關(guān)于第n大的數(shù):例如序列{1,2,3,4,5,6}中第3大的數(shù)是4)。#include<iostream>usingnamespacestd;inta[1000001],n,ans=-1;voidswap(int&a,int&b){intc;c=a;a=b;b=c;}intFindKth(intleft,intright,intn){inttmp,value,i,j;if(left==right)returnleft;tmp=rand()%(right-left)+left;swap(a[tmp],a[left]);value= ? i=left;j=right;while(i<j){while(i<j&&?)j--;if(i<j){a[i]=a[j];i++;}elsebreak;while(i<j&&?)i++;if(i<j){a[j]=a[i];j--;}elsebreak;}④if(i<n)returnFindKth(?);if(i>n)return ? returni;}intmain(){inti;intm=1000000;for(i=1;i<=m;i++)cin>>a[i];cin>>n;ans=FindKth(1,m,n);cout<<a[ans];return0;}第十三屆全國青少年信息學(xué)奧林匹克聯(lián)賽初賽試題2007
(普及組C++語言二小時完成)??全部試題答案均要求寫在答卷紙上,寫在試卷紙上一律無效??一、單項選擇題(共20題,每題1.5分,共計30分。每題有且僅有一個正確答案.)。.在以下各項中,()不是CPU的組成部分。A.控制器B.運算器C.寄存器D.主板2.在關(guān)系數(shù)據(jù)庫中,存放在數(shù)據(jù)庫中的數(shù)據(jù)的邏輯結(jié)構(gòu)以()為主。A.二叉樹B.多叉樹C.哈希表D.二維表3.在下列各項中,只有()不是計算機存儲容量的常用單位。A.ByteB.KBC.UBD.TB4.ASCII碼的含義是()。A.二一十進制轉(zhuǎn)換碼B.美國信息交換標準代碼C.數(shù)字的二進制編碼D.計算機可處理字符的唯一編碼.一個完整的計算機系統(tǒng)應(yīng)包括()。A.系統(tǒng)硬件和系統(tǒng)軟件B.硬件系統(tǒng)和軟件系統(tǒng)C.主機和外部設(shè)備D.主機、鍵盤、顯示器和輔助存儲器.IT的含義是()。A.通信技術(shù)B.信息技術(shù)C.網(wǎng)絡(luò)技術(shù)D.信息學(xué)7.LAN的含義是()。A.因特網(wǎng)B.局域網(wǎng)C.廣域網(wǎng)D.城域網(wǎng)8.冗余數(shù)據(jù)是指可以由其他數(shù)據(jù)導(dǎo)出的數(shù)據(jù),例如,數(shù)據(jù)庫中已存放了學(xué)生的數(shù)學(xué)、語文和英語的三科成績,如果還存放三科成績的總分,則總分就可以看作冗余數(shù)據(jù)。冗余數(shù)據(jù)往往會造成數(shù)據(jù)的不一致,例如,上面4個數(shù)據(jù)如果都是輸入的,由于操作錯誤使總分不等于三科成績之和,就會產(chǎn)生矛盾。下面關(guān)于冗余數(shù)據(jù)的說法中,正確的是()。.應(yīng)該在數(shù)據(jù)庫中消除一切冗余數(shù)據(jù).用高級語言編寫的數(shù)據(jù)處理系統(tǒng),通常比用關(guān)系數(shù)據(jù)庫編寫的系統(tǒng)更容易消除冗余數(shù)據(jù)C.為了提高查詢效率,在數(shù)據(jù)庫中可以適當(dāng)保留一些冗余數(shù)據(jù),但更新時要做相容性檢驗D.做相容性檢驗會降低效率,可以不理睬數(shù)據(jù)庫中的冗余數(shù)據(jù).在下列各軟件中,不屬于NOIP競賽(復(fù)賽)推薦使用的語言環(huán)境有()。A.gccB.g++C.TurboCD.freepascal以下斷電之后仍能保存數(shù)據(jù)的有()。A.硬盤B.高速緩存C.顯存D.RAM在下列關(guān)于計算機語言的說法中,正確的有()。高級語言比匯編語言更高級,是因為它的程序的運行效率更高B.隨著Pascal、C等高級語言的出現(xiàn),機器語言和匯編語言已經(jīng)退出了歷史舞臺高級語言程序比匯編語言程序更容易從一種計算機移植到另一種計算機上C是一種面向?qū)ο蟮母呒売嬎銠C語言近20年來,許多計算機專家都大力推崇遞歸算法,認為它是解決較復(fù)雜問題的強有力的工具。在下列關(guān)于遞歸算法的說法中,正確的是()。A.在1977年前后形成標準的計算機高級語言“FORTRAN77”禁止在程序使用遞歸,原因之一是該方法可能會占用更多的內(nèi)存空間和非遞歸算法相比,解決同一個問題,遞歸算法一般運行得更快一些對于較復(fù)雜的問題,用遞歸方式編程一般比非遞歸方式更難一些D.對于已經(jīng)定義好的標準數(shù)學(xué)函數(shù)sin(x),應(yīng)用程序中的語句“y=sin(sin(x));”就是一種遞歸調(diào)用.一個無法靠自身的控制終止的循環(huán)稱為“死循環(huán)”,例如,在C++語言程序中,語句“while(1)printf(“*");”就是一個死循環(huán),運行時它將無休止地打印*號。下面關(guān)于死循環(huán)的說法中,只有()是正確的。A.不存在一種算法,對任何一個程序及相應(yīng)的輸入數(shù)據(jù),都可以判斷是否會出現(xiàn)死循環(huán),因而,任何編譯系統(tǒng)都不做死循環(huán)檢驗B.有些編譯系統(tǒng)可以檢測出死循環(huán)C.死循環(huán)屬于語法錯誤,既然編譯系統(tǒng)能檢查各種語法錯誤,當(dāng)然也應(yīng)該能檢查出死循環(huán)D.死循環(huán)與多進程中出現(xiàn)的“死鎖”差不多,而死鎖是可以檢測的,因而,死循環(huán)也可以檢測的.在C++程序中,表達式23|2八5的值是()A.23B.1C.32D.18.在C++程序中,判斷a等于0或b等于0或c等于0的正確的條件表達式是()!((a!=0)||(b!=0)||(c!=0))!((a!=0)&&(b!=0)&&(c!=0))!(a==0&&b==0)||(c!=0)(a=0)&&(b=0)&&(c=0)地面上有標號為A、B、C的3根細柱,在A柱上放有10個直徑相同中間有孔的圓盤,從上到下依次編號為1,2,3,……,將A柱上的部分盤子經(jīng)過B柱移入C柱,也可以在B柱上暫存。如果B柱上的操作記錄為:“進,進,出,進,進,出,出,進,進,出,進,出,出”。那么,在C柱上,從下到上的盤子的編號為()。A.243657 B.241257C.243176 D.243675與十進制數(shù)1770對應(yīng)的八進制數(shù)是()。A.3350B.3351C.3352D.3540設(shè)A=B=true,C=D=false,以下邏輯運算表達式值為假的有()。A.(-AAB)V(CADVA)B.-(((AAB)VC)AD)C.AA(BVCVD)VDD.(AA(DVC))AB(2070)16+(34)8的結(jié)果是()。A.(8332)10B.(208A)16C.(100000000110)2D.(20212)8已知7個結(jié)點的二叉樹的先根遍歷是1245637(數(shù)字為結(jié)點的編號,以下同),中根遍歷是4265173,則該二叉樹的后根遍歷是()A.4652731B.4652137C.4231547D.4653172二.問題求解(共2題,每題5分,共計10分)1.(子集劃分)將n個數(shù){1,2,…,n}劃分成r個子集。每個數(shù)都恰好屬于一個子集,任何兩個不同的子集沒有共同的數(shù),也沒有空集。將不同劃分方法的總數(shù)記為S(n,r)。例如,S(4,2)=7,這7種不同的劃分方法依次為{(1),(234)},{(2),(134)},{(3),(124)},{(4),(123)},{(12),(34)},{(13),(24)},{(14),(23)}。當(dāng)n=6,r=3時,S(6,3)二(提示:先固定一個數(shù),對于其余的5個數(shù)考慮S(5,3)與S(5,2),再分這兩種情況對原固定的數(shù)進行分析)。2.(最短路線)某城市的街道是一個很規(guī)整的矩形網(wǎng)格(見下圖),有7條南北向的縱街,5條東西向的橫街。現(xiàn)要從西南角的A走到東北角的B,最短的走法共有多少種?A三.閱讀程序?qū)懡Y(jié)果(共4題,每題8分,共計32分)1.#include<iostream.h>voidmain(){inti,p[5],a,b,c,x,y=20;for(i=0;i<=4;i++)cin>>p[i];a=(p[0]+p[1])+(p[2]+p[3]+p[4])/7;b=p[0]+p[1]/((p[2]+p[3])/p[4]);c=p[0]*p[1]/p[2];x=a+b-p[(p[3]+3)%4];if(x>10)y+=(b*100-a)/(p[p[4]%3]*5);elsey+=20+(b*100-c)/(p[p[4]%3]*5);cout<<x<<","<<y<<endl;}//注:本例中,給定的輸入數(shù)據(jù)可以避免分母為0或數(shù)組元素下標越界。輸入:66553輸出: 2.#include<iostream.h>voidfun(int*a,int*b){int*k;k=a;a=b;b=k;}voidmain(){inta=3,b=6,*x=&a,*y=&b;fun(x,y);cout<<a<<","<<b<<endl;}輸出: 3.#include<iostream.h>#include<iomanip.h>#include"math.h"voidmain(){inta1[51]={0};inti,j,t,t2,n=50;for(i=2;i<=sqrt(n);i++)if(a1[i]==0){t2=n/i;for(j=2;j<=t2;j++)a1[i*j]=1;}t=0;for(i=2;i<=n;i++)if(a1[i]==0){cout<<setw(4)<<i;t++;if(t%10==0)cout<<endl;}cout<<endl;}輸出: 4.#include<iostream.h>#include"ctype.h"voidexpand(chars1[],chars2[]){inti,j,a,b,c;j=0;for(i=0;(c=s1[i])!='\0';i++)if(c=='-'){a=s1[i-1];b=s1[i+1];if(isalpha(a)&&isalpha(b)||isdigit(a)&&isdigit(b))〃函數(shù)isalpha(a)用于判斷字符a是否為字母,isdigit(b)用于判斷字符b是否為數(shù)//字,如果是,返回1,否則返回0{j--;dos2[j++]=a++;while(tolower(a)<tolower(s1[i+1]));}elses2[j++]=c;}elses2[j++]=c;s2[j]='\0';}voidmain(){chars1[100],s2[300];cin>>s1;expand(s1,s2);cout<<s2<<endl;}輸入:wer2345d-h454-82qqq輸出: 四.完善程序(前4空,每空2.5分,后6空,每空3分,共28分)1.(求字符串的逆序)下面的程序的功能是輸入若干行字符串,每輸入一行,就按逆序輸出該行,最后鍵入-1終止程序。請將程序補充完整。#include<iostream.h>#include<string.h>intmaxline=200,kz;intreverse(chars[]){inti,j,t;for(i=0,j=strlen(s)-1;i<j;①,②){t=s[i];s[i]=s[j];s[j]=t;}return0;}voidmain(){charline[100];cout<<"continue?-1forend."<<endl;cin>>kz;while(③){cin>>line;④;cout<<line<<endl;cout<<"continue?-1forend."<<endl;cin>>kz;}}2.(棋盤覆蓋問題)在一個2kX2k個方格組成的棋盤中恰有一個方格與其他方格不同(圖中標記為-1的方格),稱之為特殊方格。現(xiàn)用L型(占3個小格)紙片覆蓋棋盤上除特殊方格的所有部分,各紙片不得重疊,于是,用到的紙片數(shù)恰好是(4k-1)/3。在下表給出的一個覆蓋方案中,k=2,相同的3個數(shù)字構(gòu)成一個紙片。下面給出的程序是用分治法設(shè)計的,將棋盤一分為四,依次處理左上角、右上角、左下角、右下角,遞歸進行。請將程序補充完整。22332-1134115#include<iostream.h>#include<iomanip.h>intboard[65][65],tile;//tile為紙片編號voidchessboard(inttr,inttc,intdr,intdc,intsize)//dr,dc依次為特殊方格的行、列號{intt,s;if(size==1);t=tile++;s=size/2;if(⑥)chessboard(tr,tc,dr,dc,s);else{board[tr+s-1][tc+s-1]=t;;}if(dr<tr+s&&dc>=tc+s)chessboard(tr,tc+s,dr,dc,s);else{board[tr+s-1][tc+s]=t;;}if(dr>=tr+s&&dc<tc+s)chessboard(tr+s,tc,dr,dc,s);else{board[tr+s][tc+s-1]=t;;}if(dr>=tr+s&&dc>=tc+s)chessboard(tr+s,tc+s,dr,dc,s);else{board[tr+s][tc+s]=t;;}}voidprt1(intb[][65],intn){inti,j;for(i=1;i<=n;i++){for(j=1;j<=n;j++)cout<<setw(3)<<b[i][j];cout<<endl;;}}voidmain(){intsize,dr,dc;cout<<"inputsize(4/8/16/64):"<<endl;cin>>size;cout<<"inputthepositionofspecialblock(x,y):"<<endl;cin>>dr>>dc;board[dr][dc]=-1;tile++;chessboard(1,1,dr,dc,size);prt1(board,size);}第十二屆全國青少年信息學(xué)奧林匹克聯(lián)賽初賽試題2006(普及組C++語言二小時完成)??全部試題答案均要求寫在答卷紙上,寫在試卷紙上一律無效??一、單項選擇題(共20題,每題1.5分,共計30分。每題有且僅有一個正確答案.)在下面各世界頂級的獎項中,為計算機科學(xué)與技術(shù)領(lǐng)域做出杰出貢獻的科學(xué)家設(shè)立的獎項是()。A.沃爾夫獎B.諾貝爾獎C.菲爾茲獎D.圖靈獎2.在下列各軟件中,不屬于NOIP競賽(復(fù)賽)推薦使用的語言環(huán)境有()。A.gcc/g++B.TurboPascalC.RHIDED.freepascal以下斷電之后仍能保存數(shù)據(jù)的有()。A.寄存器B.ROMC.RAMD.高速緩存Linux是一種()。A.繪圖軟件B.程序設(shè)計語言C.操作系統(tǒng)D.網(wǎng)絡(luò)瀏覽器CPU是()的簡稱。A.硬盤B.中央處理器C.高級程序語言D.核心寄存器在計算機中,防火墻的作用是()。A.防止火災(zāi)蔓延B.防止網(wǎng)絡(luò)攻擊C.防止計算機死機D.防止使用者誤刪除數(shù)據(jù)在下列關(guān)于計算機語言的說法中,不正確的是()。Pascal和C都是編譯執(zhí)行的高級語言高級語言程序比匯編語言程序更容易從一種計算機移植到另一種計算機上C++是歷史上的第一個支持面向?qū)ο蟮挠嬎銠C語言D.與匯編語言相比,高級語言程序更容易閱讀.在下列關(guān)于計算機算法的說法中,不正確的是()。A.一個正確的算法至少要有一個輸入B.算法的改進,在很大程度上推動了計算機科學(xué)與技術(shù)的進步C.判斷一個算法的好壞的主要標準是算法的時間復(fù)雜性與空間復(fù)雜性D.目前仍然存在許多涉及到國計民生的重大課題,還沒有找到能夠在計算機上實施的有效算法.在下列各種排序算法中,不是以“比較”作為主要操作的算法是()。A.選擇排序B.冒泡排序C.插入排序D.基數(shù)排序.在編程時(使用任一種高級語言,不一定是C++),如果需要從磁盤文件中輸入一個很大的二維數(shù)組(例如1000*1000的double型數(shù)組),按行讀(即外層循環(huán)是關(guān)于行的)與按列讀(即外層循環(huán)是關(guān)于列的)相比,在輸入效率上()。A.沒有區(qū)別B.按行讀的方式要高一些C.按列讀的方式要高一些D.取決于數(shù)組的存儲方式。.在C++中,表達式2廠2的值是()A.441B.42C.23D.24.在C++中,判斷a不等于0且b不等于0的正確的條件表達式是()A.!a==0||!b==0B.!((a==0)&&(b==0))C.!(a==0&&b==0)D.a&&b.某個車站呈狹長形,寬度只能容下一臺車,并且只有一個出入口。已知某時刻該車站狀態(tài)為空,從這一時刻開始的出入記錄為:“進,出,進,進,進,出,出,進,進,進,出,出”。假設(shè)車輛入站的順序為1,2,3,……,則車輛出站的順序為()。A.1,2,3,4,5B.1,2,4,5,7C.1,4,3,7,6D.1,4,3,7,2.高度為n的均衡的二叉樹是指:如果去掉葉結(jié)點及相應(yīng)的樹枝,它應(yīng)該是高度為n-1的滿二叉樹。在這里,樹高等于葉結(jié)點的最大深度,根結(jié)點的深度為0,如果某個均衡的二叉樹共有2381個結(jié)點,則該樹的樹高為()。A.10B.11C.12D.13.與十進制數(shù)1770對應(yīng)的八進制數(shù)是()。A.3350B.3351C.3352D.3540.將5個數(shù)的序列排序,不論原先的順序如何,最少都可以通過()次比較,完成從小到大的排序。A.6B.7C.8D.9.設(shè)A=B=D=true,C=false,以下邏輯運算表達式值為真的有()。A.(AAB)V(CAD)B.((AVBVD)AC)C.AA(BVCVD)D.(AABAC)VD.(2010)+(32)的結(jié)果是()。A.(8234) B.(202B) C.(20056) D.(100000000110)16101619.設(shè)棧S的初始狀態(tài)為空,元素a,b,c,d,e依次入棧,以下出棧序列不可能出現(xiàn)的有()。A.a,b,c,e,d B.b,c,a,e,dC.a,e,c,b,d D.d,c,e,b,a20.已知6個結(jié)點的二叉樹的先根遍歷是123456(數(shù)字為結(jié)點的編號,以下同),后根遍歷是325641,則該二叉樹的可能的中根遍歷是()A.321465B.321546C.213546D.231465二.問題求解(共2題,每題5分,共計10分)1.(尋找假幣)現(xiàn)有80枚硬幣,其中有一枚是假幣,其重量稍輕,所有真幣的重量都相同,如果使用不帶砝碼的天平稱重,最少需要稱幾次,就可以找出假幣?你還要指出第1次的稱重方法。請寫出你的結(jié)果: 。2.(取石子游戲)現(xiàn)有5堆石子,石子數(shù)依次為3,5,7,19,50,甲乙兩人輪流從任一堆中任取(每次只能取自一堆,不能不取),取最后一顆石子的一方獲勝。甲先取,問甲有沒有獲勝策略(即無論乙怎樣取,甲只要不失誤,都能獲勝)?如果有,甲第一步應(yīng)該在哪一堆里取多少?請寫出你的結(jié)果: 。三.閱讀程序?qū)懡Y(jié)果(共4題,每題8分,共計32分)#include<iostream.h>voidmain(){inti,u[4],a,b,x,y=10;for(i=0;i<=3;i++)cin>>u[i];a=(u[0]+u[1]+u[2]+u[3])/7;b=u[0]/((u[1]-u[2])/u[3]);x=(u[0]+a+2)-u[(u[3]+3)%4];if(x>10)y+=(b*100-u[3])/(u[u[0]%3]*5);elsey+=20+(b*100-u[3])/(u[u[0]%3]*5);cout<<x<<","<<y<<endl;}//注:本例中,給定的輸入數(shù)據(jù)可以避免分母為0或下標越界。輸入:9394輸出: #include<iostream.h>voidmain(){inti,j,m[]={2,3,5,7,13};longt;for(i=0;i<=4;i++){t=1;for(j=1;j<m[i];j++)t*=2;cout<<(t*2-1)*t<<"";}cout<<endl;}輸出: #include"iostream.h"#defineN7intfun(chars[],chara,intn){intj;j=n;while(a<s[j]&&j>0)j--;returnj;}voidmain(){chars[N+1];intk;for(k=1;k<=N;k++)s[k]='A'+2*k+1;cout<<fun(s,'M',N)<<endl;}輸出: #include<iostream.h>#include<iomanip.h>voiddigit(longn,longm){if(m>0)cout<<setw(2)<<n%10;if(m>1)digit(n/10,m/10);cout<<setw(2)<<n%10;}voidmain(){longx,x2;cout<<"Inputanumber:"<<endl;cin>>x;x2=1;while(x2<x)x2*=10;x2/=10;digit(x,x2);cout<<endl;}輸入:9734526輸出: 四.完善程序(前4空,每空2.5分,后6空,每空3分,共28分)1.(全排列)下面程序的功能是利用遞歸方法生成從1到n(n<10)的9個數(shù)的全部可能的排列(不一定按升序輸出)。例如,輸入3,則應(yīng)該輸出(每行輸出5個排列):123132213231321312程序:#include<iostream.h>#include<iomanip.h>intn,a[10];//a[1],a[2],…,a[n]構(gòu)成n個數(shù)的一個排列l(wèi)ongcount=0;//變量count記錄不同排列的個數(shù),這里用于控制換行voidperm(intk){intj,p,t;if(①){count++;for(p=1;p<=n;p++)cout<<setw(1)<<a[p];cout<<"";if(②)cout<<endl;return;}for(j=k;j<=n;j++){t=a[k];a[k]=a[j];a[j]=t;③;t=a[k];④;}}voidmain(){inti;cout<<"Entryn:"<<endl;cin>>n;for(i=1;i<=n;i++)a[i]=i;⑤;}2.由鍵盤輸入一個奇數(shù)P(P<100,000,000),其個位數(shù)字不是5,求一個整數(shù)S,使PXS=1111...1(在給定的條件下,解S必存在)。要求在屏幕上依次輸出以下結(jié)果:(1)S的全部數(shù)字。除最后一行外,每行輸出50位數(shù)字。(2)乘積的數(shù)字位數(shù)。例1:輸入p=13,由于13*8547=111111,則應(yīng)輸出(1)8547,(2)6例2:輸入p=147,則輸出結(jié)果應(yīng)為(1)755857898715041572184429327286470143613(2)42,即等式的右端有42個1。程序:#include<iostream.h>#include<iomanip.h>voidmain(){longp,a,b,c,t,n;while(1){cout<<"輸入p,最后一位為1或3或7或9:"<<endl;cin>>p;if((p%2!=0)&&(p%5!=0))//如果輸入的數(shù)符合要求,結(jié)束循環(huán)⑥;}a=0;n=0;while(a<p){a=a*10+1;n++;//變量a存放部分右端項,n為右端項的位數(shù)}t=0;do{b=a/p;cout<<setw(1)<<b;t++;if(⑦)cout<<endl;c=⑧;a=⑨;n++;}while(c>0);cout<<endl<<"n="<<⑩<<endl;}第十一屆全國青少年信息學(xué)奧林匹克聯(lián)賽初賽試題2005(普及組C語言二小時完成)??全部試題答案均要求寫在答卷紙上,寫在試卷紙上一律無效??一.選擇一個正確答案代碼(A/B/C/D/E),填入每題的括號內(nèi)(每題1.5分,共30分).在字符串“ababacbabcbdecced”中出現(xiàn)次數(shù)最多的字母出現(xiàn)了()次。A.6B.5C.4D.3E.2.設(shè)全集I={a,b,c,d,e,f,g,h}集合A={a,b,c,d,e,f}B={c,d,e},C={a,d},那么集合AnBn?C為()。A.{c,e}B.{d,e}C.{e}D.{c,d,e}E.{d,f}.和十進制數(shù)23的值相等的二進制數(shù)是()。A.10110B.11011C.11011D.10111E.10011.完全二叉樹的結(jié)點個數(shù)為11,則它的葉結(jié)點個數(shù)為()。A.4B.3C.5D.2E.65.平面上有五個點A(5,3),B⑶5),C(2,1),D(3,3),E(5,1)。以這五點作為完全圖G的頂點,每兩點之間的直線距離是圖G中對應(yīng)邊的權(quán)值。以下哪條邊不是圖G的最小生成樹中的邊()。A.ADB.BDC.CDD.DEE.EAIntel的首顆16位處理器是()。A.8088B.80386C.80486D.8086E.Pentium處理器A每秒處理的指令數(shù)是處理器B的2倍。某一特定程序P分別編譯為處理器人和處理器B的指令,編譯結(jié)果處理器A的指令數(shù)是處理器B的4倍。已知程序P在處理器A上執(zhí)行需要1個小時,那么在輸入相同的情況下,程序P在處理器B上執(zhí)行需要()小時。A.4B.2C.1D.1/2E.1/4以下哪個不是計算機的輸出設(shè)備()。A.音箱B.顯示器C.打印機D.掃描儀E.繪圖儀下列活動中不屬于信息學(xué)奧賽的系列活動的是()。A.NOIPB.NOIC.IOID.冬令營E.程序員等級考試以下斷電之后仍能保存數(shù)據(jù)的是()。A.硬盤B.寄存器C.顯存D.內(nèi)存E.高速緩存以下哪個軟件不是即時通信軟件()。A.網(wǎng)易泡泡B.MSNMessengerC.GoogleTalkD.3DSMaxE.QQ下列關(guān)于高級語言的說法錯誤的是()。Fortran是歷史上的第一個面向科學(xué)計算的高級語言Pascal和C都是編譯執(zhí)行的高級語言C++是歷史上的第一個支持面向?qū)ο蟮恼Z言編譯器將高級語言程序轉(zhuǎn)變?yōu)槟繕舜a高級語言程序比匯編語言程序更容易從一種計算機移植到另一種計算機上下列設(shè)備不具有計算功能的是()。A.筆記本電腦B.掌上電腦C.智能手機D.電子計算器E.液晶顯示器常見的郵件傳輸服務(wù)器使用()協(xié)議接收郵件。A.HTTPB.SMTPC.TCPD.FTPE.POP3下列瀏覽器中,由微軟公司開發(fā)的瀏覽器是()。A.InternetExploreB.NetscapeC.OperaD.FirefoxE.Mozilla一位藝術(shù)史學(xué)家有20000幅真彩色圖像,每幅圖像約占3M空間。如果將這些圖像以位圖形式保存在CD光盤上(一張CD光盤的容量按600M計算),大約需要()張CD光盤。A.1B.10C.100D.1000E.10000設(shè)A=true,B=false,C=false,D=true,以下邏輯運算表達式值為真的是()。A.(AAB)V(CAD)B.((AAB)VC)ADC.AA((BVC)AD)D.(AA(BVC))VDE.(AVB)A(CAD).(3725)8+(B)16的運算結(jié)果是()。A.(3736)8B.(2016)10C.(1111110000)2D.(3006)10E.(7B0)16.二叉樹T的寬度優(yōu)先遍歷序列為ABCDEFGH1,已知人是C的父結(jié)點,D是G的父結(jié)點,F(xiàn)是I的父結(jié)點,樹中所有結(jié)點的最大深度為3(根結(jié)點深度設(shè)為0),可知F的父結(jié)點是()。A.無法確定B.BC.CD.DE.E.設(shè)棧S的初始狀態(tài)為空,元素a,b,c,d,e,f,g依次入棧,以下出棧序列不可能出現(xiàn)的是()。A. a,b,c,e, d, f,gB. b, c,a,f, e,g,dC.a,e,d,c,b,f,gD. d,c,f,e, b, a,gE. g, e,f,d, c,b,a二.問題求解(請在空格處填上答案,每空5分,共10分)1. 將數(shù)組{32, 74, 25,53, 28, 43,86, 47}中的元素按從小到大的順序排列,每次可以交換任意兩個元素,最少需要交換次。2.有3個課外小組:物理組,化學(xué)組和生物組。今有張、王、李、趙、陳5名同學(xué),已知張、王為物理組成員,張、李、趙為化學(xué)組成員,李、趙、陳為生物組成員。如果要在3個小組中分別選出3位組長,一位同學(xué)最多只能擔(dān)任一個小組的組長,共有一種選擇方案。三.閱讀程序(共4題,每題8分,共計32分)#include<stdio.h>intmain(){inta,b;TOC\o"1-5"\h\zscanf(“%d”,&a);b=(a*(a*a))+1;if (b%3 == 0) b = b / 3;if (b%5 == 0) b = b / 5;if (b%7 == 0) b = b / 7;if (b%9 == 0) b = b / 9;if (b%11 == 0) b = b / 11;if (b%13 == 0) b = b / 13;if (b%15 == 0) b = b / 15;printf(“%d \n” , (100 *a-b)/2);return0;}輸入:10輸出: #include<stdio.h>intmain(){charstr[20]=“Today-is-terrible!”;inti;for(i=6;i<=10;i++)if(str[i]=='—')str[i-1]='x';for(i=12;i>=0;i--)if(str[i]==‘t’)str[i+1]=‘e’;printf(“%s\n”,str);return0;}輸出: #include<stdio.h>intmain(){inta,b,c,p,q,r[3];scanf(“%d%d%d”,&a,&b,&c);p=a/b/c;q=b—c+a+p;r[0]=a*p/q*q;r[1]=r[0]*(r[0]-300);if(3*q—p%3<=r[0]&&r[2]==r[2])r[1]=r[r[0]/p%2];elser[1]=q%p;printf(“%d\n”,r[0]-r[1]);return0;}輸入:10073輸出: #include<stdio.h>#include<string.h>intmain(){charstr[60];intlen,i,j,chr[26];charmmin='z';scanf("%s",str);len=strlen(str);for(i=len-1;i>=1;i--)if(str[i-1]<str[i])break;if(i==0){printf("Noresult!\n");return0;}for(j=0;j<i-1;j++)putchar(str[j]);memset(chr,0,sizeof(chr));for(j=i;j<len;j++){if(str[j]>str[i-1]&&str[j]<mmin)mmin=str[j];chr[str[j]-'a']++;}chr[mmin-'a']--;chr[str[i-1]-'a']++;putchar(mmin);for(i=0;i<26;i++)for(j=0;j<chr[i];j++)putchar(i+'a');putchar('\n');return0;}輸入:zzyzcccbbbaaa輸出: 四.完善程序(前4空,每空2分,后5空,每空4分,共28分)1.判斷質(zhì)數(shù)題目描述:給出一個正整數(shù),判斷這個數(shù)是否是質(zhì)數(shù)。輸入:一個正整數(shù)n(1WnW10000)。輸出:如果n是質(zhì)數(shù),輸出"YES”;否則,輸出"NO”。輸入樣例:10輸出樣例:NO程序:#include<stdio.h>intmain(){int①;scanf("%d",&n);if(n==2)puts(②);elseif(③||n%2==0)puts("NO");else{i=3;while(i*i<=n){if(④){puts("NO");return0;}i=i+2;}puts("YES");}return0;}2.木材加工題目描述:木材廠有一些原木,現(xiàn)在想把這些木頭切割成一些長度相同的小段木頭,需要得到的小段的數(shù)目是給定的。當(dāng)然,我們希望得到的小段越長越好,你的任務(wù)是計算能夠得到的小段木頭的最大長度。木頭長度的單位是cm。原木的長度都是正整數(shù),我們要求切割得到的小段木頭的長度也是正整數(shù)。輸入:第一行是兩個正整數(shù)N和K(1WNW10000,1WKW10000),N是原木的數(shù)目,K是需要得到的小段的數(shù)目。接下來的N行,每行有一個1到10000之間的正整數(shù),表示一根原木的長度。輸出:輸出能夠切割得到的小段的最大長度。如果連1cm長的小段都切不出來,輸出"0”。輸入樣例:37232124456輸出樣例:114程序:#include<stdio.h>intn,k,len[10000];intisok(intt){intnum=0,i;for(i=0;i<n;i++){if(num>=k)break;num=(1);}if(②)return1;elsereturn0;}intmain(){inti,left,right,mid;scanf("%d%d",&n,&k);right=0;for(i=0;i<n;i++){scanf("%d",&(len[i]));if(right<len[i])right=len[i];}right++;③;while(C£)<right){mid=(left+right)/2;if( ⑤ )right=mid;elseleft=mid;}printf("%d\n",left);return0;}第十屆全國青少年信息學(xué)奧林匹克聯(lián)賽初賽試題2004(普及組C語言二小時完成)??全部試題答案均要求寫在答卷紙上,寫在試卷紙上一律無效??一.選擇一個正確答案代碼(A/B/C/D/E),填入每題的括號內(nèi)(每題1.5分,共30分).美籍匈牙利數(shù)學(xué)家馮?諾依曼對計算機科學(xué)發(fā)展所做出的貢獻是()。提出理想計算機的數(shù)學(xué)模型,成為計算機科學(xué)的理論基礎(chǔ)。是世界上第一個編寫計算機程序的人。C.提出存儲程序工作原理,并設(shè)計出第一臺具有存儲程序功能的計算機EDVAC。采用集成電路作為計算機的主要功能部件。指出計算機性能將以每兩年翻一番的速度向前發(fā)展。.下列哪個不是CPU(中央處理單元)()。A.IntelItaniumB.DDRSDRAMC.AMDAthlon64D.AMDOpteronE.IBMPower5.下列網(wǎng)絡(luò)上常用的名字縮寫對應(yīng)的中文解釋錯誤的是()。WWW(WorldWideWeb):萬維網(wǎng)。URL(UniformResourceLocator):統(tǒng)一資源定位器。HTTP(HypertextTransferProtocol):超文本傳輸協(xié)議。FTP(FileTransferProtocol):快速傳輸協(xié)議。TCP(TransferControlProtocol):傳輸控制協(xié)議。.下面哪個部件對于個人桌面電腦的正常運行不是必需的()。A.CPUB.圖形卡(顯卡) C.光驅(qū)D.主板E.內(nèi)存.下列哪個軟件屬于操作系統(tǒng)軟件()。A.MicrosoftWordB.金山詞霸C.FoxmailD.WinRARE.RedHatLinux
.下列哪個不是計算機的存儲設(shè)備()。A.文件管理器B.內(nèi)存C.高速緩存D.硬盤E.U盤.下列說法中錯誤的是()。CPU的基本功能就是執(zhí)行指令。CPU訪問內(nèi)存的速度快于訪問高速緩存的速度。CPU的主頻是指CPU在1秒內(nèi)完成的指令周期數(shù)。D.在一臺計算機內(nèi)部,一個內(nèi)存地址編碼對應(yīng)唯一的一個內(nèi)存單元。E.數(shù)據(jù)總線的寬度決定了一次傳遞數(shù)據(jù)量的大小,是影響計算機性能的因素之一。.彩色顯示器所顯示的五彩斑斕的色彩,是由紅色、藍色和()色混合而成的。A.紫B.白C.黑D.綠E.橙.用靜電吸附墨粉后轉(zhuǎn)移到紙張上,是哪種輸出設(shè)備的工作方式()。A.針式打印機B.噴墨打印機C.激光打印機D.筆式繪圖儀E.噴墨繪圖儀.一臺計算機如果要利用電話線上網(wǎng),就必須配置能夠?qū)?shù)字信號和模擬信號進行相互轉(zhuǎn)換的設(shè)備,這種設(shè)備是()。A.調(diào)制解調(diào)器 B.路由器C.網(wǎng)卡D.網(wǎng)關(guān)E.網(wǎng)橋.下列哪個不是數(shù)據(jù)庫軟件的名稱()。A.MySQLB.SQLServerC.OracleD.金山影霸E.Foxpro.下列哪個程序設(shè)計語言不支持面向?qū)ο蟪绦蛟O(shè)計方法()。A.C++B.ObjectPascalC.CD.SmalltalkE.Java.由3個a,1個b和2個c構(gòu)成的所有字符串中,包含子串“abc”的共有()個。A.20B.8C.16D.12E.24.某個車站呈狹長形,寬度只能容下一臺車,并且只有一個出入口。已知某時刻該車站狀態(tài)為空,從這一時刻開始的出入記錄為:“進,出,進,進,出,進,進,進,出,出,進,出”。假設(shè)車輛入站的順序為1,2,3,……,則車輛出站的順序為()。A.1,2,3,4,5B.1,2,4,5,7 C.1,3,5,4,6 D.1,3,5,6,7 E.1,3,6,5,7.二叉樹T,已知其前序遍歷序列為1243576,中序遍歷序列為4215736,則其后序遍歷序列為()。A.4257631 B.4275631 C.4275361 D.4723561 E.4526371.滿二叉樹的葉結(jié)點個數(shù)為N,則它的結(jié)點總數(shù)為()。A.NB.2*N C.2*N1 D.2*N+1E.2n1.十進制數(shù)2004等值于八進制數(shù)()。A.3077B.3724C.2766D.4002E.3755.(2004)10+(32)16的結(jié)果是()。A.(2036)10B.(2054)16C.(4006)10D.(100000000110)2E.(2036)1
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國人口遷移課件
- 《GB 10080-2001空調(diào)用通風(fēng)機安全要求》(2025版)深度解析
- 廣告合作協(xié)議合同
- (二模)太原市2025年高三年級模擬考試(二)地理試卷(含答案 )
- 嚴明紀律班會課件
- 合同風(fēng)險管理與應(yīng)對策略培訓(xùn)班
- 荒山開發(fā)合作合同書樣本
- 短期演員聘請合同2025
- 肇慶市實驗中學(xué)高三生物三四五高效課堂教學(xué)設(shè)計:細胞的衰老、凋亡、癌變
- 江蘇省無錫市青陽初級中學(xué)2025年初三第三次調(diào)查研究考試化學(xué)試題含解析
- 水池蓄水試驗方案-20220413162528
- 【MOOC】中外鐵路文化之旅-華東交通大學(xué) 中國大學(xué)慕課MOOC答案
- 危險化學(xué)品倉庫施工方案
- GB/T 44751-2024精細陶瓷滾動軸承球及滾子用氮化硅材料
- 輔警法律知識培訓(xùn)課件
- 2024年8月CCAA注冊審核員OHSMS職業(yè)健康安全管理體系基礎(chǔ)知識考試題目含解析
- 《工程建設(shè)標準強制性條文》(水利工程部分)
- 后所村城中村改造建設(shè)項目節(jié)能評估報告
- 中小學(xué)班主任工作指南
- DB35∕T 2174-2024 改良酸性土壤專用有機肥料通 用技術(shù)要求
- 北師大版數(shù)學(xué)五年級下冊《確定位置》課件教學(xué)課件
評論
0/150
提交評論