第一篇:2001年度程序員級答案
2001年度程序員級答案
上午答案
(1)A(6)C(11)C(2)C(7)D(12)A(3)C(8)B(13)B(4)A(9)B(14)D(5)B(10)D(15)B(16)B(17)C(18)A(21)A(22)D(23)A(26)B(27)A(28)C(31)D(32)C(33)B(36)A(37)C(38)D(41)D(42)B(43)A(46)C(47)C(48)D(51)C(52)A(53)C(56)C(57)A(58)D(61)D(62)A(63)D(66)D(67)C(68)B(71)D(72)A
(73)B
下午答案
試題一(1)*s == *t(2)*s-*t(3)a[row][col] > max(4)row == 0(5)max < min 試題三
(1)siz = fsiz(2)fsiz-siz(3)ftell(fin)(4)fin,inp->offset, SEEK_SET(5)feesk(fin ,offset, SEEK_SET)試題五(1)n<*d
(19)B(20)D(24)C(25)B(29)B(30)C(34)C(35)D(39)A(40)B(44)C(45)D(49)D(50)A(54)C(55)D(59)B(60)C(64)C(65)B(69)A(70)C(74)D
(75)B
試題二
(1)q->ncxt = *p(2)q
(3)&u ,p->val
(4)p!= NULL;p = p->next(5)p = u 試題四(1)p->bpt(2)p->bpt = q(3)p->ch!= color(4)eount(p-bpt,len-c,-1)
(5)p = p->fpt
(2)n-*d ,m-1(3)pd+1
(4)r+l(5)d+1 ,c-1
第二篇:2001高級程序員級下午試卷及答案
2001高級程序員級下午試卷及答案
試題一
閱讀下列說明和流程圖,回答問題1至問題3,把解答填入答題紙的對應欄內。[說明] 某計算機廠生產多種型號的計算機,通過分布在世界各地的銷售點銷售,銷售點應在收到計算機商品后的規定時間內把貨款匯給該計算機廠。
流程圖 1 描述了該廠發貨、收款、催款的處理過程。其中商品文件、銷售點文件、發貨文件和收款文件的記錄格式如下: 商品文件 = 商品代號 + 計算機規格名稱 + 單價
銷售點文件 = 銷售點代號 + 銷售點名稱 + 地址
發貨文件 = 發貨單號 + 發出日期 + 銷售點代號 + 商品代號 + 數量 + 金額
收款文件 = 收款單號 + 收款日期 + 銷售點代號 + 商品代號 + 數量 + 金額 + 發貨單號 在流程圖中,處理 1~處理 3 把當天的發貨單合并到發貨文件。處理 4~處理 6 把當天的收款單合并到收款文件。每天在處理 3 和處理 5 完成之后,由處理 7 在發貨文件中當天已收款的記錄上加上已收款標記。處理 8 在月末執行一次,它有三個功能: ①匯總輸出本月發貨清單;②刪除發貨文件中已收款的所有記錄,形成一個新的發貨文件,作為下月初處理時的初始文件 ③產生催款通知單,以便對那些一個月以前已發貨但至今仍未收到貨款的銷售點催款。[問題1] 指出流程圖 l 中應在哪幾個處理框中檢查發貨單和收款單的錯誤,并分別說明它們各能指出什么錯誤。
[問題2] 如果把流程圖 1 中從日收款分類文件到處理 7 的連線改成從日收款文件到處理 7 的連線,則有什么缺點,理由是什么? [問題3] 處理 9 每月末執行一次如流程圖所示,利用收款文件產生月收款報告并更新收款文件。要求指出它對收款文件做什么更新操作。
試題二
閱讀下列說明和流程圖,回答問題 1 至問題 3 ,把解答填入答題紙的對應欄內。[說明] 某考務處理系統具有以下功能: 1.輸入報名單;2.自動編制準考證號;3.輸出準考證;4.輸入成績清單;5.輸出成績通知單;6.輸出成績分布表;7.輸入合格標準、輸出錄取通知單;8.試題難度分析,并輸出試題難度分析表。
這里給出了實現上述要求的部分不完整的數據流圖,其中部分數據流的組成如下所示: 報名單 = 報名號 + 姓名 + 通信地址
考生名冊 = 報名號 + 準考證號 + 姓名 + 通信地址
成績冊 = 準考證號 + { 課程號 + 成績 }(其中{W}表示W重復多次)準考證 = 報名號 + 姓名 + 準考證號 [問題1] 指出 0 層圖中可以刪去的部分。[問題2] 在加工 1 子圖中將遺漏的數據流添加在答題紙上。[問題3] 加工 2 子圖分解成如圖所示的 4 個子加工及相關的文件(即數據存儲)。試在此基礎上將相關的DFD 成份添加在答題紙上,以完全該加工子圖。
[數據流圖] 頂層
試題三
在COMET型計算機上可以使用試卷上所附的 CASL 匯編語言。閱讀程序說明和 CASL 程序,將應填入__(n)__處的字句,寫在答題紙的對應欄內。
[程序3說明] 子程序 DEHZ 用來對 HZ 編碼的字串做解碼處理。
HZ 編碼是海外華人創造的一種將含有高位為 1 的漢字雙字節字串轉換成易于在網絡中傳輸的ASCII 字符串的變換方式。編碼過程中,被轉換字符串中的原漢字子字符串各字節高位作清零處理,使之成為 ASCII 子字符串,并在其前后兩端分別添加 ~{ 和 ~} 作為標記;而對于原 ASCII 子字符串,則將其中的 ~ 改寫為 ~~,其余字符不變。DEHZ 解碼子程序則是 HZ 編碼的復原過程。復原 ASCII 子字符串過程中遇有 ~~ 字符則改寫為一個 ~ ,遇有 ~{ 則將其后直至 ~} 標記前的各字節高位置1,復原為漢字子字符串,同時刪除其前后標記。~的后續字符不屬于以上情況均作為錯誤處理。
調用該子程序時, GR1 存放原始字符串首地址, GR2 存放還原后的目標字符串首地址。工作寄存器 GR3 用作處理漢字子字符串的識別標志,進入子程序時應初始化為處理 ASCII 子字符串。程序按照 CASL 語言的標準約定,字符串的每個字符只占用一個存儲字的低八位。原始字符串和目標字符串均以 0 作為結束標志。
[程序3] START DEHZ PUSH 0,GR3 PUSH 0,GR2 PUSH 0,GR1 LEA GR3,0 LOOP __(1)__ CPA GR0,MARK0 JNZ GOON LEA GR1,1,GR1 LD GR0,0,GR1 CPA GR0,MARK0 __(2)__ CPA GR0,MARK1,GR3 JNZ ERROR __(3)__ LEA GR1,1,GR1 JMP LOOP ERROR OUT ERS1R,ERLEN JMP EXIT GOON __(4)__ ST GR0,0,GR2 LEA GR2,1,GR2 LEA GR1,1,GR1 CPA GR0,VO __(5)__ EXIT P0P GR1 P0P GR2 P0P GR3 RET V1 DC 1 V0 DC O DC #0080 MARK0 DC '~ ' MARK1 DC '{ }' ERSTR DC 'ERROR!' ERLEN DC 6 END 試題四
閱讀下列程序說明和C代碼,將應填入__(n)__處的字句寫在答題紙的對應欄內。[程序4說明] 設 M 叉樹采用列表法表示,即每棵子樹對應一個列表,列表的結構為:子樹根結點的值部分(設為一個字符)和用“()”,括起來的各子樹的列表(如有子樹的話),各子列表間用“,”,分隔。例如下面的三叉樹可用列表 a(b(c,d),e,f(g,h,i))表示。
本程序輸入列表,生成一棵 M 叉樹,并由 M 叉樹輸出列表。假定輸入無錯誤。[程序4] #include〈stdio.h〉 #include〈stdlib.h〉 #define M 3 typedef struct node{ char val;struct node *subTree[M];} NODE;char buf[255] ,*str = buf NODE *d = NULL NODE *mackTree()/*由列表生成M叉樹*/ { int k;NODE *s;s = __(1)__ s-> val = *str++;for(k = 0;k < M;k++)s-> subTree[k] = NULL;if(*str='('){ k = 0;do { str++;s-> subTree[k] = __(2)__;if(*str == ')'){ str++;break;} k = k+l;} while(__(3)__);} return s;} void walkTree(NODE *t)/*由 M 叉樹輸出列表*/ { int i;if t!= NULL){ __(4)__ if(t-> subTree[0] == NULL)return;putchar('(');for(i = 0;i < m;i++){ __(5)__ if(i!= M-l && t-> subTree[i+l]!= NULL)putchar(', ');} putchar(')');} }
void main(){ printf(“Enter exp:”);scanf(“%S” , str);d = makeTree();walkTree(d);putchar('n');}
試題五
閱讀下列程序說明和C代碼,將應填入__(n)__處的字句寫在答題紙的對應欄內。[程序5說明] 著名的四色定理指出任何平面區域圖均可用四種顏色著色,使相鄰區域著不同的顏色。本程序對給定的區域圖找出所有可能的不超過四種顏色的著色方案。程序中用 1~4 表示四種顏色。要著色的 N 個區域用 0~N一1編號,區域相鄰關系用 adj[][] 矩陣表示,矩陣的 i 行 j 列的元素為 1 ,表示區域 i 與區域 j 相鄰;矩陣的 i 行 j 列的元素為 0 ,表示區域 i 與區域 j 不相鄰。數組 color[] 用來存儲著色結果, color[i] 的值為區域 i 所著顏色。
【程序5】
#include〈stdio.h〉 #define N 10 void output(int color[])/*輸出一種著色方案*/ { int i;for(i = 0;i < N;i++)printf(“%4d” , color[i]);printf(“n”);} int back(int *ip ,int color[])/*回溯*/ { int c = 4;while(c == 4){ if(*ip <= 0)return 0;--(*ip);c = __(1)__;color[*ip] =-1;} return c;} /*檢查區域 i ,對 c 種顏色的可用性*/ int color0k(int i , int c , int[][N] , int color[ ] } { int j;for(j = 0;j < i;j++ } if(__(2)__)return 0;return 1;}
/*為區域i選一種可著的顏色*/ int select(int i ,int c ,int adj[][N] , int color[ ]){ int k;for(k = c;k <= 4;k++)if(colorOK(__(2)__))return k;return 0;} int coloring(int adj[][N])/*尋找各種著色方案*/ { int color[N] , i , c , cnt;for(i = 0;i < N;i++)color[i] =-1;i = c = 0;cnt = 0;while(1){ if((c = __(4)__)== 0){ c = back(&i , color);if(c == 0)return cnt;} else { __(5)__;i++;if(i == N){ output(color);++cnt;c = back(&i , color);} e1se c = 0;} } } void main(){ int adj[N][N] = { {0,1,0,1,1,1,1,1,1,1}, {1,0,1,1,0,1,1,1,1,0}, {0,1,0,1,0,1,1,0,1,1}, {1,1,1,0,1,1,0,0,1,1}, {1,0,0,1,0,1,0,0,0,0}, {1,1,1,1,1,0,1,0,0,1}, {1,1,1,0,0,1,0,0,1,0}, {1,1,0,0,0,0,0,0,1,1}, {1,1,1,1,0,0,1,1,0,1}, {1,0,1,1,0,1,0,1,1,0} };printf(“共有%d組解.n”,coloring(adj));}
下午答案
試題一
[問題1)處理l和處理4:發貨單和受款單中的非法銷售代號、商品代號; 數量和金額非正整;單位I*數量,i金額;輸入中的非法字符; 處理7:重復付款和找不到與收款單位相對應發貨單; [問題2] 因文件分類,處理時要增加訪問外存的時間或需大量內存,從而降低了處理速度 [問題3] 刪除收款文件中的所有記錄 試題二
[問題1]成績文件可刪 試題二
(1)LD GR0,0GR1(2)JZE GOON(3)EOR GR3,V1(4)OR GR0,V0, GR3(5)JNZ LOOP 試題四
(1)(NODE*)malloc(sizeof(NODE))(2)makeTree()(3)*str == ','(4)putchar(t->val)(5)walkTree(t->subTree[i])試題五(1)color[*ip](2)adj[i][j]!= 0 && color[j] == c(3)i,k,adj,color(4)select(i,c+l,adj,color)(5)color[i]=c
第三篇:2001高級程序員級上午試題
2001高級程序員級上午試題
●一棵查找二叉樹,其結點A、B、C、D、E、F依次存放在一個起始地址為 n(假定地址以字節為單位順序編號)的連續區域中,每個結點占4個字節:前二個字節存放結點值,后二個字節依次放左指針、右指針。
若該查找二叉樹的根結點為 E ,則它的一種可能的前序遍歷為__(1)__ ,相應的層次遍歷為__(2)__。在以上兩種遍歷情況下,結點C的左指針Lc的存放地址為__(3)__,Lc的內容為__(4)__。結點A的右指針RA的內容為__(5)__。
(1):A.EAFCBD B.EFACDB C.EABCFD D.EACBDF(2):A.EAFCBD B.EFACDB C.EABCFD D.EACBDF(3):A.n+9 B.n+10 C.n+12 D.n+13(4):A.n+4 B.n+8 C.n+12 D.n+16(5):A.n+4 B.n+8 C.n+12 D.n+16
●用來輔助軟件開發、運行、維護、管理、支持等過程中的活動的軟件稱為軟件開發工具,通常也稱為__(6)__工具。
(6):A.CAD B.CAI C.CAM D.CASE
●使用軟件開發工具有助于提高軟件的開發、維護和管理的效率。集成型軟件開發環境通常由工具集和環境集成機制組成。這種環境應具有__(7)__。環境集成機制主要有數據集成機制、控制集成機制和界面集成機制。
(7):A.開放性和可剪裁性 B.開放性和不可剪裁性 C.封閉性和可剪裁性 D.封閉性和不可剪裁性
●·數據集成機制為環境中的工具提供統一的__(8)__;控制集成機制為__(9)__提供支持。
界面集成機制使得環境中的所有工具具有__(10)__。
(8):A.數據類型 B.數據模式 C.數據接口規范 D.數據倉庫(9):A.使各工具具有統一的控制結構 B.備工具之間的通信、切換、調度和協同工作
C.使備工具具有統一的控制接口 D.各工具之間的同步開發(10):A.同一個界面 B.相同的圖標和圖標的含義 C.統一的界麗風格相操作方式 D.相同個數的窗口和菜單項
●遞歸算法的執行過程,一般來說,可先后分成__(11)__和__(12)__兩個階段。
(11):A.試探 B.遞推 C.枚舉 D.分析(12):A.回溯 B.回歸 C.返回 D.合成●若一個問題的求解既可以用遞歸算法,也可以用遞推算法,則往往用__(13)__算法,因為__(14)__。(13):A.先遞歸后遞推 B.先遞推后遞歸 C.遞歸 D.遞推(14):A.遞推的效率比遞歸高 B.遞歸宜于問題分解 C.遞歸的效率比遞推高 D.遞推宜于問題分解
●貪婪法是一種__(15)__的算法。
(15):A.不求最優,只求滿意 B.只求最優 C.求取全部可行解 D.求取全部最優解
●考察下列文法: G(VT ,VN ,E ,P)其中: VT = { + , * ,(,), i } VN = { E , T , F } E 是開始符號 P: E → E + T | T
T → T * F | F
F →(E)| i
F*F+T是該文法的一個句型,其中 ,__(16)__是句柄 ,__(17)__是素短語。__(18)__是該句型的直接推導,__(19)__是該句型的最左推導。__(20)__是該文法的一個句子。
(16):A.F B.F*F C.F+T D.F*F+,T(17):A.F B.F*F C.F+T D.F*F+T(18):A.F*F+i B.F*F+T*F C.F*F+F*F D.i*i+T(19):A.F*F+T*F B.F*F+T C.F*(E)+T D.(E)*F+T(20):A.T+(i+i)B.i+(i+F)C.i D.(E)
●軟件開發模型用于指導軟件的開發。演化模型是在快速開發一個__(21)__的基礎上,逐步演化成最終的軟件。
(21):A.模塊 B.運行平臺 C.原型 D.主程序
●螺旋模型綜合了__(22)__的優點,并增加了__(23)__。
(22):A.瀑布模型和演化模型 B.瀑布模型和噴泉模型 C.演化模型和噴泉模型 D.原型和噴泉模型
(23):A.質量評價 B.進度控制 C.版本控制 D.風險分析
●噴泉模型描述的是面向__(24)__的開發過程,反映了該開發過程的__(25)__特征。
(24):A.數據流 B.數據結構 C.對象 D.構件(component)(25):A.迭代和有間隙 B.迭代和無間隙 C.無迭代和有間隙 D.無迭代和無間隙
●MIDI是一種數字音樂的國際標準,MIDI文件存儲的__(26)__。它的重要特色是__(27)__。
(26):A.不是樂譜而是波形 B.不是波形而是指令序列 C.不是指令序列而是波形 D.不是指令序列而是樂譜(27):A.占用的存儲空間少 B.樂曲的失真度少 C.讀寫速度快 D.修改方便
●MPEG是一種__(28)__,它能夠__(29)__。
(28):A.靜止圖像的存儲標準 B.音頻、視頻的壓縮標準 C.動態圖像的傳輸標準 D.圖形國家傳輸標準(29):A.快速讀寫 B.有高達200:1的壓縮比 C.無失真地傳輸視頻信號 D.提供大量基本模板
●MPEG-4相對于MPEG的以前版本的最大特點是__(30)__。
(30):A.更高的壓縮比 B.更多的基本圖形的模板 C.更強的交互能力 D.更快的運算速度
●關系數據庫設計理論主要包括三個方面內容,其中起核心作用的是__(31)__。
(31):A.范式 B.數據模式 C.數據依賴 D.范式和數據依賴
●在關系模型的完整性約束中,實體完整性規則是指關系中__(32)__。引用完整性規則要求__(33)__。
(32):A.不允許有主行 B.屬性值不允許為空 C.主鍵值不允許為空 D.外鍵值不允許為空(33):A.不允許引用不存在的元組 B.允許引用不存在的元組 C.不允許引用不存在的屬性 D.允許引用不存在的屬性
●設關系P和Q分別為2元和3元關系,則與關系代數表達式P的是__(30)__。
(34):A.σ1<2(P×Q)B.σ1<4(P×Q)C.σ1<2(PQ)D.σ1<4(P
Q)
Q等價●對于基本表 S(S#,NAME,SEX,BIRTEBAY)和 SC(S#,C#,GRADE),其中S#、NAME、SEX、BIRTHDAY、C#和GRADE分別表示學號、姓名、性別、生日、課程號和成績。
有一SQL語句: SELECT S# NAME FROM S WHERE S# NOT IN(SELECT S# FROM S WHERE C# = 'c102');其等價的關系代數表達式是__(35)__。(35):A.∏s#,name(σ
c#≠ 'c102'
(SSC))
c#= 'c102' B.∏s#,name(S)-∏s#,name(σ C.∏s#,name(S
σ
(SSC))
c# ≠ 'c102'
(SC))D.∏s#name(SSC)
●因爭用資源產生死鎖的必要條件是互斥、循環等待、不可搶占和__(36)__。對于緩沖池(大量緩沖區)的管理,采用生產者-消費者方式解決同步或互斥時,通常需要用__(37)__個信號量。
(36):A.請求與釋放 B.釋放與保持 C.釋放與阻塞 D.保持與等待。
(37):A.1 B.2 C.3 D.4
●虛存頁面調度算法有多種,__(38)__調度算法不是頁面調度算法。(38):A.后進先出 B.先進先出 C.最近最少使用 D.隨機選擇
●實存的存儲分配算法用來決定輸入的程序和數據放到主存中的位置,采用“總是把程序裝入主存中最大的空閑區域”的算法稱為__(39)__。
(39):A.最佳適應算法 B.最差適應算法 C.首次適應算法 D.循環首次適應算法
●在文件存儲設備管理中,有三類常用的空閑塊管理方法,即位圖向量法,空閑塊鏈表鏈接法和__(40)__。
(40):A.一級目錄法 B.多級自錄法 C.分區法 D.索引法
●用二進制加法器對二一十進制編碼的十進制數求和,當和的本位十進制數二一十進制編碼小于等于1001且向高位無進位時,__(41)__;當和小于等于100l且向高位有進位時,__(42)__;當和大于1001時,__(43)__。
(41)~(43):A.不需進行修正 B.需進行加6修正
C.需進行減6修正 D.進行加6或減6修正,需進一步判別
●微機用的系統,總線有多種,其中__(44)__是早期工業標準體系結構單總線的直接擴展,并向下與其兼容;__(45)__首先應用于奔騰機,數據線寬度已可為64位,并有數據緩沖能力。
(44)、(45):A.VESA B.SCSI C.EISA D.PCI
●被操作數的最高位移入“進位”,位,其余所有位接收其相鄰低位值,最低位移入0的操作是__(46)__指令。被操作數的最高位保持不變,其余所有位接收其相鄰高位值,最低位移到“進位“位中的操作是__(47)__指令。在程序執行過程中改變按程序計數器順序讀出指令的指令屬于__(48)__。相對尋址方式的實際地址是__(49)__。特權指令在多用戶、多任務的計算機系統中必不可少,它主要用于__(50)__。
(46)、(47):A.邏輯左移 B.算術左移 C.乘2運算 D.除2運算
(48):A.特權指令 B.傳送指令 C.輸入輸出指令 D.轉移指令
(49):A.程序計數器的內容加上指令中形式地址值 B.基值寄存器的內容加上指令中形式地址值
C.指令中形式地址中的內容 D.棧頂內容。(50):A.檢查用戶的權限 B.系統硬件自檢和配置 C.用戶寫匯編程序時調用 D.系統資源的分配和管理
●利用并行處理技術可以縮短計算機的處理時間,所謂并行性是指__(51)__。可以采用多種措施來提高計算機系統的并行性,它們可分成三類,即__(52)__。
提供專門用途的一類并行處理機(亦稱陣列處理機)以__(53)__方式工作,它適用于__(54)__。多處理機是目前較高性能計算機的基本結構,它的并行任務的派生是__(55)__。
(50):A.多道程序工作 B.多用戶工作
C.非單指令流單數據流方式工作 D.在同一時間完成兩種或兩種以上工作
(52):A.多處理機,多級存儲器和互連網絡 B.流水結構,高速緩存和精簡指令集
C.微指令,虛擬存儲和I/O通道 D.資源重復,資源共享和時間重疊。
(53):A.SISD B.SIMD C.MISD D.MB4D(54):A.事務處理 B.工業控制 C.矩陣運算 D.大量浮點計算(55):A.需要專門的指令來表示程序中并發關系和控制并發執行 B.靠指令本身就可以啟動多個處理單元并行工作 C.只執行沒有并發約束關系的程序
D.先并行執行,事后再用專門程序去解決并發約束
●發展容錯技術可提高計算機系統的可靠性。利用元件冗余可保證在局部有故障情況下系統的正常工作。帶有熱備份的系統稱為__(56)__系統。它是__(57)__,因此只要有一個子系統能正常工作,整個系統仍能正常工作。
當子系統只能處于正常工作和不工作兩種狀態時,我們可以采用圖 A 的并聯模型,若單個子系統的可靠性都為0.8時,圖示的三個子系統并聯后的系統可靠性為__(58)__。若子系統能處于正常和不正常狀態時,我們可以采用圖 B 所示的表決模型,若圖中有任何二個或三個子系統輸出相同時,則選擇該相同的輸出作為系統輸出,設單個子系統的可靠性為0.8時,整個系統的可靠性為__(59)__;若單個子系統的可靠性為0.5時,整個系統的可靠性為__(60)__。
[圖A] [圖B]
(56):A.并發 B.雙工 C.雙重 D.并行。
(57):A.兩子系統同時同步運行,當聯機子系統出錯時,它退出服務,由備份系統接替
B.備份系統處于電源開機狀態,一旦聯機子系統出錯時,立即切換到備份系統
C.兩子系統交替處于工作和自檢狀態,當發現一子系統出錯時,它不再交替到工作狀態
D.兩子系統并行工作,提高機器速度,一旦一個子系統出錯,放棄并行工作。
(58):A.0.9 B.O.94 C.O.992 D.O.996(59):A.0.882 B.O.896 C.O.925 D.O.94(60):A.0.5 B.O.54 C.O.62 D.O.65
●www.tmdps.cnt;for(i = 0;i < N;i++)color[i] =-1;i = c = 0;cnt = 0;while(1){ if((c = __(4)__)== 0){ c = back(&i , color);if(c == 0)return cnt;} else { __(5)__;i++;if(i == N){ output(color);++cnt;c = back(&i , color);} e1se c = 0;} } } void main(){ int adj[N][N] = { {0,1,0,1,1,1,1,1,1,1}, {1,0,1,1,0,1,1,1,1,0}, {0,1,0,1,0,1,1,0,1,1}, {1,1,1,0,1,1,0,0,1,1}, {1,0,0,1,0,1,0,0,0,0}, {1,1,1,1,1,0,1,0,0,1}, {1,1,1,0,0,1,0,0,1,0}, {1,1,0,0,0,0,0,0,1,1}, {1,1,1,1,0,0,1,1,0,1}, {1,0,1,1,0,1,0,1,1,0} };printf(“共有%d組解.n”,coloring(adj));}
2001高級程序員級答案
上午答案
(1)D(6)D(ll)B(16)A(21)C(26)B(31)C(36)D(41)A(46)A(51)D(56)C(61)A(66)D(71)B
(2)A(7)A(12)B(17)B(22)A(27)A(32)C(37)C(42)B(47)D(52)D(57)A(62)D(67)A(72)A
(3)B(8)C(13)D(18)B(23)D(28)B(33)A(38)A(43)B(48)D(53)B(58)C(63)B(68)B(73)D
(4)A(9)B(14)A(19)D(24)C(29)B(34)B(39)B(44)C(49)A(54)C(59)B(64)C(69)A(74)C
(5)B(10)C(15)A(20)C(25)B(30)C(35)B(40)D(45)D(50)D(55)A(60)A(65)B(70)B(75)D
下午答案 試題一
[問題1)處理l和處理4:發貨單和受款單中的非法銷售代號、商品代號;
數量和金額非正整;單位I*數量,i金額;輸入中的非法字符; 處理7:重復付款和找不到與收款單位相對應發貨單; [問題2] 因文件分類,處理時要增加訪問外存的時間或需大量內存,從而降低了處理速度 [問題3] 刪除收款文件中的所有記錄 試題二
[問題1]成績文件可刪 試題二
(1)LD GR0,0GR1(2)JZE GOON(3)EOR GR3,V1(4)OR GR0,V0, GR3(5)JNZ LOOP 試題四
(1)(NODE*)malloc(sizeof(NODE))(2)makeTree()(3)*str == ','(4)putchar(t->val)(5)walkTree(t->subTree[i])試題五
(1)color[*ip](2)adj[i][j]!= 0 && color[j] == c(3)i,k,adj,color(4)select(i,c+l,adj,color)(5)color[i]=c
第四篇:2001網絡程序員級上午試卷
2001網絡程序員級上午試卷
本試卷的試題中共有75個空格,需要全部解答,每個空格1分,滿分75分。每個空格對應一個序號,有A、B、C、D四個選項,請選擇一個最恰當的選項作為解答,在答題卡相應序號下填涂該選項。
●在ISO的OSI模型中,提供流量控制功能的層是B_;提供建立、維護和拆除端到端連接的層是__傳輸層_。為數據分組提供在網絡中路由功能的是__C__;傳輸層提供__A的數據傳送;為網絡層實體提供數據發送和接收功能和過程的是___B_。
(1):A.1、2、3層 B.2、3、4層 C.3、4、5層 D.4、5、6層
(2):A.物理層 B.數據鏈路層 C.會話層 D.傳輸層
(3):A.物理層 B.數據鏈路層 C.網絡層 D.傳輸層
(4):A.主機之間 B.網絡之間 C.數據鏈路之間 D.物理鍵路之間
(5):A.物理層 B.數據鏈路層 C.網絡層 D.傳輸層
●為了實現數據傳輸,需要建立一個數據通信系統,它一般包括信源、發送裝置、__C_、接收裝置和信宿。當采用衛星進行通信時,數據一般被變換成_B__。
為了增大模擬傳輸系統的傳輸距離,應采用的設備是__B__。現在在模擬電話網上利用調制解調器傳輸數據采用的主要調制方式是__D_。
(6):A.信號放大器 B.編碼譯碼器 C.傳輸系統 D.交換系統
(7):A.數字信號 B.模擬信號 C.數字信號或模擬信號 D.數字信號和模擬信號
(8):A.網橋 B.放大器 C.路由器 D.交換機
(9):A.ASK B.FSK C.PSK D.QAM
● 不同的交換方式具有不同的性能。為了使數據在網絡中的傳輸延遲最小,首選的交換方式是
A,為保證數據無差錯地傳送,不應選用的交換方式是 __A__。分組交換對報文交換的主要改進是 __A_,這種改進產生的直接結果是 _C _。在出錯率高的傳輸系統中,選用 __B__ 更合適。
(10):A.線路交換 B.報文交換
C.分組交換 D.信元交換
(l1):A.線路交換 B.報文交換
C.分組交換 D.信元交換
(l2):A.傳輸單位更小且定長 B.傳輸單位更大且定長
C.差錯控制更完善
D.路由算法更簡單
(13):A.降低誤碼率 B.提高數據率 C.減少延遲 D.增加延遲
(14):A.虛電路分組交換 B.數據報分組交換
C.虛電路加數據報分組交換 D.線路交換
●局域網總線/樹拓樸的多點介質傳輸系統中,要使多個站點共享單個數據通道,需要特別考慮解決__B__和__B_這兩個問題。例如采用50Ω同軸電纜作為傳輸介質并構成總線拓撲的網絡系統,可使用基帶技術傳輸數字信號,總線上__A__,總線兩端加上終端匹配器用以__D__。
(15):A.數據幀格式 B.介質訪問控制方法 C.通信協議類型 D.信道分配方案
(10):A.信號平衡 B.站點之間性能匹配 C.數據編碼方案 D.介質傳輸性能
(17):A.整個帶寬由單個信號占用 B.整個帶寬被分成多路數據信道
C.可傳輸視頻或音頻信號 D.數據只能單向傳輸
(18):A.防止信號衰減 B.增強抗干擾能力 C.降低介質損耗 D.阻止信號反射
●網橋是一種常用的網絡互聯設備,它工作在OSI的 _B 上。在 LAN 中用于橋接少量以太網網段時,常用的網橋是 __D _。從網橋的基本原理可知網橋 __B__,因此使用網橋有兩個顯著優點,其一是 __D,其二是利用公共通信鏈路實現兩個遠程 LAN 的互聯。
(19):A.物理層 B.數據鏈路層 C.網絡層 D.傳輸層
(20):A.封裝網橋 B.源路徑途擇橋 C.轉換橋 D.透明橋
(21):A.無選擇地轉發數據幀 B.有選擇地轉發數據幀
C.可將其互聯的網絡分成多個邏輯子網 D.以地址轉換方式實現互聯的網絡之間的通信
(22):A.能再生和放大信號,以便擴展LAN的長度 B.具有差錯檢測和流量控制功能
C.適用于復雜的局域網互聯 D.可把一個大的LAN分段,以提高網絡性能
●windows NT的結構可分為保護子系統和NT執行體兩部分,其中保護子系統的結構為__A__。它有 __B__ 等兩種類型。在 Windows NT 中,網絡功能_ _D__,它是一種 __B__。
(23):A.客戶機/服務器模式 B.單塊模式 C.層次模式 D.集成模式
(24):A.環境子系統和應用子系統 B.環境子系統和集成子系統
C.集成子系統和服務子系統 D.應用于系統和服務子系統
(25):A.附加在操作系統上 B.由獨立的軟件完成 C.由操作系統生成 D.內置于操作系統中
(26):A.分布式結構 B.開放式結構 C.對等式結構 D.獨立式結構
●寬帶廣域網絡可采用__D__技術實現,其骨干網應選用__C__作為主要通信介質,節點之間的連接不宜采用__A__結構。
(27):A.100VG-AnyLAN B.1000BaseT C.X.25 D.ATM(28):A雙絞線 B.同軸電纜 C.光纖 D.衛星
(29):A.雙總線 B.星型 C.樹型 D.網格型
●TCP/IP是Internet采用的協議標準,它是一個協議系列,由多個不同層次的協議共同組成,用于將各種計算機和設備組成實際的計算機網絡。
TCP/IP協議系統分成四個層次,分別是網絡接口層、網絡層、傳輸層與應用層。
__C__是屬于網絡層的低層協議,主要用途為完成網絡地址向物理地址的轉換。
A__起到相反的作用,多用在無盤工作站啟動時利用物理地址解析出對應的網絡地址。
__B__是與IP協議同層的協議,更確切的說是工作在IP協議之上,又不屬于傳輸層的協議,可用于Internet上的路由器報告差錯或提供有關意外情況的信息。
__C__是一種面向連接的傳輸協議,在協議使用中存在著建立連接、傳輸數據、撤消連接的過程;__D__是一種非連接的傳輸協議,采用這種協議時,每一個數據包都必須單獨尋徑,特別適合于突發性短信息的傳輸。
(30):A.RARP B.ICMP C.ARP D.IGMP(31):A.RARP B.ARP C.IPX D.SPX(32):A.IGMP B.ICMD C.CDMA D.WAP(33):A.SNMP B.NFS C.TCP D.UDP(34):A.HTTP B.FTP C.TCP D.UDP
●Internet提供了大量的應用服務,分為通信、獲取信息與共享計算機資源等三類。
_A__ 是世界上使用最廣泛的一類Internet服務,以文本形式或HTML格式進行信息傳遞,而圖形等文件可以做為附件進行傳遞。
__D__ 是用來在計算機之間進行文件傳輸。利用該服務不僅可以從遠程計算機獲取文件,而且可以將文件從本地機器傳送到遠程計算機。
__C__是目前 Internet 上非常豐富多彩的應用服務,其客戶端軟件稱為瀏例覽器。目前較為流行的Browser/Server 網絡應用模式就以該類服務作為基礎。
__D__應用服務將主機變為遠程服務器的一個虛擬終端;在命令方式下運行時,通過本地機器傳送命令,在遠程計算機上運行相應程序,并將相應的運行結果傳送到本地機器顯示。
(35):A.Email B.Gopher C.BBS D.TFTP
(36):A.DNS B.NFS C.www.tmdps.cnmunication protocols are __either__ connection-oriented or connectionless,__dapending on _ whether the sender of a message needs to contact and maintain a dialog with the recipient or _simply__ send a message without any prior connect and with the hope that the recipient receives everything A_.These methods __C_ the two ways that communication is implemented on networks.(66):A.not
B.neither C.either D.all
(67):A.fulled B.flooded C.dapending on D.defined by(68):A.immediately B.simply C.accordingly D.properly(69):A.in order B.in array C.in series D.in queueing(70):A.make known B.disclose C.reveal D.discover
●The major problem with E-mail is that it is __B_ easy to use that people can become __C_ with messages.__A__ they can possibly answer in a day.In addition,mail boxes require some management to __D__ messages or archive those that might be required later.senders don't always know about your E-mail backlog and often send _B_ messages.(71):A.too
B.so C.very D.much
(72):A.full B.lost C.inundated D.filled(73):A.more than B.than C.that D.which(74):A.mange B.save C.backup D.dispose of(75):A.too many B.redundant C.long D.trivial
第五篇:PHP程序員面試題經典及答案集錦
都是經典
基礎題: 1.表單中 get與post提交方法的區別? 答:get是發送請求HTTP協議通過url參數傳遞進行接收,而post是實體數據,可以通過表單提交大量信息.2.session與cookie的區別? 答:session:儲存用戶訪問的全局唯一變量,存儲在服務器上的php指定的目錄中的(session_dir)的位置進行的存放
cookie:用來存儲連續訪問一個頁面時所使用,是存儲在客戶端,對于Cookie來說是存儲在用戶WIN的Temp目錄中的。
兩者都可通過時間來設置時間長短
3.數據庫中的事務是什么? 答:事務(transaction)是作為一個單元的一組有序的數據庫操作。如果組中的所有操作都成功,則認為事務成功,即使只有一個操作失敗,事務也不成功。如果所有操作完成,事務則提交,其修改將作用于所有其他數據庫進程。如果一個操作失敗,則事務將回滾,該事務所有操作的影響都將取消。
簡述題:
1、用PHP打印出前一天的時間格式是2006-5-10 22:21:21(2分)答:echo date('Y-m-d H:i:s', strtotime('-1 days'));
2、echo(),print(),print_r()的區別(3分)答:echo是PHP語句, print和print_r是函數,語句沒有返回值,函數可以有返回值(即便沒有用)print()只能打印出簡單類型變量的值(如int,string)print_r()可以打印出復雜類型變量的值(如數組,對象)echo 輸出一個或者多個字符串
3、能夠使HTML和PHP分離開使用的模板(1分)答:Smarty,Dwoo,TinyButStrong,Template Lite,Savant,phemplate,XTemplate
5、使用哪些工具進行版本控制?(1分)答:cvs,svn,vss;
6、如何實現字符串翻轉?(3分)答:echo strrev($a);
7、優化MYSQL數據庫的方法。(4分,多寫多得)答:
1、選取最適用的字段屬性,盡可能減少定義字段長度,盡量把字段設置NOT NULL,例如'省份,性別',最好設置為ENUM
2、使用連接(JOIN)來代替子查詢: a.刪除沒有任何訂單客戶:DELETE FROM customerinfo WHERE customerid NOT in(SELECT customerid FROM orderinfo)b.提取所有沒有訂單客戶:SELECT FROM customerinfo WHERE customerid NOT in(SELECT customerid FROM orderinfo)c.提高b的速度優化:SELECT FROM customerinfo LEFT JOIN orderid customerinfo.customerid=orderinfo.customerid WHERE orderinfo.customerid IS NULL
3、使用聯合(UNION)來代替手動創建的臨時表
a.創建臨時表:SELECT name FROM `nametest` UNION SELECT username FROM `nametest2`
4、事務處理: a.保證數據完整性,例如添加和修改同時,兩者成立則都執行,一者失敗都失敗
mysql_query(“BEGIN”);mysql_query(“INSERT INTO customerinfo(name)VALUES('$name1')”;mysql_query(“SELECT * FROM `orderinfo` where customerid=”.$id“);mysql_query(”COMMIT“);
5、鎖定表,優化事務處理: a.我們用一個 SELECT 語句取出初始數據,通過一些計算,用 UPDATE 語句將新值更新到表中。
包含有 WRITE 關鍵字的 LOCK TABLE 語句可以保證在 UNLOCK TABLES 命令被執行之前,不會有其它的訪問來對 inventory 進行插入、更新或者刪除的操作 mysql_query(”LOCK TABLE customerinfo READ, orderinfo WRITE“);mysql_query(”SELECT customerid FROM `customerinfo` where id=“.$id);mysql_query(”UPDATE `orderinfo` SET ordertitle='$title' where customerid=“.$id);mysql_query(”UNLOCK TABLES“);
6、使用外鍵,優化鎖定表
a.把customerinfo里的customerid映射到orderinfo里的customerid, 任何一條沒有合法的customerid的記錄不會寫到orderinfo里 CREATE TABLE customerinfo(customerid INT NOT NULL, PRIMARY KEY(customerid))TYPE = INNODB;CREATE TABLE orderinfo(orderid INT NOT NULL, customerid INT NOT NULL, PRIMARY KEY(customerid,orderid), FOREIGN KEY(customerid)REFERENCES customerinfo(customerid)ON DELETE CASCADE)TYPE = INNODB;注意:'ON DELETE CASCADE',該參數保證當customerinfo表中的一條記錄刪除的話同時也會刪除order 表中的該用戶的所有記錄,注意使用外鍵要定義事務安全類型為INNODB;
7、建立索引: a.格式:(普通索引)-> 創建:CREATE INDEX <索引名> ON tablename(索引字段)修改:ALTER TABLE tablename ADD INDEX [索引名](索引字段)創表指定索引:CREATE TABLE tablename([...],INDEX[索引名](索引字段))(唯一索引)-> 創建:CREATE UNIQUE <索引名> ON tablename(索引字段)修改:ALTER TABLE tablename ADD UNIQUE [索引名](索引字段)創表指定索引:CREATE TABLE tablename([...],UNIQUE[索引名](索引字段))(主鍵)-> 它是唯一索引,一般在創建表是建立,格式為: CREATA TABLE tablename([...],PRIMARY KEY[索引字段])
8、優化查詢語句
a.最好在相同字段進行比較操作,在建立好的索引字段上盡量減少函數操作
例子1: SELECT * FROM order WHERE YEAR(orderDate)<2008;(慢)SELECT * FROM order WHERE orderDate<”2008-01-01“;(快)例子2: SELECT * FROM order WHERE addtime/7<24;(慢)SELECT * FROM order WHERE addtime<24*7;(快)例子3: SELECT * FROM order WHERE title like ”%good%“;SELECT * FROM order WHERE title>=”good“ and name<”good“;
8、PHP的意思(送1分)答:PHP是一個基于服務端來創建動態網站的腳本語言,您可以用PHP和HTML生成網站主頁
9、MYSQL取得當前時間的函數是?,格式化日期的函數是(2分)答:now(),date()
10、實現中文字串截取無亂碼的方法。(3分)答:function GBsubstr($string, $start, $length){ if(strlen($string)>$length){ $str=null;$len=$start+$length;for($i=$start;$i<$len;$i++){ if(ord(substr($string,$i,1))>0xa0){ $str.=substr($string,$i,2);$i++;}else{ $str.=substr($string,$i,1);} } return $str.'...';}else{ return $string;} }
11、您是否用過版本控制軟件? 如果有您用的版本控制軟件的名字是?(1分)
12、您是否用過模板引擎? 如果有您用的模板引擎的名字是?(1分)答:用過,smarty
13、請簡單闡述您最得意的開發之作(4分)答:信息分類
14、對于大流量的網站,您采用什么樣的方法來解決訪問量問題?(4分)答:確認服務器硬件是否足夠支持當前的流量,數據庫讀寫分離,優化數據表, 程序功能規則,禁止外部的盜鏈,控制大文件的下載,使用不同主機分流主要流量
15、用PHP寫出顯示客戶端IP與服務器IP的代碼1分)答:打印客戶端IP:echo $_SERVER[‘REMOTE_ADDR’];或者: getenv('REMOTE_ADDR');打印服務器IP:echo gethostbyname(” 語言中,頁面頭部的 meta 標記可以用來輸出文件的編碼格式,以下是一個標準的 meta 語句
請使用 PHP 語言寫一個函數,把一個標準 HTML 頁面中的類似 meta 標記中的 charset 部分值改為 big5
請注意:
1.需要處理完整的 html 頁面,即不光此 meta 語句
2.忽略大小寫
3.' 和 “ 在此處是可以互換的
4.'Content-Type' 兩側的引號是可以忽略的,但 'text/html;charset=gbk' 兩側的不行
5.注意處理多余空格
3.寫一個函數,算出兩個文件的相對路徑
如 $a = '/a/b/c/d/e.php';
$b = '/a/b/12/34/c.php';
計算出 $b 相對于 $a 的相對路徑應該是../../c/d將()添上 答:function getRelativePath($a, $b){ $returnPath = array(dirname($b));$arrA = explode('/', $a);$arrB = explode('/', $returnPath[0]);for($n = 1, $len = count($arrB);$n < $len;$n++){ if($arrA[$n]!= $arrB[$n]){ break;} } if($len$n, '..'));}
$returnPath = array_merge($returnPath, array_slice($arrA, $n));return implode('/', $returnPath);} echo getRelativePath($a, $b);填空題: 1.在PHP中,當前腳本的名稱(不包括路徑和查詢字符串)記錄在預定義變量__$_SERVER['PHP_SELF']__中;而鏈接到當前頁面的URL記錄在預定義變量__$_SERVER['HTTP_REFERER']__ 中
2.執行程序段將輸出__0__。
3.在HTTP 1.0中,狀態碼 401 的含義是____;如果返回“找不到文件”的提示,則可用 header 函數,其語句為____。
4.數組函數 arsort 的作用是__對數組進行逆向排序并保持索引關系__;語句 error_reporting(2047)的作用是__報告所有錯誤和警告__。5.PEAR中的數據庫連接字符串格式是____。
6.寫出一個正則表達式,過慮網頁上的所有JS/VBS腳本(即把scrīpt標記及其內容都去掉):preg_replace(” //si“, ”newinfo“, $script);7.以Apache模塊的方式安裝PHP,在文件http.conf中首先要用語句____動態裝載PHP模塊,然后再用語句____使得Apache把所有擴展名為php的文件都作為PHP腳本處理。
LoadModule php5_module ”c:/php/php5apache2.dll“ , AddType application/x-httpd-php.php, 8.語句 include 和 require 都能把另外一個文件包含到當前文件中,它們的區別是____;為了避免多次包含同一文件,可以用語句__require_once||include_once__來代替它們。
9.類的屬性可以序列化后保存到 session 中,從而以后可以恢復整個類,這要用到的函數是____。
10.一個函數的參數不能是對變量的引用,除非在php.ini中把__allow_call_time_pass_reference boolean__設為on.11.SQL中LEFT JOIN的含義是__自然左外鏈接__。如果 tbl_user記錄了學生的姓名(name)和學號(ID),tbl_score記錄了學生(有的學生考試以后被開除了,沒有其記錄)的學號(ID)和考試成績(score)以及考試科目(subject),要想打印出各個學生姓名及對應的的各科總成績,則可以用SQL語句____。
12.在PHP中,heredoc是一種特殊的字符串,它的結束標志必須____。編程題: 13.寫一個函數,能夠遍歷一個文件夾下的所有文件和子文件夾。答: function my_scandir($dir){ $files = array();if($handle = opendir($dir)){ while(($file = readdir($handle))!== false){ if($file!= ”..“ && $file!= ”.“){ if(is_dir($dir.”/“.$file)){ $files[$file] = scandir($dir.”/“.$file);}else { $files[] = $file;} } } closedir($handle);return $files;} } 14.簡述論壇中無限分類的實現原理。答:
function Get_Category($category_id = 0,$level = 0, $default_category = 0){ global $DB;$sql = ”SELECT * FROM category ORDER BY categoryID DESC“;$result = $DB->query($sql);while($rows = $DB->fetch_array($result)){ $category_array[$rows[categoryParentID]][$rows[categoryID]] = array('id' => $rows[categoryID], 'parent' => $rows[categoryParentID], 'name' => $rows [categoryName]);} if(!isset($category_array[$category_id])){ return ”“;} foreach($category_array[$category_id] AS $key => $category){ if($category['id'] == $default_category){ echo ”/n“;} else { echo ”>“.$category['name'].”/n“;} Get_Category($key, $level + 1, $default_category);} unset($category_array[$category_id]);} /* 函數返回的數組格式如下所示: Array([1] => Array([id] => 1 [name] => 一級類別 [level] => 0 [ParentID] => 0)[4] => Array([id] => 4 [name] => 二級類別 [level] => 1 [ParentID] => 1)[9] => Array([id] => 9 [name] => 哈哈 [level] => 2 [ParentID] => 4)[3] => Array([id] => 3 [name] => 二級類別 [level] => 1 [ParentID] => 1)[8] => Array([id] => 8 [name] => aqqqqqd [level] => 2 [ParentID] => 3)[2] => Array([id] => 2 [name] => 二級類別 [level] => 1 [ParentID] => 1)[7] => Array([id] => 7 [name] => 234234 [level] => 2 [ParentID] => 2)[6] => Array([id] => 6 [name] => 333332 [level] => 2 [ParentID] => 2)[5] => Array([id] => 5 [name] => 三級類別 [level] => 2 [ParentID] => 2)[10] => Array([id] => 10 [name] => 66333666 [level] => 3 [ParentID] => 5))*/ //指定分類id,然后返回數組
function Category_array($category_id = 0,$level=0){ global $DB;$sql = ”SELECT * FROM category ORDER BY categoryID DESC“;$result = $DB->query($sql);while($rows = $DB->fetch_array($result)){ $category_array[$rows['categoryParentID']][$rows['categoryID']] = $rows;} foreach($category_array AS $key=>$val){ if($key == $category_id){ foreach($val AS $k=> $v){ $options[$k] = array('id' => $v['categoryID'], 'name' => $v['categoryName'], 'level' => $level, 'ParentID'=>$v['categoryParentID']);$children = Category_array($k, $level+1);if(count($children)> 0){ $options = $options + $children;} } } } unset($category_array[$category_id]);return $options;} ?> array('1' => array('id' => 1, 'parent' => 0, 'name' => '1111'), '2' => array('id' => 2, 'parent' => 0, 'name' => '2222'), '4' => array('id' => 4, 'parent' => 0, 'name' => '4444')), '1' => array('3' => array('id' => 3, 'parent' => 1, 'name' => '333333'), '5' => array('id' => 5, 'parent' => 1, 'name' => '555555')), '3' => array('6' => array('id' => 6, 'parent' => 3, 'name' => '66666'), '7' => array('id' => 7, 'parent' => 3, 'name' => '77777')), '4' => array('8' => array('id' => 8, 'parent' => 4, 'name' => '8888'), '9' => array('id' => 9, 'parent' => 4, 'name' => '9999')));if(!isset($arr[$category_id])){ return ”“;}
foreach($arr[$category_id] AS $key => $cate){ if($cate['id'] == $default_category){ $txt = ”/n“;}else{ $txt1 = ”>“.$cate['name'].”/n“;} $val = $txt.$txt1;echo $val;self::Get_Category($key, $level + 1, $default_category);} }
function getFlush($category_id = 0,$level = 0, $default_category = 0){
ob_start();self::Get_Category($category_id ,$level, $default_category);$out = ob_get_contents();ob_end_clean();return $out;} } $id =$_GET['id'];echo ”";?>