計(jì)算機(jī)二級C語言測試題(含答案)_第1頁
計(jì)算機(jī)二級C語言測試題(含答案)_第2頁
計(jì)算機(jī)二級C語言測試題(含答案)_第3頁
計(jì)算機(jī)二級C語言測試題(含答案)_第4頁
計(jì)算機(jī)二級C語言測試題(含答案)_第5頁
已閱讀5頁,還剩17頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、(第一章)1. 以下關(guān)于算法的描述不正確的是 。A. 任何一個(gè)問題,它的實(shí)現(xiàn)算法是唯一的B.描述算法常用的表達(dá)工具有流程圖、N-S圖、PAD圖、偽碼等C. 算法的最終實(shí)現(xiàn)是計(jì)算機(jī)程序D. 正確性和清晰易懂性是一個(gè)好算法的基本條件2下面是一個(gè)加法程序,指出存在的邏輯錯誤和語法錯誤。/* 求整數(shù) a 和 b 的和 */main( )int a,b;a=8;b=2000;print("%dn",a-b);3.在每個(gè)C程序中都必須包含有這樣一個(gè)函數(shù),該函數(shù)的函數(shù)名為 A main B. MAIN C. name D. function4以下敘述不正確的是。A. C程序書寫格式規(guī)定,

2、一行內(nèi)只能寫一個(gè)語句B main() 函數(shù)后面有一對花括號,花括號內(nèi)的部分稱為函數(shù)體C. 一個(gè)C程序必須有 main()函數(shù)D. C規(guī)定函數(shù)內(nèi)的每個(gè)語句以分號結(jié)束5 以下各標(biāo)識符中,合法的用戶標(biāo)識符為 。A A#C B mystery C main D ab*6已知求解某問題的算法如下:輸入a 、b、 c 三個(gè)數(shù)。將a和b 比較,較大者放在a中,小者放在b中。將a和c 比較,較大者放在a中,小者放在c中。將b和c 比較,較大者放在b中,小者放在c中。 依次輸出a 、 b 、 c 。請根據(jù)上述算法描述,把算法的功能表達(dá)出來?!敬鸢浮堪讶我廨斎氲娜齻€(gè)數(shù)a、 b、 c 按降序排列的順序輸出。7 一個(gè)

3、 C 語言程序可以包括多個(gè)函數(shù),程序總是按照如下 所描述的方式執(zhí)行當(dāng)前的程序。A.從本程序的 main()函數(shù)開始,到本程序文件的最后一個(gè)函數(shù)結(jié)束。B.從本程序文件的第一個(gè)函數(shù)開始,到本程序文件的最后一個(gè)函數(shù)結(jié)束。C.從main()函數(shù)開始,至U main()函數(shù)結(jié)束。D.從本程序文件的第一個(gè)函數(shù)開始,到本程序 main()函數(shù)結(jié)束。8以下敘述正確的是 。A.在C程序中,main()函數(shù)必須位于程序的最前面。B C 程序的每行中只能寫一條語句。C.在對一個(gè)C程序進(jìn)行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯誤。D C 語言本身沒有輸入輸出語句。答案:1 . A2 語法錯誤是print, 應(yīng)該為 pri

4、ntf ;邏輯錯誤是a-b, 應(yīng)該為 a+b 。3 A 4 A 5 B4 把任意輸入的三個(gè)數(shù)a、 b、 c 按降序排列的順序輸出。7 C 8 DC語言測試題(第二章)1 . C語言中的實(shí)數(shù)可以寫成不同表示形式,下列表示形式中正確的是A B C D e62 下列程序執(zhí)行后的結(jié)果是 。main()int x='f'printf("%cn", 'A'-'a'+x);3.能正確表示數(shù)學(xué)描述中0W a< 10的C語言表達(dá)式是A a>=0&a<=10B a>=0|a<=10C a>=0&

5、&a<=10D. 0Wa&&aw 104 若a 為 int 類型,且其值為3,則執(zhí)行完表達(dá)式a+=a-=a*a 后, a 的值是 A -3 B 9 C -12 D 65假設(shè)所有變量均為int 型,則表達(dá)式(a=2,b=5,b+1,a+b) 的值是A 7 B 8 C 6 D 26 執(zhí)行下面程序段后,y 的結(jié)果是 int x,y;x=y=2;x=x-2&&(y=y+1);printf("%d",y);A. 3 B. 2 C. 1 D. 07 表達(dá)式(int)*2+8/3-3%2 的值是 A. 2 B. 3 C. 4 D. 5答案:1

