全國計算機等級考試二級C

全國計算機等級考試二級C

全國計算機等級考試(National Computer Rank Examination,簡稱NCRE),是經原國家教育委員會(現教育部)批准,由教育部考試中心主辦,面向社會,用於考查應試人員計算機套用知識與技能的全國性計算機水平考試體系。

NCRE考試目的

計算機技術的套用在我國各個領域發展迅速,為了適應知識經濟和信息社會發展的需要,操作和套用計算機已成為人們必須掌握的一種基本技能。許多單位、部門已把掌握一定的計算機知識和套用技能作為人員聘用、職務晉升、職稱評定、上崗資格的重要依據之一。鑒於社會的客觀需求,經原國家教委批准,原國家教委考試中心於1994年面向社會推出了NCRE,其目的在於以考促學,向社會推廣和普及計算機知識,也為用人部門錄用和考核工作人員提供一個統一、客觀、公正的標準。

NCRE組織單位

教育部考試中心負責實施考試,制定有關規章制度,編寫考試大綱及相應的輔導材料,命制試卷、答案及評分參考,進行成績認定,頒發合格證書,研製考試必須的計算機軟體,開展考試研究和宣傳、評價等。
教育部考試中心在各省(自治區直轄市)設立省級承辦機構,由省級承辦機構負責本省(自治區、直轄市)考試的宣傳、推廣和實施,根據規定設定考點、組織評卷、轉發合格證書等。
省級承辦機構根據教育部考試中心有關規定在所屬地區符合條件的單位設立考點,由考點負責考生的報名、紙筆考試、上機考試、發放成績通知單、轉發合格證書等管理性工作。
教育部考試中心聘請全國著名計算機專家組成“全國計算機等級考試委員會”,負責設計考試方案、審定考試大綱、制定命題原則、指導和監督考試的實施。

NCRE等級和科目

級/類別 科目 備註
一級 一級MS Office ​
一級WPS Office ​
一級B 部分省市開考
二級 C語言程式設計 ​
C++語言程式設計 ​
Java語言程式設計 ​
Visual Basic語言程式設計 ​
Delphi語言程式設計 2008年4月開考
Visual FoxPro資料庫程式設計 ​
Access資料庫程式設計 ​
三級 PC技術 ​
信息管理技術 ​
資料庫技術 ​
網路技術 ​
四級 網路工程師 2010年4月開考
資料庫工程師 2010年4月開考
軟體測試工程師 2010年4月開考
計算機職業英語 一級 2010年9月開考
二級 開發中
三級 開發中

考試型式及時間

考試採用全國統一命題,統一考試的形式。除一級各科全部採用上機考試外,其他各級別均採用筆試與上機操作考試相結合的形式。四級考試2009年暫不進行上機考試(上機考核要求在筆試中體現)。計算機職業英語一級考試2009年採用筆試形式。
筆試時間:二級均為90分鐘;三級、四級為120分鐘;計算機職業英語一級考試為90分鐘。
上機考試時間:一級、二級均為90分鐘;三級60分鐘。
筆試和上機考試的題型請參見各科考試大綱。

二級C語言

全國計算機等級考試二級筆試C語言程式設計(樣卷) 一、選擇題((1)~(10)、(21)~(40)每題2分,(11)~(20)每題2分,共70分)
下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項塗寫在答題卡相應位置上,答在試卷上不得分。
(1)下列選項中不符合良好程式設計風格的是
A) 源程式要文檔化 B) 數據說明的次序要規範化
C) 避免濫用goto語句 D) 模組設計要保證高耦合、高內聚
(2)從工程管理角度,軟體設計一般分為兩步完成,它們是
A) 概要設計與詳細設計 B) 數據設計與接口設計
C) 軟體結構設計與數據設計 D) 過程設計與數據設計
(3)下列選項中不屬於軟體生命周期開發階段任務的是
A)軟體測試 B)概要設計 C)軟體維護 D)詳細設計
(4)在資料庫系統中,用戶所見的數據模式為
A) 概念模式 B)外模式 C)內模式 D)物理模式
(5)資料庫設計的四個階段是:需求分析、概念設計、邏輯設計和
A) 編碼設計 B) 測試階段 C)運行階段 D)物理設計
(6)設有如下三個關係表

