<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 試題

    計算機二級《C語言》選擇題題庫

    時間:2025-05-20 11:50:55 試題 我要投稿

    2016年計算機二級《C語言》選擇題題庫

      (1)有以下程序:

      程序運行后的輸出結果是( )。

      (2)有以下程序:

      程序運行后的輸出結果是( )。

      A.02356

      B.0235

      C.235

      D.2356

      (3)以下關于retllm語句的敘述中正確的是( )。

      A.一個自定義函數中必須有一條return語句

      B.一個自定義函數中可以根據不同情況設置多條retum語句

      C.定義成void類型的函數中可以有帶返回值的return語句

      D.沒有return語句的自定義函數在執行結束時不能返回到調用處

      (4)已定義以下函數:

      fun函數的返回值是( )。

      A.一個整數

      B.不確定的值

      C.形參P中存放的值

      D.形參P的地址值

      (5)以下程序段完全正確的是( )。

      int * p;scanf(”%d”,&p);

      B.int*p;scanf(”%d”,P);

      C.int k,* P:&k;scanf(’’%d”,P);

      D.int k,*p;*P=&k;scanf(”%d”,P);

      (6)設有定義:

      double a[10],*s=a;

      以下能夠代表數組元素a[3]的是( )。

      A.($s)[3]

      B.}(s+3)

      C.*s[3]

      D.}s+3

      (7)有以下程序

      程序運行后的輸出結果是( )。

      A.6,2,3,4,5,

      B.2,2,3,4,5,

      C.1,2,3,4,5,

      D.2,3,4,5,6,

      (8)有以下程序:

      程序運行后的輸出結果是( )。

      A.4

      B.34

      C.31

      D.32

      (9)以下選項中正確的語句組是( )。

      A.char*s;8={1.BOOK!”}i

      B.char*s;8=”BOOK!”;

      C.char S[10];S=”BOOK!”;

      D.char S[];S=”BOOK!”;

      (10)若有定義語句:

      char}sl=‘’0K”,:It s2=”ok”;

      以下選項中,能夠輸出“OK”的語句是( )。

      A.if(strcmp(sl,s2)!=0)puts(s2);

      B.if(strcmp(sl,s2)!=0)puts(s1);

      C.if(strcmp(sl,s2)==1)puts(s1);

      D.if(strcmp(sl,s2)==0)puts(s1);

      (11)有以下程序:

      程序運行后的輸出結果是( )。

      A.Afternoon

      B.ftemoon

      C.Morning

      D.oming

      (12)有以下程序,程序中庫函數islower(ch)用以判斷ch中的字母是否為小寫字母:

      程序運行后的輸出結果是( )。

      A.ab cd EFg!

      B.Ab Cd EFg!

      C.ab cd EFG!

      D.aB cD EFG!

      (13)有以下程序:

      程序運行后的輸出結果是( )。

      A.0

      B.9

      C.6

      D.8

      (14)有以下程序:

      程序執行后的輸出結果是( )。

      A.55.

      B.50

      C.45

      D.60

      (15)有以下結構體說明、變量定義和賦值語句:

      則以下scanf函數調用語句有錯誤的是( )。

      scanf(”%s”,s[0].name);

      B.scanf(”%d”,&s[0].age);

      C.scanf(”%c”,&(ps一>sex));

      D.scanf(”%d”,ps一>age):

      (16)若有以下語句:typedef struct S{int 9;char h;}T;以下敘述中正確的是( )。

      A.可用s定義結構體變量

      B.可用T定義結構體變量

      C.S是struct類型的變量

      D.T是struct S類型的變量

      (17)有以下程序:

      
      

      程序運行后的輸出結果是( )。

      A.1002,ZhangDa,1202.0

      B.1002,ChangRon9。1202.0

      C.1001,ChangRon9,1098.0

      D.1001,ZhangDa,1098.0

      (18)設有宏定義:

      #define IsDIV(k,n)((k%1"1==1)?1:O)且變量m已正確定義并賦值,則宏調用:

      IsDIV(m,5)&&IsDIV(m,7)為真時所要表達的是( )。

      判斷m是否能被5和7整除

      B.判斷m被5和7整除是否都余l

      C.判斷m被5或者7整除是否余1

      D.判斷m是否能被5或者7整除

      (19)有以下程序:

      程序運行后的輸出結果是( )。

      A.3

      B.1

      C.2

      D.0

      (20)有以下程序:

      
      

      程序運行后的輸出結果是( )。

      A.1 2

      B.1 4

      C.123 4

      D.123 456

      參考答案與解析

      (1)B

      【解析】第一次執行外循環,i的值為3,第一次執行內循環j的值為1,j<=2條件成立,打印i+j的值,即4;第二次執行內循環J的值為2,j<=2條件成立,打印i+j的值,即5;再判斷條件不成立,打印回車換行符,跳出內循環。第二次執行外循環,i的值為2,內循環的執行同第一次一樣,所以打印3和4,打印回車換行,結束內循環。第三次執行外循環i的值為1,同理內循環中打印2和3,打印回車換行符,結束內循環。

      (2)C

      【解析】k的值為5,逐個對caBe語句進行匹配,均不匹配,執行defau1t下的語句n=0;k一一。再執行case2:ca804:后面的語句n+=2;k一一;。執行break語句跳出switch判斷,打印n的值,即2。經過第一次循環后,k的值為3,然后進行k>0&&11<5條件判斷為真。第二次執行循環體,執行case3:后面的語句n+=1;k一一;。再執行break語句跳出循環,此時打印n的值3,此時k的值為2。第三次執行循環體k的值為2,滿足條件,執行case2:case4:后面的語句n+=2;k一一;。執行break語句跳出循環體。打印n的值5。此時n不滿足條件k>0&&n<5,所以結束循環。整個程序的打印結果為235。

      (3)B

      【解析】在函數中允許有多個Iett1r11語句,但每次調用只能有一個return語句被執行,因此只能返回一個函數值。定義成void類型的函數,不允許從該函數取得返回值,也不允許使用return語句,c選項描述錯誤。沒有return語句的函數在執行到函數的最后一條語句后會自動返回到調用處,A、D選項描述錯誤。因此B選項正確。

      (4)A

      【解析】返回值為指針變量指向的數據,該數據已被定義為整型。因此A選項正確。

      (5)C

      【解析】A選項中錯在沒有對指針進行初始化,是無效指針,并且在scanf(”%d”,&p)中無需再進行取地址操作;B選項中沒有對指針進行初始化,是無效指針;D選項中語句+P=&k;的左端t pt是指針所指內存空間的值,&k是地址,應為P=&k。因此C選項正確。

      (6)B

      【解析】語句·s=a;表示指針變量s指向一維數

      組a的首地址。a[3]表示引用數組a的第4個元素,+(s+i)表示引用指針8所指數組a的第i+1個元素,選項A、C、D的表示方法錯誤,只有B選項正確。

      (7)A

      【解析】本題考查的是函數的地址調用,將數組名作為數組首地址進行傳遞,然后取首個數組元素值進行加1運算,循環5次。因此A選項正確。

      (8)C

      【解析】本題重點考察二維數組名作為實參進行參數傳遞,在主函數中調用了fun函數,實參為二維數組名a和兩個整數4.0,這樣對應定義fun函數首部有三種形式,這里采用了第一種形式——行指針,這樣在fun函數對s[i][j]進行操作實際上就是對主函數中的a[i][j]進行操作,再分析fun函數的作用便可知,是求二維數組第0列中最大的那個元素。因此C選項正確。

      (9)B

      【解析】A選項去掉大括號就正確了;c選項和D選項應在定義時賦初值。因此B選項正確。

      (10)B

      【解析】strcmp(s1,s2)是字符串比較函數,比較規則是兩個字符串自左向右逐個字符相比(按照ASCI1碼值大小),-以第一個不相同的字符的大小作為比較結果。因為。O。<10.,所以strcmp(s1,s2)為負值,只有B選項正確。

      (11)A

      【解析】本題主函數中定義了一個指針數組a,可以將它看成一個以字符指針為元素的一維數組。和一般的一維數組名能賦給同類型指針變量一樣,該字符指針數組也可以賦給指向字符指針的指針,所以數組名a可以用做函數fun()的實參。在fun()函數中,++P操作使形參P往后移動一個字符指針的位置,即指針a[1]的位置。故最后通過礎nd()函數輸出的字符串為“Afternoon”。因此A選項正確。

      (12)D

      【解析】調用缸函數后,實參數組名s1傳給形參指針P,P也指向數組s1。m函數的功能是遍歷字符數組中的所有字符,如果某一個字符是空格并且前一個字符是小寫字母的話,就把前一個字符轉換為大寫。程序中語句P[i一1]=P[i—1]一ga’+-A‘;即P[i一1]=P[i一1]一32,意思是將P[i一1]中的字符轉換為大寫。因此D選項正確。

      (13)C

      【解析】主函數中調用f函數,同時將數值3傳遞給變量x,執行條件不滿足條件if(x==0I1X==1);跳過re—turn(3);,直接執行語句Y=X}X—f(x一2);這里f(x一2)為函數的遞歸調用,再次訶用f函數,此時x=1,判斷條件成立,返回3給f(1),Y=3}3—3=6,最后將6返回主函數,并進行輸出。因此c選項正確。

      (14)D

      【解析】內部靜態變量是始終存在的,當函數被調用退出后,內部靜態變量會保存數據,再次調用該函數時,以前調用時的數值仍然保留著。m(a,5)的值是15,再次調用后Ⅲm=15,所以fun(b,4)=45,s=45+15=60。因此D選項正確。

      (15)D

      【解析】本題考查結構體的相關知識,題目中需要輸入一個變量,scanf要求參數為指針,而D選項中ps一>age為一個變量,不是指針,所以錯誤。

      (16)B

      【解析】本題考查typ1edef重新聲明一種結構體類型,那么T為結構體類型,而不是結構體變量,所以B選項正確。

      (17)B

      【解析】本題考查結構體變量的引用以及作為函數參數,題目雖然看似復雜,其實比較容易,f函數的參數是結構體變量,然后對參數重新賦值并返回,所以該題目的答案為B選項。

      (18)B

      【解析】本題考查邏輯運算符的相關概念,邏輯與若要為真,那么兩邊都要為真,即m都能被5和7整除都余1,所以選項B正確。

      (19)A

      【解析】本愿考查位運算符以及相關運算,‘為按位或,&為按位與,部么a'b為3,再與c按位與仍然為3,所以答案為A選項。

      (20)D

      【解析】fprintf()函數向文本文件輸出數據,將輸出的內容按格式輸出翻硬盤的文本文件中。執行兩次fprintf后。文件中的內容為。123 456”,所以D選項正確。

    【計算機二級《C語言》選擇題題庫】相關文章:

    計算機二級《C語言》選擇題題庫與答案07-27

    計算機二級《C語言》選擇題題庫及答案11-16

    計算機二級c語言題庫2016精選06-23

    2016年計算機二級《C語言》選擇題題庫與答案05-02

    2016年計算機二級《C語言》選擇題題庫與解析09-14

    2016年12月計算機二級《C語言》選擇題題庫09-23

    2015計算機二級c語言上機題庫06-19

    2016計算機二級C語言題庫及答案10-14

    計算機二級C語言選擇題11-11

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人