6、 A2 F3 C4 C5 A6 B7 BC語言測試題(第三章)1 以下程序的輸出結(jié)果是main()int k=8765;printf("*%-06d*n",k);A.輸出格式描述符不合法B . *008765*C. *8765ulj*D. *-08765*【答案】C .2 .有程序段如下:int i;float f;scanf("i=%d,f=%f",&i,&f);若要求把數(shù)值100和分別賦給變量i和f,則正確的輸入格式為 A. *J| B. i=100,f=C. 100, Q| D . i=100f= Q【答案】B3 .有程序如下:ma

7、in()int i;float x,y;scanf("%2d%f%*d%f",&i,&x,&y);printf("%d,%f,%fn",i,x,y);執(zhí)行該程序時(shí),若按如下形式輸入數(shù)據(jù),則輸出結(jié)果是 。輸入數(shù)據(jù):-341-45A. 56, B . 56789,C. 56, D . 56,【答案】A4.輸入字母a時(shí),下列程序的執(zhí)行結(jié)果是 。#include ""main()char ch;ch=getchar();(ch>='a'&&ch<='z')pu

8、tchar(ch+'A'-'a'):putchar(ch);AC語言測試題(第四章)1 下面是由 if 構(gòu)成的一個(gè)程序段:if(a<b)if(d=c)x=1;elsex=2;該程序段所表示的邏輯關(guān)系對應(yīng)的表達(dá)式是1 (a b且 c d)1 (a b且 c d)x2 (a b且 c d) B2 (a b且 c d)D.1 (a b且 c d) x2 (c d)1 (ab且 cd)x2 (ab)2 以下程序的運(yùn)行結(jié)果為 main()int x=2,y=-1,z=2;if(x<y)/*第一個(gè) if */if(y<0) z=0;/* 第二個(gè) if */

9、else z+=1;printf("%dn",z);A. 33 .有程序段如下:int a=1,b=2,c=3;if(a>b)c=a; a=b; b=c;執(zhí)行該程序段后,變量 a、b、c的值是 o.a=2, b=3, c=3A. a=1, b=2, c=3BC. a=2, b=3, c=1D.a=2, b=3, c=24.有程序如下:#include ""main()int c;while(c=getchar()!='n')switch(c-'2') case 0: case 1:putchar(c+4);case

10、2:putchar(c+4);break;case 3:putchar(c+3);default:putchar(c+2);break;printf("n");若運(yùn)行該程序時(shí),按如下形式從鍵盤輸入數(shù)據(jù),則程序的運(yùn)行結(jié)果為.668966輸入數(shù)據(jù):2473 ,C.A. 668977.66887665.執(zhí)行下面的程序段后,a和b的值分別為int a=3,b=5,c;c=(a>-b)a+:b-;A 3,2 B3,3 C 4,4 D4,5答案:1 D2 B3 B4 A5 BC語言測試題(第五章)1有程序段如下:int k=10;while(k=0)k=k-1;則下面描述中正確的

11、是 。A.語句“k=k-1;”被執(zhí)行10次B.語句“ k=k-1; "被執(zhí)行無限多次C.語句“k=k-1;” 一次也不執(zhí)行D.語句“ k=k-1; ”只執(zhí)行一次2有程序段如下:int k=10;dok=k-1;while(k>=0);則下面描述中正確的是 。A.語句“k=k-1;"執(zhí)行1次B.語句“ k=k-1; "執(zhí)行10次C.語句“k=k-1;"執(zhí)行11次D.語句“ k=k-1; "執(zhí)行12次3下面是一個(gè)程序段:int x,y;for(y=1,x=2;y<=50;y+)if(x>=10)break ;x+=5 ;執(zhí)行該程序

12、段后 ,x 值為 。A 2 B 7 C 12 D 154有程序段如下:int i,j;for(i=5;i;i-)for(j=1;j<5;j+)假若內(nèi)循環(huán)體內(nèi)不存在中止循環(huán)的控制語句,則內(nèi)循環(huán)體執(zhí)行的總次數(shù)為A. 20 B. 24 C. 25 D. 305下面是一個(gè)循環(huán)控制程序:#include ""#include ""main()float x,y,z;scanf("%f,%f",&x,&y);z=x/y;whileif(fabs(z)>x=y;y=z;z=x/y;elsebreak;printf(&qu

13、ot;%n",y);運(yùn)行該程序,按如下形式從鍵盤輸入數(shù)據(jù),程序的數(shù)出結(jié)果是鍵盤輸入數(shù)據(jù):,口A. B. C. D.答案:1. C 2.C 3. C 4. A 5. BC語言測試題(第六章)1 .若有數(shù)組定義int m口2=1,3,5,7,9,則以下敘述正確的是 A.該定義存在語法錯誤B.該定義等價(jià)于int m32=1,3,5,7,9C.該定義等價(jià)于int m2=1,3,5,7,9D.該定義等價(jià)于int m22=1,3,5,7,92 .對兩個(gè)數(shù)組a和b進(jìn)行如下的初始化:char a='a','b','c','d','

