四川計算機二級第34次C語言筆試真題答案_第1頁
四川計算機二級第34次C語言筆試真題答案_第2頁
四川計算機二級第34次C語言筆試真題答案_第3頁
四川計算機二級第34次C語言筆試真題答案_第4頁
四川計算機二級第34次C語言筆試真題答案_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、四川省普通高等學校計算機應用知識和能力第三十四次等級考試二級(C與C+語言)筆試試卷時間:2011年4月16日上午 9:0011:00第一部分軟件技術基礎(共15分)一、是非判斷題(每小題1分,共10分)(判斷下列各題是否正確,如正確,在客觀答題紙上對應編號選A,否則選B )1 .作業(yè)與進程的主要區(qū)別是前者由用戶提交,后者是由系統(tǒng)自動生成。(A )2 .從循環(huán)鏈表中任意一個結點出發(fā)都能訪問到整個鏈表。(A )3 .如果分時操作系統(tǒng)的時間片一定,那么用戶數越少,則響應時間越長。(A )4 .隊列在操作系統(tǒng)的各種資源請求排隊及數據緩沖區(qū)管理中廣泛使用。(A )5 .死鎖產生的根本原因是操作系統(tǒng)能夠

2、提供的資源比請求該資源的進程數少。(B )分析:死鎖產生原因:爭奪共享資源;進程推進順序不當6 .虛擬設備技術能將獨占設備轉換為可共享的設備,提高資源利用率。(A )7 .鏈棧與順序棧相比,有一個明顯的優(yōu)點是通常不會出現(xiàn)棧滿的情況。(A )8 .軟件維護是長期的過程,交付使用的軟件仍然需要排錯、修改和擴充。(A )9 .墨盒測試要求測試人員根據程序內部邏輯結構設計或選擇測試用例。(B )分析:白盒測試才是根據程序內部邏輯結構設計測試用例,黑盒測試是功能測試10 .軟件設計時,應力求增加模塊的耦合,減少模塊間的內聚。(B )分析:軟件設計時,應力求增加模塊的內聚,減少模塊間的耦合二、選擇題(每小

3、題1分,共5分)1 .設已將元素a1、a2、a3依次入棧,元素a4正等待進棧。那么下列 4個序列中不可能出現(xiàn)的出棧序列是( A )。四川省計算機二級考試第三十四次C與C+語言筆試試卷 第1頁共11頁11 (A) a3、a1、a4、a2(B) a3、a2、a4、a1(D)虛擬(D)等待就緒(D)頁式存儲管理(D)觸發(fā)時間(C) a3、a4、a2、a1 (D) a4、a3、a2、a12 .以下哪一個不是操作系統(tǒng)的特征( B )。12 (A)并發(fā)(B)分解(C)共享3 .下列的進程狀態(tài)變化中,( C )變化是不可能發(fā)生的。13 (A)運行 就緒(B)運行 等待 (C)等待 運行4 .很好地解決了碎片

4、問題的存儲管理方法是( D )。14(A)多重分區(qū)管理(B)段式存儲管理(C)可變分區(qū)管理5 .作業(yè)從進入后備隊列到被調度程序選中的時間間隔稱為(B )。15(A)周轉時間(B)等待時間(C)響應時間第二部分C與C+語言程序設計(共85分),、單項選擇題(每小題1分,共10分)1 .以下合法的字符常量是( C)。16 (A) a”(B) 72'(C) 0x12'(D) ab;2 .以下程序的結果是(B )。#include "stdio.h"void main()unsigned int a=3,b=10;printf("%dn",a&l

5、t;<2|b>>1);17 (A) 1(B) 13(C) 12(D) 53 .以下程序的輸出結果是(D )。#include "stdio.h"void main()int a=-1,b=4,k;k=(+a)&&!(b-<=0);printf("%d %d %dn",k,a,b);18 (A)1 0 4(B)1 0 3(C) 0 0 3(D)0 0 44 .以下程序的輸出結果是(C )。#include <string.h>void main()char p20='a','b&#

