美女三级片在线观看|亚洲成人AV在线播放观看|亚洲视频香蕉视频二区|欧美vA免费在线观看|美国的黄色电影日本黄色片|五月激情淫乱av在线操|欧美丰满人妻免费视频人|av在线观看一区一本到|性福导航在线欧美经典第一页|看黄片的播放av免费播放

好螞蟻

計(jì)算機(jī)二級考試試題樣卷-C語言程序設(shè)計(jì)

宋紫寧2026-01-31 15:10:05

全國計(jì)算機(jī)等級考試二級筆試樣卷C語言程序設(shè)計(jì)

一、選擇題((1)~(10)、(21)~(40)每題2分,(11)~(20)每題2分,總分70分)

以下每個(gè)問題 A)、二)、C)、D) 四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的,請將正確選項(xiàng)寫在答題卡相應(yīng)位置上,在試卷上作答不會得分。

(1) 以下哪個(gè)選項(xiàng)不符合良好的編程風(fēng)格

A) 源程序必須有文檔記錄 B) 數(shù)據(jù)描述的順序必須標(biāo)準(zhǔn)化

C) 避免濫用 goto 語句 D) 模塊設(shè)計(jì)應(yīng)保證高耦合、高凝聚力

(二)從項(xiàng)目管理的角度來看,軟件設(shè)計(jì)一般分兩步完成,他們是

A) 概要設(shè)計(jì)和詳細(xì)設(shè)計(jì) B) 數(shù)據(jù)設(shè)計(jì)和界面設(shè)計(jì)

C) 軟件結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)設(shè)計(jì) D) 流程設(shè)計(jì)和數(shù)據(jù)設(shè)計(jì)

(3) 下列哪個(gè)選項(xiàng)不屬于軟件生命周期開發(fā)階段的任務(wù)

A) 軟件測試 B) 概要設(shè)計(jì) C) 軟件維護(hù) D) 詳細(xì)設(shè)計(jì)

(4)在數(shù)據(jù)庫系統(tǒng)中,用戶看到的數(shù)據(jù)模式是

A) 概念模型 B) 外部模型 C) 內(nèi)部模型 D) 物理模型

(5)數(shù)據(jù)庫設(shè)計(jì)的四個(gè)階段是:需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)和

A) 編碼設(shè)計(jì) B) 測試階段 C) 操作階段 D) 物理設(shè)計(jì)

(6) 共有如下三張關(guān)系表

計(jì)算機(jī)二級考試試題樣卷-C語言程序設(shè)計(jì)

以下哪項(xiàng)操作是正確的

A) T=R∩S B) T=R∪S

C) T=R×S D) T=R/S

(7)下列哪些說法是正確的

A)算法的空間復(fù)雜度大,那么它的時(shí)間復(fù)雜度也一定很大

B)算法的空間復(fù)雜度大,那么它的時(shí)間復(fù)雜度一定很小

C)算法時(shí)間復(fù)雜度大,那么它的空間復(fù)雜度一定很小

D) 以上三種說法均不正確

(8) 在長度為64的有序線性列表中順序搜索,在最壞的情況下,所需的比較次數(shù)為

A) 63 B) 64 C) 6 D) 7

(9)數(shù)據(jù)庫技術(shù)的根本目標(biāo)是解決數(shù)據(jù)問題

A) 存儲問題 B) 共享問題 C) 安全問題 D) 保護(hù)問題

(10) 對于如下二叉樹

計(jì)算機(jī)二級考試試題樣卷-C語言程序設(shè)計(jì)

進(jìn)行中序遍歷的結(jié)果是

A) ACBDFEG B) ACBDFGE C) ABDCGEF D) FCADBEG

(11)下列說法錯(cuò)誤的是

A) 一個(gè)C語言程序只能實(shí)現(xiàn)一種算法

B) 一個(gè)C程序可以由多個(gè)程序文件組成

C) C 程序可以由一個(gè)或多個(gè)函數(shù)組成

D) C函數(shù)可以作為C程序文件單獨(dú)存在

(12)下列哪項(xiàng)表述是正確的

A) 每個(gè)C程序文件必須有一個(gè)main()函數(shù)

B) main()函數(shù)在C程序中的位置是固定的

C)C程序中的所有函數(shù)都可以互相調(diào)用,與函數(shù)的位置無關(guān)

D) 不能在 C 程序的函數(shù)內(nèi)定義另一個(gè)函數(shù)

(13) 下列定義變量的說法錯(cuò)誤的是