14、;e','f;char b="abcdef"則以下敘述正確的是。A. a數(shù)組與b數(shù)組完全相同B. a數(shù)組與b數(shù)組具有相同的長度C. a數(shù)組和b數(shù)組的最后一個(gè)字符都是字符串結(jié)束標(biāo)志符'0'D. a數(shù)組的長度比b數(shù)組的長度小3 .下面程序的功能是輸出數(shù)組s中最大元素的下標(biāo)。請?jiān)跈M線上填上適當(dāng)?shù)膬?nèi)容,使它能得出正確的結(jié)果。main()int k,p,s尸1,-9,72-10,3;for(p=0,k=p;p<6;p+)if(sp>sk);printf("%dn", k);4 .下面程序的功能是將一字符串中的小寫英文字母

15、全部改成大寫形式,然后輸出。請 在橫線上填上適當(dāng)?shù)某绦虼a,使它能輸出正確的結(jié)果。#include ""main()int i=0;char str80;scanf("%s",str);while ()if( )stri= stri-32;; printf("%sn", str);5 .下面程序的功能是將一個(gè)字符串str的內(nèi)容顛倒過來。請?jiān)跈M線上填上適當(dāng)?shù)膬?nèi)容,使它能輸出正確的結(jié)果。#include "" main()int i,j, ;char str="abcdefghijk"j=strle

16、n(str);for(i=0;i<j;i+,j-)k=stri;stri=strj;strj=k;printf("%sn",str);答案:1. B2. D3. k=p4. stri!= '0'或簡寫成 stri stri>= 'a'&& stri<= 'z' i+ 或 +i 或 i=i+1 或 i+=15.k -1 oC語言測試題(第七章)1 .以下代碼用來對函數(shù)進(jìn)行定義,正確的函數(shù)形式是 。A. double fun(int x,int y) z=x+y;return(z); B. fun