​ R ​ S ​ ​ T ​ ​
​ A ​ B C ​ A B C ​
​ m ​ 1 3 ​ m 1 3 ​
​ n ​ ​ ​ ​ n 1 3 ​

下列操作中正確的是
A)T=R∩S B)T=R∪S
C)T=R×S D)T=R/S
(7)下列敘述中正確的是
A)一個算法的空間複雜度大,則其時間複雜度也必定大
B)一個算法的空間複雜度大,則其時間複雜度必定小
C)一個算法的時間複雜度大,則其空間複雜度必定小
D)上述三種說法都不對
(8)在長度為64的有序線性表中進行順序查找,最壞情況下需要比較的次數為
A)63 B)64 C)6 D)7
(9)資料庫技術的根本目標是要解決數據的
A)存儲問題 B)共享問題 C)安全問題 D)保護問題
(10)對下列二叉樹
題
進行中序遍歷的結果是A)ACBDFEG B)ACBDFGE C)ABDCGEF D)FCADBEG
(11)下列敘述中錯誤的是
A)一個C語言程式只能實現一種算法
B)C程式可以由多個程式檔案組成
C)C程式可以由一個或多個函數組
D)一個C函式可以單獨作為一個C程式檔案存在
(12)下列敘述中正確的是
A)每個C程式檔案中都必須要有一個main()函式
B)在C程式中main()函式的位置是固定的
C)C程式中所有函式之間都可以相互調用,與函式所在位置無關
D)在C程式的函式中不能定義另一個函式
(13)下列定義變數的語句中錯誤的是
A)int _int; B)double int_; C)char For; D)float US$;
(14)若變數x、y已正確定義並賦值,以下符合C語言語法的表達式是
A)++x,y=x-- B)x+1=y C)x=x+10=x+y D)double(x)/10
(15)以下關於邏輯運算符兩側運算對象的敘述中正確的是
A)只能是整數0或1 B)只能是整數0或非0整數
C)可以是結構體類型的數據 D)可以是任意合法的表達式
(16)若有定義int x,y; 並已正確給變數賦值,則以下選項中與表達式(x-y)?(x++) : (y++)中的條件表達式(x-y) 等價的是
A)(x-y>0) B)(x-y<0) C)(x-y<0||x-y>0) D)(x-y==0)
(17)有以下程式
main()
{ int x, y, z;
x=y=1;
z=x++,y++,++y;
printf("%d,%d,%d\n",x,y,z);
}
程式運行後的輸出結果是
A)2,3,3 B)2,3,2 C)2,3,1 D)2,2,1
(18)設有定義:int a; float b; 執行 scanf("%2d%f",&a,&b); 語句時,若從鍵盤輸入876 543.0<回車>,a和b的值分別是
A)876和543.000000 B)87和6.000000
C)87和543.000000 D)76和543.000000
(19)有以下程式
main()
{ int a=0, b=0;
a=10; /* 給a賦值
b=20; 給b賦值 */
printf("a+b=%d\n",a+b); /* 輸出計算結果 */
}
程式運行後的輸出結果是
A)a+b=10 B)a+b=30 C)30 D)出錯
(20)在嵌套使用if語句時,C語言規定else總是
A)和之前與其具有相同縮進位置的if配對
B)和之前與其最近的if配對
C)和之前與其最近的且不帶else的if配對
D)和之前的第一個if配對
(21)下列敘述中正確的是
A)break語句只能用於switch語句
B)在switch語句中必須使用default
C)break語句必須與switch語句中的case配對使用
D)在switch語句中,不一定使用break語句
(22)有以下程式
main()
{ int k=5;
while(--k) printf("%d",k -= 3);
printf("\n");
}
執行後的輸出結果是
A)1 B)2 C)4 D)死循環
(23)有以下程式
main()
{ int i;
for(i=1; i<=40; i++)
{ if(i++%5==0)
if(++i%8==0) printf("%d ",i);
}
printf("\n");
}
執行後的輸出結果是
A)5 B)24 C)32 D)40
(24)以下選項中,值為1的表達式是
A)1 –&#39;0&#39; B)1 - &#39;&#39; C)&#39;1&#39; -0 D)&#39;&#39; - &#39;0&#39;
(25)有以下程式
fun(int x, int y){ return (x+y); }
main()
{ int a=1, b=2, c=3, sum;
sum=fun((a++,b++,a+b),c++);
printf("%d\n",sum);
}
執行後的輸出結果是
A)6 B)7 C)8 D)9
(26)有以下程式
main()
{ char s&#91;&#93;="abcde";
s+=2;
printf("%d\n",s&#91;0&#93;);
}
執行後的結果是
A)輸出字元a的ASCII碼 B)輸出字元c的ASCII碼
C)輸出字元c D)程式出錯
(27)有以下程式
fun(int x, int y)
{ static int m=0, i=2;
i+=m+1; m=i+x+y; return m;
}
main()
{ int j=1, m=1, k;
k=fun(j,m); printf("%d,",k);
k=fun(j,m); printf("%d\n",k);
}
執行後的輸出結果是
A)5, 5 B)5, 11 C)11, 11 D)11, 5
(28)有以下程式
fun(int x)
{ int p;
if(x==0||x==1) return(3);
p=x-fun(x-2);
return p;
}
main()
{ printf("%d\n",fun(7)); }
執行後的輸出結果是
A)7 B)3 C)2 D)0
(29)在16位編譯系統上,若有定義int a&#91;&#93;={10,20,30}, *p=&a;,當執行p++;後,下列說法錯誤的是
A)p向高地址移了一個位元組 B)p向高地址移了一個存儲單元
C)p向高地址移了兩個位元組 D)p與a+1等價
(30)有以下程式
main()
{ int a=1, b=3, c=5;
int *p1=&a, *p2=&b, *p=&c;
*p =*p1*(*p2);
printf("%d\n",c);
}
執行後的輸出結果是
A)1 B)2 C)3 D)4
(31)若有定義:int w&#91;3&#93;&#91;5&#93;; ,則以下不能正確表示該數組元素的表達式是
A)*(*w+3) B)*(w+1)&#91;4&#93; C)*(*(w+1)) D)*(&w&#91;0&#93;&#91;0&#93;+1)
(32)若有以下函式首部
int fun(double x&#91;10&#93;, int *n)
則下面針對此函式的函式聲明語句中正確的是
A)int fun(double x, int *n); B)int fun(double , int );
C)int fun(double *x, int n); D)int fun(double *, int *);
(33)有以下程式
void change(int k&#91; &#93;){ k&#91;0&#93;=k&#91;5&#93;; }
main()
{ int x&#91;10&#93;={1,2,3,4,5,6,7,8,9,10},n=0;
while( n<=4 ) { change( &x&#91;n&#93;) ; n++; }
for(n=0; n<5; n++) printf("%d ",x&#91;n&#93;);
printf("\n");
}
程式運行後輸出的結果是
A)6 7 8 9 10 B)1 3 5 7 9 C)1 2 3 4 5 D)6 2 3 4 5
(34)有以下程式
main()
{ int x&#91;3&#93;&#91;2&#93;={0}, i;
for(i=0; i<3; i++) scanf("%d",x&#91;i&#93;);
printf("%3d%3d%3d\n",x&#91;0&#93;&#91;0&#93;,x&#91;0&#93;&#91;1&#93;,x&#91;1&#93;&#91;0&#93;);
}
若運行時輸入:2 4 6<回車>,則輸出結果為
A)2 0 0 B)2 0 4 C)2 4 0 D)2 4 6
(35)有以下程式
int add( int a,int b){ return (a+b); }
main()
{ int k, (*f)(), a=5,b=10;
f=add;

}
則以下函式調用語句錯誤的是
A)k=(*f)(a,b); B)k=add(a,b);
C)k= *f(a,b); D)k=f(a,b);
(36)有以下程式
#include
main( int argc, char *argv&#91; &#93;)
{ int i=1,n=0;
while (i<ARGC) }
printf("%d\n",n);
}
該程式生成的執行檔名為:proc.exe。若運行時輸入命令行:
proc 123 45 67
則程式的輸出結果是
A)3 B)5 C)7 D)11
(37)有以下程式
# include
# define N 5
# define M N+1
# define f(x) (x*M)
main()
{ int i1, i2;
i1 = f(2) ;
i2 = f(1+1) ;
printf("%d %d\n", i1, i2);
}
程式的運行結果是
A)12 12 B)11 7 C)11 11 D)12 7
(38)有以下結構體說明、變數定義和賦值語句
struct STD
{ char name&#91;10&#93;;
int age;
char sex;
} s&#91;5&#93;,*ps;
ps=&s&#91;0&#93;;
則以下scanf函式調用語句中錯誤引用結構體變數成員的是
A)scanf("%s",s&#91;0&#93;.name); B)scanf("%d",&s&#91;0&#93;.age);
C)scanf("%c",&(ps->sex)); D)scanf("%d",ps->age);
(39)若有以下定義和語句
union data
{ int i; char c; float f; } x;
int y;
則以下語句正確的是
A)x=10.5; B)x.c=101; C)y=x; D)printf("%d\n",x);
(40)有以下程式
#include
main()
{ FILE *fp; int i;
char ch&#91;&#93;="abcd",t;
fp=fopen("abc.dat","wb+");
for(i=0; i<4; i++) fwrite(&ch&#91;i&#93;,1,1,fp);
fseek(fp,-2L,SEEK_END);
fread(&t,1,1,fp);
fclose(fp);
printf("%c\n",t);
}
程式執行後的輸出結果是
A)d B)c C)b D)a
二、填空題(每空2分,共30分)
請將每一個空的正確答案寫在答題卡【1】至【15】序號的橫線上,答在試卷上不得分。
(1)下列軟體系統結構圖
題
的寬度為 【1】 。
(2) 【2】 的任務是診斷和改正程式中的錯誤。
(3)一個關係表的行稱為 【3】 。
(4)按“先進後出”原則組織數據的數據結構是 【4】 。
(5)數據結構分為線性結構和非線性結構,帶鏈的佇列屬於 【5】 。
(6)設有定義:float x=123.4567;,則執行以下語句後的輸出結果是 【6】 。
printf("%f\n",(int)(x*100+0.5)/100.0);
(7)以下程式運行後的輸出結果是 【7】 。
main()
{ int m=011,n=11;
printf("%d %d\n",++m, n++);
}
(8)以下程式運行後的輸出結果是 【8】 。
main()
{ int x,a=1,b=2,c=3,d=4;
x=(a<B) style="mso-spacerun: yes" b; x=(x<C) style="mso-spacerun: yes" : ? c; x=(d>x) ? x : d;
printf("%d\n",x);
}
(9)有以下程式,若運行時從鍵盤輸入:18,11<回車>,則程式的輸出結果是 【9】 。
main()
{ int a,b;
printf("Enter a,b:"); scanf("%d,%d",&a,&b);
while(a!=b)
{ while(a>b) a -= b;
while(b>a) b -= a;
}
printf("%3d%3d\n",a,b);
}
(10)以下程式的功能是:將輸入的正整數按逆序輸出。例如:若輸入135則輸出531。請填空。
#include
main()
{ int n,s;
printf("Enter a number : "); scanf("%d",&n);
printf("Output: ");
do
{ s=n%10; printf("%d",s); 【10】 ; }
while(n!=0);
printf("\n");
}
(11)以下程式中,函式fun的功能是計算x2-2x+6,主函式中將調用fun函式計算:
y1=(x+8)2-2 (x+8)+6
y2=sin2(x)-2sin(x)+6
請填空。
#include "math.h"
double fun(double x){ return (x*x-2*x+6); }
main()
{ double x,y1,y2;
printf("Enter x:"); scanf("%lf",&x);
y1=fun( 【11】 );
y2=fun( 【12】 );
printf("y1=%lf,y2=%lf\n",y1,y2);
}
(12)下面程式的功能是:將N行N列二維數組中每一行的元素進行排序,第0行從小到大排序,第1行從大到小排序,第2行從小到大排序,第3行從大到小排序,例如:
題
#define N 4
void sort(int a&#91;&#93;&#91;N&#93;)
{ int i, j, k, t;
for (i=0; i
for (j=0; j
for (k= 【13】 ; k
/*判斷行下標是否為偶數來確定按升序或降序來排序*/
if ( 【14】 ? a&#91;i&#93;&#91;j&#93;a&#91;i&#93;&#91;k&#93;)
{ t = a&#91;i&#93;&#91;j&#93;;
a&#91;i&#93;&#91;j&#93;=a&#91;i&#93;&#91;k&#93;;
a&#91;i&#93;&#91;k&#93; = t;
}
}
void outarr(int a&#91;N&#93;&#91;N&#93;)
{ …… }
main()
{ int aa&#91;N&#93;&#91;N&#93;={{2,3,4,1},{8,6,5,7},{11,12,10,9},{15,14,16,13}};
outarr(aa); /*以矩陣的形式輸出二維數組*/
sort(aa);
outarr(aa);
}
(13)下面程式的運行結果是:【15】 。
#include
int f(int a&#91;&#93;,int n)
{ if(n>1)
return a&#91;0&#93; + f(a+1, n-1);
else
return a&#91;0&#93;;
}
main()
{ int aa&#91;10&#93;={1,2,3,4,5,6,7,8,9,10}, s;
s = f(aa+2,4); printf("%d\n", s);
}

輔導教材

全國計算機等級考試上機考試題庫二級C全國計算機等級考試上機考試題庫二級C
出版社:電子科技大學出版社
出版時間:2008年10月第一版2009年9月第三次印刷
市場價:24.80
書號:ISBN 978-7-81114-821-3

目錄

第一部分上機考試指南
1.1最新大綱專家解讀()
1.1.1二級公共基礎知識考試大綱()
1.1.2二級C語言程式設計考試大綱()
1.2上機考試環境及流程()
1.2.1考試環境簡介()
1.2.2上機考試流程演示()
1.3上機考試題型剖析()
1.3.1程式填空題()
1.3.2程式改錯題()
1.3.3程式設計題()
第二部分上機考試試題
2.1基礎篇()
第1套上機考試試題()
第2套上機考試試題()
第3套上機考試試題()
第4套上機考試試題()
第5套上機考試試題()
第6套上機考試試題()
第7套上機考試試題()
第8套上機考試試題()
第9套上機考試試題()
第10套上機考試試題()
第11套上機考試試題()
第12套上機考試試題()
第13套上機考試試題()
第14套上機考試試題()
第15套上機考試試題()
第16套上機考試試題()
第17套上機考試試題()
第18套上機考試試題()
第19套上機考試試題()
第20套上機考試試題()
第21套上機考試試題()
第22套上機考試試題()
第23套上機考試試題()
第24套上機考試試題()
第25套上機考試試題()
第26套上機考試試題()
第27套上機考試試題()
第28套上機考試試題()
第29套上機考試試題()
第30套上機考試試題()
2.2達標篇()
第31套上機考試試題()
第32套上機考試試題()
第33套上機考試試題()
第34套上機考試試題()
第35套上機考試試題()
第36套上機考試試題()
第37套上機考試試題()
第38套上機考試試題()
第39套上機考試試題()
第40套上機考試試題()
第41套上機考試試題()
第42套上機考試試題()
第43套上機考試試題()
第44套上機考試試題()
第45套上機考試試題()
第46套上機考試試題()
第47套上機考試試題()
第48套上機考試試題()
第49套上機考試試題()
第50套上機考試試題()
第51套上機考試試題()
第52套上機考試試題()
第53套上機考試試題()
第54套上機考試試題()
第55套上機考試試題()
第56套上機考試試題()
第57套上機考試試題()
第58套上機考試試題()
第59套上機考試試題()
第60套上機考試試題()
第61套上機考試試題()
第62套上機考試試題()
第63套上機考試試題()
第64套上機考試試題()
第65套上機考試試題()
第66套上機考試試題()
第67套上機考試試題()
第68套上機考試試題()
第69套上機考試試題()
第70套上機考試試題()
第71套上機考試試題()
第72套上機考試試題()
第73套上機考試試題()
第74套上機考試試題()
第75套上機考試試題()
第76套上機考試試題()
第77套上機考試試題()
第78套上機考試試題()
第79套上機考試試題()
第80套上機考試試題()
第81套上機考試試題()
第82套上機考試試題()
第83套上機考試試題()
第84套上機考試試題()
第85套上機考試試題()
第86套上機考試試題()
第87套上機考試試題()
2.3優秀篇()
第88套上機考試試題()
第89套上機考試試題()
第90套上機考試試題()
第91套上機考試試題()
第92套上機考試試題()
第93套上機考試試題()
第94套上機考試試題()
第95套上機考試試題()
第96套上機考試試題()
第97套上機考試試題()
第98套上機考試試題()
第99套上機考試試題()
第100套上機考試試題()
第三部分參考答案及解析
3.1基礎篇()
第1套參考答案及解析()
第2套參考答案及解析()
第3套參考答案及解析()
第4套參考答案及解析()
第5套參考答案及解析()
第6套參考答案及解析()
第7套參考答案及解析()
第8套參考答案及解析()
第9套參考答案及解析()
第10套參考答案及解析()
第11套參考答案及解析()
第12套參考答案及解析()
第13套參考答案及解析()
第14套參考答案及解析()
第15套參考答案及解析()
第16套參考答案及解析()
第17套參考答案及解析()
第18套參考答案及解析()
第19套參考答案及解析()
第20套參考答案及解析()
第21套參考答案及解析()
第22套參考答案及解析()
第23套參考答案及解析()
第24套參考答案及解析()
第25套參考答案及解析()
第26套參考答案及解析()
第27套參考答案及解析()
第28套參考答案及解析()
第29套參考答案及解析()
第30套參考答案及解析()
3.2達標篇()
第31套參考答案及解析()
第32套參考答案及解析()
第33套參考答案及解析()
第34套參考答案及解析()
第35套參考答案及解析()
第36套參考答案及解析()
第37套參考答案及解析()
第38套參考答案及解析()
第39套參考答案及解析()
第40套參考答案及解析()
第41套參考答案及解析()
第42套參考答案及解析()
第43套參考答案及解析()
第44套參考答案及解析()
第45套參考答案及解析()
第46套參考答案及解析()
第47套參考答案及解析()
第48套參考答案及解析()
第49套參考答案及解析()
第50套參考答案及解析()
第51套參考答案及解析()
第52套參考答案及解析()
第53套參考答案及解析()
第54套參考答案及解析()
第55套參考答案及解析()
第56套參考答案及解析()
第57套參考答案及解析()
第58套參考答案及解析()
第59套參考答案及解析()
第60套參考答案及解析()
第61套參考答案及解析()
第62套參考答案及解析()
第63套參考答案及解析()
第64套參考答案及解析()
第65套參考答案及解析()
第66套參考答案及解析()
第67套參考答案及解析()
第68套參考答案及解析()
第69套參考答案及解析()
第70套參考答案及解析()
第71套參考答案及解析()
第72套參考答案及解析()
第73套參考答案及解析()
第74套參考答案及解析()
第75套參考答案及解析()
第76套參考答案及解析()
第77套參考答案及解析()
第78套參考答案及解析()
第79套參考答案及解析()
第80套參考答案及解析()
第81套參考答案及解析()
第82套參考答案及解析()
第83套參考答案及解析()
第84套參考答案及解析()
第85套參考答案及解析()
第86套參考答案及解析()
第87套參考答案及解析()
3.3優秀篇()
第88套參考答案及解析()
第89套參考答案及解析()
第90套參考答案及解析()
第91套參考答案及解析()
第92套參考答案及解析()
第93套參考答案及解析()
第94套參考答案及解析()
第95套參考答案及解析()
第96套參考答案及解析()
第97套參考答案及解析()
第98套參考答案及解析()
第99套參考答案及解析()
第100套參考答案及解析()
第四部分2009年9月典型上機真題
4.12009年9月典型上機真題()
第1套上機真題()
第2套上機真題()
第3套上機真題()
第4套上機真題()
第5套上機真題()
第6套上機真題()
第7套上機真題()
第8套上機真題()
第9套上機真題()
第10套上機真題()
4.2參考答案()
附錄
附錄A運算符的優先權與結合性()
附錄BC語言關鍵字()
附錄C雙目算術運算中兩邊運算量類型轉換規律()
附錄D字元串函式()
附錄E輸入輸出函式()

相關詞條

相關搜尋

熱門詞條

聯絡我們