A)int_int;B) 雙整數(shù)_;C) 字符 對于;D) 浮動美元;

(14) 如果變量 x、y 已被正確定義并賦值,下面符合C語言語法的表達(dá)式是

A)++x,y=x-- B) x+1=y C) x=x+10=x+y D) double(x)/10

(15) 下列關(guān)于邏輯運(yùn)算符兩邊操作數(shù)的說法正確的是

A) 只能是整數(shù)0或1 B) 只能是整數(shù)0或非0整數(shù)

C) 可以是結(jié)構(gòu)類型的數(shù)據(jù) D) 可以是任何合法的表達(dá)式

(16) 如果定義了 int x,y;并正確地給變量賦值,那么下列選項(xiàng)與表達(dá)式(x-y)一致?(x++):(y++) 中的條件表達(dá)式 (x-y) 等價(jià)于

A)(x-y>;0) B) (x-y<0) C) (x-y<0||x-y>;0) D) (x-y==0)

(17)有以下程序

主要的()

{ int ?x, y, z;

x=y=1;

z=x++,y++,++y;

printf("%d,%d,%d\n",X,y,z);

}

程序運(yùn)行后的輸出為

A2,3,3 ? ? ? ? ? B) 2,3,2C)2,3,1 ? ? ? ? D) 2,2,1

(18) 有一個(gè)定義:整數(shù)a;浮動b;執(zhí)行scanf("%2d%f",&A,&b);陳述時(shí)間,如果您從鍵盤輸入 876 543.0<輸入(>);a和b的值分別為

A)876和543.000000 B) 87 和 6.000000

C) 87 和 543.000000 D) 76 和 543.000000

(19)有以下程序

主要的()

{ int ?a=0, b=0;

a=10;到

b=20;給b賦值*/

printf("a+b=%d\n",a+b);/* 輸出計(jì)算結(jié)果 */

}

程序運(yùn)行后的輸出為

A) a+b=10 B) a+b=30 C) 30 D) 錯(cuò)誤

(20) 在嵌套中使用 if 語句時(shí),C語言規(guī)定else總是

A) 如果具有相同的壓痕位置,則與前一個(gè)配對

B)如果最接近的話就與前一個(gè)配對

C) 如果最接近前一個(gè),則與前一個(gè)配對,無需其他

D) 與第一個(gè) if before 配對

(21) 下列哪項(xiàng)陳述是正確的

A)break語句只能與switch語句一起使用

B) switch 語句中必須使用默認(rèn)值

C)break語句必須與switch語句中的case配對

D) switch語句中,不需要使用break語句

(22)有以下程序

主要的()

{ int ?k=5;

while(--k) printf("%d",k -= 3);

printf("\n");

}

執(zhí)行后的輸出是

A) 1 ? ? ? ? ? ? ? ? ? B) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ous

(23)有以下程序

主要的()

{ int ?i;

對于(我= 1;i<=40;我++)

{ if(i++%5==0)

if(++i%8==0) printf("%d ",我);

}

printf("\n");

}

執(zhí)行后的輸出是

A) 5 B) 24 C) 32 d) 40

(24) 下列選項(xiàng)之一,值為 1 的表達(dá)式為

A) 1 – '0' B) 1 - '\0' C) '1' -0 D) '\0' - '0'

(25)有以下程序

樂趣(整數(shù)x,整數(shù) y){ return (x+y); }

主要的()

{ int ?a=1, b=2, c=3, sum;

總和=樂趣((a++,乙++,a+b),c++);

printf("%d\n",和);

}

執(zhí)行后的輸出是

A)6

(26)有以下程序

主要的()

{? char ?s[]="abcde";

s+=2;

printf("%d\n",s[0]);

}

執(zhí)行后的結(jié)果是

A) 輸出字符 a 的 ASCII 碼 B) 輸出字符 c 的 ASCII 碼

C) 輸出字符 c D) 程序錯(cuò)誤

(27)有以下程序

樂趣(整數(shù)x,整數(shù) y)

{ static int ?m=0, i=2;

我+=m+1;m=i+x+y;返回米;

}

主要的()

{ int ?j=1, m=1, k;

k=樂趣(j,米);printf("%d,”,k);

k=樂趣(j,米);printf("%d\n",k);

}

執(zhí)行后的輸出是

答)5,5 B) 5,11 C) 11,11D)11,5

(28)有以下程序

樂趣(整數(shù)x)

{ int ?p;

if(x==0||x==1) 返回(3);

p=x-fun(x-2);

返回 p;

}

主要的()