17、(int x,y) int z;return z; C. double fun(int x,int y) double z;z=x+y;return z; D. fun(x,y) int x,y;double z;z=x+y;return z; 2有下列函數(shù)調(diào)用語句,函數(shù)fun1() 的實(shí)參個(gè)數(shù)是fun1(a+b,(y=9,y*x),fun2(y,n,k);3下列函數(shù)調(diào)用錯誤的是。A max(a,b)Bax(3,a+b)C max(3,5)Dfloat max(c,5)4.在C程序中,下面描述正確的是 。A.函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套B.函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌

18、套C.函數(shù)的定義和函數(shù)調(diào)用都可以嵌套D.函數(shù)的定義和調(diào)用都不可以嵌套5下列關(guān)于參數(shù)的說法正確的是 。A.實(shí)參和與其對應(yīng)的形參各占用獨(dú)立的存儲單元B.實(shí)參和與其對應(yīng)的形參共用一個(gè)存儲單元C.形參是虛擬的,不占用存儲單元D.只有當(dāng)實(shí)參和與其對應(yīng)的形參同名時(shí)才共用存儲單元答案:1 C2 A3 D5 AC語言測試題(第八章)1 有如下定義:int k=2;int *ptr1=&k,*ptr2=&k;下面不能正確執(zhí)行的賦值語句是 。A. k=*ptr1+*ptr2;B. ptr2=k;C. ptr1=ptr2;D. k=*ptr1*(*ptr2);2若有如下定義:char s20,*ps

19、=s;則,以下賦值語句正確的是 。A. s=ps+s; B. ps=ps+20; C. s5=ps9; D. ps=s0;3 以下程序的運(yùn)行結(jié)果是。main()static int arr=6,7,8,9;int i;for(i=0;i<4;i+)printf("%d",*(arr+i);4 以下程序的輸出結(jié)果是。main()char *s="one","two","three",*p;p=s1;printf("%c,%sn",*(p+1),s0);A. n,two B. t,one C.

20、 w,one D. o,two5 .以下程序運(yùn)行時(shí),若輸入數(shù)據(jù)為17u18u19,則程序的輸出結(jié)果為 #incliude ""void rcircle(int *p1,int *p2,int *p3);void main()int a,b,c;int *p1,*p2,*p3;printf("Enter three integers:");scanf("%d%d%d",&a,&b,&c);p1=&a;p2=&b;p3=&c;rcircle(p1,p2,p3);printf("%5

21、d%5d%5dn",a,b,c);void rcircle(int *pr1,int *pr2,int *pr3)int temp;temp=*pr3;*pr3=*pr2;*pr2=*pr1;*pr1=temp;答案:1. B2. C3. 67894. C5. 19 17 18C語言測試題(第九章)1.關(guān)于結(jié)構(gòu)體類型的定義,下列描述正確的是 。A.定義結(jié)構(gòu)體類型時(shí),系統(tǒng)會根據(jù)各個(gè)成員的大小為其分配內(nèi)存空間。B.定義結(jié)構(gòu)體類型時(shí),系統(tǒng)會根據(jù)最大成員的大小為其分配內(nèi)存空間。C.定義結(jié)構(gòu)體類型時(shí),不會產(chǎn)生內(nèi)存分配。2以下各項(xiàng)用于定義結(jié)構(gòu)體類型,并定義結(jié)構(gòu)體變量,其中正確的是D. 以上說法都

22、不對。A. struct studentB. struct student stu1,stu2; char num5;struct studentint score; char num5;int score;student stu1,stu2;C. struct student char num5;int score=96;D. struct student char num5;int score;struct student stu1,stu2; struct student stu1,stu2;3.以下形式定義了結(jié)構(gòu)體變量member,對其成員name的引用有多種形式。在下面的引用形式中,

23、錯誤的是struct char name10;int age;member,*p;A.B. nameC. p->nameD. (*p).name4下面的程序運(yùn)行后的輸出結(jié)果為 struct stu int num;char name10;int age;void fun(struct stu *p)printf("%sn",(*p).name);main()structstustudents3=9801,"Zhang",20,9802,"Wang",19,9803,"Zhao",18;fun(students

24、+1);5有程序如下:#include ""struct dateint year,month,day;today;void main()printf("%d,%dn",sizeof(struct date),sizeof(today);該程序執(zhí)行后輸出的結(jié)果是 。A. 2,2 B. 6,2 C. 6,6 D. 2,6答案:1 C2 D3 B4 Wang5 CC語言測試題(第十章)1已知 fp 為文件類型指針,若要打開e 盤 text 文件夾(目錄)下的文件,下面各選項(xiàng)中正確的是 。A. fp=fopen(e:text,"r") B.

25、 fp=fopen(e:text,"r")C. fp=fopen("e:text","r") D. fp=fopen("e:text","r")2使用fclose(fp) 函數(shù)正常關(guān)閉 fp 文件后,函數(shù)fclose() 的返回值是。A. 1 B. 0 C.- 1 D. 非零值3函數(shù)調(diào)用fseek (fp,-20L,2) 的含義是 。A. 將文件位置指針移到距離文件頭20 個(gè)字節(jié)處B. 將文件位置指針從當(dāng)前位置向后移動20 個(gè)字節(jié)C. 將文件位置指針從文件末尾處向文件頭方向移動20 個(gè)字節(jié)D.

26、將文件位置指針移到離當(dāng)前位置20 個(gè)字節(jié)處4有如下定義:struct stu a20;FILE *fp;設(shè)文件中以二進(jìn)制文件格式存放了 5 個(gè)班的學(xué)生數(shù)據(jù),且文件已打開, fp 指向文件頭。若要從文件中讀出 20 個(gè)學(xué)生的數(shù)據(jù)放入 a 數(shù)組中,以下語句不正確的是 。A. for(i=0;i<20;i+) fread(&ai,sizeof(struct stu),1L,fp);B. for(i=0;i<20;i+) fread(a+i;sizeof(struct stu),1L,fp);C. fread(a,sizeof(struct stu),20L,fp);D. for(

27、i=0:i<20;i+) fread(ai,sizeof(struct stu),1L,fp);答案:C語言測試題(第十一章)1以下程序的運(yùn)行結(jié)果是# define N 4# define M N+2# define K M*M/2main()int i;i=N+M+K;printf("%dn",i);2以下程序的輸出結(jié)果是。#define T(x,y) (x)<(y)(x):(y)main()int i,j,k;i=10,j=15,k=10*T(i,j);printf("%dn",k);A. 15B. 100C. 10D. 1503 .在下

28、面的宏定義中,能將宏調(diào)用M(a+b)展開為(a+b)*(a+b)的宏定義是 A. M(x) _x*xB. M_(x) | |(x)*(x)C. M(x) u(x)*(x)D. A,B,C都可以4 .以下程序的執(zhí)行結(jié)果是 。#include ""#define PI#define R 5#define K 1main()#if Kprintf("%",2*PI*R);#else printf("%",PI*R*R);#endifA. B. C. D.5.在下面程序的橫線位置填上合適的代碼,使程序能夠正常運(yùn)行。typedef structchar title20;float price;BOOK;main();scanf("%s%f",&printf("Title: %s price: %n",;答案:1 23 2 A 3 C 4 C 5 BOOK variableC語言測試題(第十二章)1. C+對C語言作了很多改進(jìn),下列描述中 使得C語言發(fā)生了

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論