6、39;,'c','d',q="abc",r="abcde"strcpy(p+strlen(q),r);strcat(p,q);printf("%d %dn",sizeof(p),strlen(p);19 (A) 20 9(B) 9 9(C)20 11(D)11 115 .下列對C語言字符數組的描述中錯誤的是( C )。20(A)字符數組可以存放字符串(B)字符數組的字符串可以整體輸入、輸出(C)可以在程序中用賦值運算符“=”對字符數組進行整體賦值(D)不可以用關系運算符對字符數組中的字符串進行比較6 .

7、下述程序的輸出結果是( D )。#include "stdio.h"void main()int a尸7,4,6,3,10;int m=10,k,*ptr=&a0;for(k=0;k<5;k+)m=*(ptr+k)<m?*(ptr+k):m;四川省計算機二級考試第三十四次C與C+語言筆試試卷 第2頁共11頁printf("%dn",m);21 (A) 10(B) 4(C) 6(D) 37 .有如下程序#include "stdio.h" void main()int a=2,b=-1,c=2; if(a<b)

8、if(b<0) c=0; elsec+;printf("%dn",c); 該程序的輸出Z果是( C )o22 (A) 0(B) 1(C) 2(D) 38 .根據下面的結構體類型及其結構數組的定義,值等于 A '的表達式是(D )。 struct seasonchar name10;int day;struct season s4= Spring ”,90,"Summer”,91,"Autumn ”,92,"Winter ”,92;(B) (D) 0(C)9(D)723 (A) (C) s2

9、.name9 .運行以下程序的輸出結果為(#include "stdio.h"#define R 1+2#define S(r) r*r#define V(r) S(r)*R void main() int 門=1+2;printf("%d",V(r1);24 (A)27(B)1110 .以下不能對二維數組 a進行正確初始化的語句是(A )。25(A) int a 2 3 =1,2,3,4,5,6;(B) int a 3 =1,2,0;(C) int a 2 3 =0;(D) int a 3 =1,2,3,4,5,6;、讀程序回答問題(每個選擇3分,共4

10、5分)1.讀下面程序并回答問題:#include "stdio.hvoid main() int x=1,y=0,a=0,b=0; switch(x)case 1:switch(y)case 0:a+;break;case 1:b+;break;case 2:a+;b+;break;printf("%d,%dn”,a,b);(1)程序的運行結果為( A )。26 (A) 2,1(B) 1,2(C) 1,1(D) 0,0D )。(2)將程序中的switch(x)更改為switch(x!=1),其程序運行結果是(27 (A) 2,1(B) 1,2(C) 1,1(D) 0,02.

11、讀下面程序并回答問題:#include "stdio.h"#include "string.h"void abc(char *name口,int len) char *temp; int i,j,k;for(i=0;i<len-1;i+) k=i;for(j=i+1;j<len;j+)if(strcmp(namek,namej)>0) k=j; if(i!=k) temp=namei;namei=namek;namek=temp; void main()static char *name="turbo c",&quo

12、t;fortan","basic","forbase","java"int i,n=5;abc(name,n);for(i=0;i<5;i+)printf("%c",*namei);四川省計算機二級考試第三十四次C與C+語言筆試試卷 第5頁共11頁printf("n");函數abc的功能是(28 (A)按字符排序(C)交換字符串 程序的運行結果是(B )。(B)按字符串排序(D)字符串倒序C )。29 (A) tfbfj (B) turbo (C) bffjt (D) java3

13、.讀下面程序并回答問題:#include "stdio.h"int func(int x)int y=0;static int z=3;x=z+,y+;return x;void main()int a=2,i,b;for(i=0;i<2;i+)b=func(a+);printf("%dn",b);(D) 5該程序運行的Z果是( C )o30 (A)2(B) 3(C) 44.有下列程序(考點:函數(地址參數卜指針運算)#include "stdio.h"int temp;void main()int fun(int n);int

14、 num,sum;num=5684;temp=num;sum=fun(num);printf("=%dn",sum);int fun(int n)int remind;static int sum=0;if(n>=10)fun(n/10);remind=n%10;sum+=remind;if(temp>n)printf("%d+",remind);elseprintf("%d",remind);return sum;(1)程序中的fun函數被調用次數為( C )。31 (A)2(B) 3(C) 4(D) 5(2)程序的輸出

15、結果為( A )。(D) 4+8+6+5=2332 (A)5+6+8+4=23(B) 5+6+8+4+=23(C)4+8+6+5+=235.讀下面程序并回答問題。#include "stdio.h"char x48="First","Second","Third","Four"int a4=6,7,6,5;void main()int i;char y48;FILE *fp;fp=fopen("TEST.txt","w");for(i=0;i<4;i

16、+)fputs(xi,fp);fclose(fp);fp=fopen("TEST.txt","r");for(i=0;i<4;i+)fgets(yi,ai,fp);fclose(fp);for(i=0;i<4;i+)printf("%sn",*(y+i);(1)程序運行的結果是(A )33 (A) First(B) First(C) First”SecondFirstSecond”ThirdFirstThird ”FourFirstFour”(2)以下哪種說法是正確的( C )。(D) Four ThirdSecondFi

17、rst四川省計算機二級考試第三十四次C與C+語言筆試試卷 第7頁共11頁34(A) TEST.txt僅在程序運行期間存在,程序結束后就沒有了(B) TEST.txt文件必須在程序運行之前建立好文件(C)如果TEST.txt文件不存在,程序運行中會自動建立 TEST.txt(D) TEST.txt始終是無內容的空文件6.讀下面程序并回答問題。#include "stdio.h"void main()char s50="de123116abc5656"int i,b10=0,cnt=0;for(i=0;si!='0'i+)if(si>=

18、'0'&&si<='9')bsi-'0'+;else cnt+;printf("%dn",cnt);for(i=0;i<10;i+)printf("%d",bi);(1) main函數中第一個 printf輸出cnt的值為(B )36 (A) 15(B) 5(C) 9(D) 16(2)該程序的功能是( C )37 (A)取出字符串中的數字子串連接起來(B)統(tǒng)計數字子串在字符串中出現(xiàn)的次數(C)將數字子串轉換為整數并累加(D)將字符串中的數字字符轉換為數字,結果加起來乘以1038