{? printf("%d\n",fun(7)); }

執(zhí)行后的輸出是

A) 7 B) 3 C) 2 D) 0

(29) 在16位編譯系統(tǒng)上,如果有int a[]=的定義{10,20,30}*p=&a;執(zhí)行p++時(shí);后退,以下哪項(xiàng)陳述是錯(cuò)誤的

A) p 將一個(gè)字節(jié)移動到高地址 B) p 將一個(gè)存儲單元移動到高地址

C) p 移動兩個(gè)字節(jié)到更高的地址 D) p 相當(dāng)于 a+1

(30)有以下程序

主要的()

{ int ?a=1, b=3, c=5;

int *p1=&a,*p2=&b,*p=&c;

*p =*p1*(*p2);

printf("%d\n",C);

}

執(zhí)行后的輸出是

A)1

(31) 如果定義:整數(shù) w[3][5];那么下面不能正確表示數(shù)組元素的表達(dá)式是

A)*(*w+3) B)*(w+1)[4] C)*(*(w+1)) D)*(&w[0][0]+1)

(32)如果有如下函數(shù)頭

int 樂趣(雙 x[10],整數(shù)*n)

那么下面這個(gè)函數(shù)正確的函數(shù)聲明語句是

A) int fun(雙 x,整數(shù)*n);B) int fun(雙),整數(shù));

C) int fun(雙*x,整數(shù) n);D)int fun(雙*,整數(shù) *);

(33)有以下程序

無效變化(int k[]){ k[0]=k[5]; }

主要的()

{ int? x[10]={1,2,3,4,5,6,7,8,9,10}n=0;

而( n<=4){ change( &x[n]) ; n++; }

對于(n = 0;n<5;n++) printf("%d ",x[n]);

printf("\n");

}

程序運(yùn)行后輸出結(jié)果為

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)有以下程序

主要的()

{ int? x[3][2]={0}我;

對于(我= 0;i<3;i++) scanf("%d",x[i]);

printf("%3d%3d%3d\n",x[0][0],x[0][1],x[1][0]);

}

如果在運(yùn)行時(shí)輸入:2 4 6<輸入(>);輸出結(jié)果為

A) 2 0 0 B) 2 0 4 C) 2 4 0 D) 2 4 6

(35) 有以下程序

int 添加( int a,整數(shù) b){ return (a+b);? }

主要的()

{ int? k, (*f)(), a=5,b=10;

f=添加;

……

}

那么下面的函數(shù)調(diào)用語句是錯(cuò)誤的

A)k=(*f)(a,b);B) k=加(a,b);

C)k= *f(a,b);D)k=f(a,b);

(36)有以下程序

#包括

主要( int argc,字符 *argv[ ])

{ int? i=1,n=0;

當(dāng)我

printf("%d\n",n);

}

該程序生成的可執(zhí)行文件名為:進(jìn)程.EXE文件。如果運(yùn)行時(shí)輸入命令行:

過程 123 45 67

那么程序的輸出結(jié)果就是

A) 3 b) 5 c) 7 d) 11

(37) 有以下程序

#包括

# 定義 N 5

# 定義 M N+1

# 定義 f(x) (x*M)

主要的()

{ int ?i1, i2;

i1 = f(2);

i2 = f(1+1);

printf("%d %d\n",i1,i2);

}

程序運(yùn)行的結(jié)果是

A) 12 12 B) 11 7 C) 11 11 D) 12 7

(38) 有如下結(jié)構(gòu)描述、變量定義和賦值語句

結(jié)構(gòu)性病

{ char? name[10];

年齡;

字符性別;

} s[5],*ps;

ps=&s[0];

那么在下面的scanf函數(shù)調(diào)用語句中,錯(cuò)誤地引用了結(jié)構(gòu)體變量的哪個(gè)成員呢

A)scanf(“%s”,s[0].姓名);B) scanf("%d",&s[0].年齡);

C) scanf("%c",&(ps->;性別));D) scanf(“%d”,PS->;年齡);

(39) 如有下列定義和陳述

聯(lián)合數(shù)據(jù)

{? int? i;?? char? c;?? float? f; }X;

整數(shù);

那么下列說法正確的是

A)x=10.5;B)x.c=101;C) y=x;D) printf("%d\n",X);

(40)有以下程序

#包括

主要的()