19、讀下面程序,回答問題。#include "stdio.h"int fun(int *a,int n)if(n>1) return *a+fun(a+1,n-1);elsereturn *a;void main()int a10=1,2,3,4,5,6,7,8,9,10,s;s=fun(a+3,3);printf("%dn",s);(1)函數fun與下面非遞歸程序等價的是( A )。37 (A)int fun(int *a,int n)int i,s=0;for(i=0;i<n;i+) s=s+ai;return s;(C)int fun(in

20、t *a,int n)int i,s=0;for(i=0;i<n;i+) s=ai;reutrn s;(2)程序的輸出結果為(38 (A)55(B)1239 讀下面程序,回答問題。#include "stdio.h"void sort(int a,int n)(B) int fun(int *a,int n)int i,s=0;for(i=0;i<n;i+) s=s+*a;return s;(D) int fun(int *a,int n)int i,s=0;for(i=0;i<n;i+) s=s+an-i;return s;C )。(C) 15(D) 1

21、8int i,j,t;for(i=0;i<n-1;i+) for(j=0;j<i;j+)if(a加ai)t=aj;aj=ai;ai=t;void main()int x10=1,0,-76,4,8,12,65,100,-45,123;int i;sort(x+5,5);printf("%d",x5);(1)程序中sort函數的功能是(C )39 (A)用起泡法對含有 (B)用選擇法對含有(C)用二分法對含有 (D)用起泡法對含有n個元素的數組 n個元素的數組 n個元素的數組 n個元素的數組a從小到大的排序 a從小到大的排序 a從小到大的排序 a從大到小的排序(2

22、)該程序的運行輸出結果為( B )40 (A)-76(B)-45(C) 8(D) 123注意:請把下面“程序填空”中各小題答案寫在主觀題答題紙上 每一個空只填一個語句或一個語句所缺的部分內容三、程序填空(每空2分,共30分)1 .程序中函數fun()的功能是:查找字符串str中指定字符ch出現(xiàn)的次數并返回,并將該字符出現(xiàn)時的下標位置記錄于數據組bb中。例如在字符串"1233211234567"中查找字符'1,其結果為3次,下標分別為0,5, 6。請?zhí)羁铡?include "stdio.h"#define N 20int fun(char *str

23、,char ch,int *bb) int i=0,n=0; while(*str) if( stri=ch )bb _n+=i;str+; i+; return _ n _; void main() char strN,ch;int bbN=0,i,n;printf("nInput the original string:");四川省計算機二級考試第三十四次C與C+語言筆試試卷 第8頁共11頁gets(str);printf("nInput character:");scanf("%c",&ch);n=fun(str,ch,

24、bb);printf("nThe number of character is:%dn",n);printf("nThe suffix of character:");for(i=0;i<n;i+) printf("%d",bbi);2 .已知head指向單鏈表的第一個結點,以下程序調用函數 print輸出這一單鏈表。請?zhí)羁铡?#include "stdio.h" #include <malloc.h>#define Len sizeof(struct student) struct studen

25、tint data;struct student *next;struct student *creat()return(head);print(struct student *head)struct student *p;printf("nThe linklist is:");p=head;if(head=!NULL)while(p->next !=NULL) printf("%d", 一 p->data_);p= p->next;printf("%d",p->data);void main()struct

26、student *head;head=creat() _;print(head);a中相鄰相同的數刪得只3 .下列程序的功能是:假設a數組中的數,按由小到大的順序存放。將數組剩一下,然后以每行5個數的形式輸出a數組中的數。請?zhí)羁铡?include "stdio.h#define MAX 20void main()int aMAX,i,j,n;for(i=0;i<MAX;i+)scanf("%d", a+i);n=i=MAX-1;while( i )if(ai=ai-1)for(j=i;j<=n;j+)aj-1=aj;n=n-1;i=i-1;for(i=0;i<=n;i+)if(i%5=0)printf( 'n");print

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論