{ FILE? *fp;??? int? i;

字符 ch[]="abcd",t;

fp=fopen("abc.數(shù)據(jù)”,“WB+”);

對于(我= 0;i<4;i++) fwrite(&ch[i],1,1,FP);

fseek(fp,-2L,SEEK_END);

恐懼(&t,1,1,FP);

f關(guān)閉(fp);

printf("%c\n",t);

}

執(zhí)行程序后的輸出為

廣告

二、填空題(每題2分),共30分鐘)

請?jiān)诖痤}卡上編號為 [1] 至 [15] 的水平線上每個(gè)空白處寫下正確答案,在試卷上作答不會得分。

(1)如下軟件系統(tǒng)結(jié)構(gòu)圖

寬度為[1]。

(2) [2] 任務(wù)是診斷并糾正程序中的錯(cuò)誤。

(3)關(guān)系表的行稱為[3]。

(4)按照“先進(jìn)后出”原則組織的數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)為[4]。

(5)數(shù)據(jù)結(jié)構(gòu)分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),鏈?zhǔn)疥?duì)列屬于[5]。

(6) 有一個(gè)定義:浮動 x=123.4567;那么執(zhí)行下面語句后輸出結(jié)果為[6]。

printf("%f\n",(整數(shù))(x*100+0.5)/100.0);

(7) 運(yùn)行以下程序后輸出結(jié)果為[7]。

主要的()

{ int ?m=011,n=11;

printf("%d %d\n",++米,n++);

}

(8) 運(yùn)行以下程序后輸出結(jié)果為[8]。

主要的()

{ int ?x,a=1,b=2,c=3,d=4;

x=(a x=(x x=(d>;X)?X:d;

printf("%d\n",X);

}

(9)有以下程序,如果運(yùn)行時(shí)從鍵盤輸入:18,11<輸入(>);那么程序的輸出結(jié)果就是[9]。

主要的()

{? int ?a,b;

printf("輸入一個(gè),乙:”);scanf("%d,%d”,&A,&b);

而(a!=b)!

{ ?while(a>b) a -= b;

同時(shí)(b>a) b -= a;

}

printf("%3d%3d\n",A,b);

}

(10) 下列程序的功能是:將輸入的正整數(shù)倒序輸出。例如:如果輸入135,則輸出531。請?zhí)顚懣瞻住?/p>

#包括

主要的()

{ int ?n,s;

printf("請輸入一個(gè)數(shù)字:”);掃描(“%d”,&n);

printf("輸出:”);

{ ?s=n%10;? printf("%d",s);??【10】?; ?}

而(n!= 0)!

printf("\n");

}

(11) 在下列程序中,函數(shù)fun的作用是計(jì)算x2-2x+6,main函數(shù)中會調(diào)用fun函數(shù)進(jìn)行計(jì)算:

y1=(x+8)2-2 (x+8)+6

y2=sin2(x)-2sin(x)+6

請?zhí)顚懣瞻住?/p>

#包括“數(shù)學(xué).H”

雙倍樂趣(雙x){ return (x*x-2*x+6); }

主要的()

{ double ?x,y1,y2;

printf("輸入x:”);掃描(“%lf”,&X);

y1=樂趣(【11】);

y2=樂趣(【12】);

printf("y1=%lf,y2=%lf\n",y1,y2);

}

(12) 下列程序的功能是:對 N 行 N 列的二維數(shù)組的每一行中的元素進(jìn)行排序,第0行從小到大排序,第 1 行從大到小排序,第 2 行從小到大排序,3號線從大到小排序,例如:

#定義N 4

無效排序(int a[][N])

{ int ?i, j, k, t;

對于 (i=0;我

對于 (j=0;j

對于 (k=【13】;k

/* 判斷行下標(biāo)是否為偶數(shù)來決定是升序還是降序排序 */

如果(【14】?a[i][j]a[i][k])

{? t = a[i][j];

a[i][j]=a[i][k];

a[i][k] = t;

}

}

無效 outarr(int a[N][N])

{??? ……??? }

主要的()

{ int? aa[N][N]={{2,3,4,1}{8,6,5,7}{11,12,10,9}{15,14,16,13}};

奧塔爾(aa);/*以矩陣的形式輸出二維數(shù)組*/

排序(aa);

奧塔爾(aa);

}

(13) 運(yùn)行下列程序的結(jié)果是:【15】。

#包括

int f(int a[]),整數(shù) n)

{ if(n>1)

返回 a[0] + f(a+1,n-1);

別的

返回一個(gè)[0];

}

主要的()

{ int ?aa[10]={1,2,3,4,5,6,7,8,9,10}s;

s = f(aa+2,4);printf("%d\n",);

}

熱門推薦

最新文章