




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
四川計(jì)算機(jī)C語(yǔ)言考試筆試真題32次含答案資料僅供參考四川省普通高等學(xué)校計(jì)算機(jī)應(yīng)用知識(shí)和能力第三十二次等級(jí)考試二級(jí)(C與C++語(yǔ)言)筆試試卷時(shí)間:4月17日上午9:00—11:00第一部分軟件技術(shù)基礎(chǔ)(共15分)一、是非判斷題(每小題1分,共10分)(判斷下列各題是否正確,如正確,在客觀答題紙上對(duì)應(yīng)編號(hào)選A,否則選B)1.在程序設(shè)計(jì)中,常見一維數(shù)組來表示線性表的順序存儲(chǔ)空間。 (1)2.軟件測(cè)試的目的是為用戶提供沒有錯(cuò)誤的程序。 (2)3.棧頂?shù)奈恢弥荒苓M(jìn)行進(jìn)棧操作不能進(jìn)行退棧操作。 (3)4.處于等待狀態(tài)的進(jìn)程,若其等待的事件已發(fā)生,就立即轉(zhuǎn)入運(yùn)行狀態(tài)。 (4)5.線性表若采用鏈?zhǔn)酱鎯?chǔ)表示時(shí)其結(jié)點(diǎn)之間的存儲(chǔ)單元地址能夠不連續(xù)。 (5)6.在進(jìn)行插入排序時(shí),其數(shù)據(jù)比較次數(shù)與數(shù)據(jù)的初始排列有關(guān)。 (6)7.數(shù)據(jù)的邏輯結(jié)構(gòu)是從邏輯關(guān)系上描述數(shù)據(jù),它與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)無(wú)關(guān),是獨(dú)立于計(jì)算機(jī)的。 (7)8.在操作系統(tǒng)中,進(jìn)程最基本的特征是靜態(tài)性和并發(fā)性。 (8)9.軟件危機(jī)是由于軟件產(chǎn)品過多而產(chǎn)生的。 (9)10.面向過程系統(tǒng)需求分析使用的主要工具是數(shù)據(jù)流圖和數(shù)據(jù)字典。 (10)二、選擇題(每小題1分,共5分)1.進(jìn)程從運(yùn)行狀態(tài)進(jìn)入就緒狀態(tài)的原因可能是(11)。11(A)時(shí)間片用完 (B)等待某一事件(C)等待的事件已發(fā)生 (D)被選中占有處理機(jī)2.需求分析中開發(fā)人員主要從用戶那里了解(12)。12(A)軟件怎樣做 (B)軟件做什么(C)輸入的信息 (D)軟件的測(cè)試3.隊(duì)列的操作原則是(13)。13(A)先進(jìn)后出 (B)先進(jìn)先出 (C)只進(jìn)不出 (D)只出不進(jìn)4.在需要經(jīng)常查找結(jié)點(diǎn)的前驅(qū)后后繼的情況下,使用(14)比較合適。14(A)單鏈表 (B)循環(huán)鏈表(C)雙鏈表 (D)順序表5.任何兩個(gè)并發(fā)進(jìn)程之間(15)。15(A)一定存在互斥關(guān)系 (B)一定存在同步關(guān)系(C)一定彼此獨(dú)立無(wú)關(guān) (D)可能存在同步或互斥關(guān)系
第二部分C與C++語(yǔ)言程序設(shè)計(jì)(共85分)一、單項(xiàng)選擇題(每小題1分,共10分)1.若x和y為double類型,則表示式x=1,y=x+3/2的值為(16)。(考點(diǎn):數(shù)據(jù)類型、運(yùn)算符)16(A)1 (B)2 (C)2.0 (D)2.52.如果a,b,c,x,y均為int型變量,x=5,y=10,則執(zhí)行下面語(yǔ)句后,a,b,c的值分別為(17)。a=(--y==x++)?--y:++x;(考點(diǎn):數(shù)據(jù)類型、運(yùn)算符)b=y++;c=x;17(A)a=7,b=9,c=7 (B)a=7,b=9,c=6(C)z=6,b=9,c=7 (D)z=6,b=9,c=63.執(zhí)行下面語(yǔ)句段的輸出結(jié)果是(18)。(考點(diǎn):邏輯運(yùn)算符)inti=1,j=1,k=2;if((j++||k++)&&i++)printf("%d,%d,%d\n",i,j,k);18(A)1,1,2 (B)2,2,1 (C)2,2,2 (D)2,2,34.若要求表示“a不等于0”的關(guān)系,則不能正確表示這一關(guān)系的表示式為(19)。(考點(diǎn):關(guān)系運(yùn)算)19(A)a<>0 (B)a (C)a>0||a<0 (D)a!=05.若有說明inta,*p=&a;則scanf("%d",*p);語(yǔ)句不能正確為變量賦值的原因是(20)。(考點(diǎn):指針)20(A)*p表示的是指針變量p的地址(B)*p表示的是變量a的值,而不是變量a的地址(C)*p表示的是指針變量p的值(D)*p只是用來說明p是一個(gè)指針變量6.若有如下說明,則能使指針變量p的值增加的表示式是(21)。(考點(diǎn):結(jié)構(gòu)體指針)structws{inta;int*b;}*p;21(A)++p->a (B)p->b++ (C)p->a++ (D)(p++)->a7.以下能對(duì)二維數(shù)組a進(jìn)行正確初始化的是(22)。(考點(diǎn):二維數(shù)組)22(A)inta[2][]={{1,0,1},{5,2,3}}; (B)inta[][3]={{1,2,3},{4,5,6}};(C)inta[2][4]={{1,2,3},{4,5},{6}}; (D)inta[][3]={{1,0,1},{},{1,1}};8.有以下結(jié)構(gòu)體說明和變量定義:(考點(diǎn):鏈表操作)structnode{intdata;Structnode*next;}*p,*q,*r;建立如圖所示的鏈表結(jié)構(gòu),指針變量p、q分別指向如圖所示的結(jié)點(diǎn),指針變量r指向一新結(jié)點(diǎn),則能夠?qū)崿F(xiàn)將r指向的結(jié)點(diǎn)插入到p、q所指結(jié)點(diǎn)之間的語(yǔ)句組是(23)。23(A)q=r;p->next=q->next; (B)p->next=r;r->next=p->next;(C)r->next=q;p->next=r; (D)p=r;r->next=q;9.以下程序的運(yùn)行結(jié)果為(24)。(考點(diǎn):宏定義)#define<stdio.h>#definePT3.5#defineS(x)PT*x*xvoidmain(){inta=1,b=2;printf("%4.1f\n",S(a+b));}24(A)14.0 (B)31.5 (C)7.5 (D)10.510.下面程序段的運(yùn)行結(jié)果為(25)。(考點(diǎn):位運(yùn)算)inta=9,b=020;printf("%o\n",~a&b<<1);25(A)40 (B)41 (C)42 (D)43二、讀程序回答問題(每個(gè)選擇3分,共45分)1.有如下程序:(考點(diǎn):字符數(shù)組、函數(shù)(地址參數(shù)))intcount(char*str,charsubstr[20]){inti,j,k,num=0;for(i=0;*(str+i)!='\0';i++){j=i;k=0;while(substr[k]==str[j]){k++;j++;}if(substr[k]=='\0')num++;}returnnum;}voidmain(){charstr[80],substr[20];gets(str);gets(substr);printf("%d\n",count(str,substr));}(1)若運(yùn)行程序時(shí)輸入abcdabad和ab兩個(gè)字符串,則輸出結(jié)果為(26)。26(A)3 (B)4 (C)2 (D)11(2)該程序的功能是(27)。27(A)比較兩個(gè)字符串str和substr的大小(B)統(tǒng)計(jì)子串substr在母串str中出現(xiàn)的次數(shù)(C)將子串substr復(fù)制到母串str中(D)統(tǒng)計(jì)兩個(gè)字符串中字符的總個(gè)數(shù)2.有下列程序(考點(diǎn):函數(shù))#include<stdio.h>intfun(inta,intb){staticc=0;if(a>b)c=c+a;elsec=c+b;returnc;}voidmain(){inta=2,b=5,c=6,d;d=fun(2*a,fun(b,c));printf("%d",d);}(1)fun(2*a,fun(b,c))的函數(shù)調(diào)用中,實(shí)參的個(gè)數(shù)為(28)。28(A)1 (B)2 (C)3 (D)4(2)程序的運(yùn)行結(jié)果是(29)。29(A)6 (B)10 (C)12 (D)153.有下列程序(考點(diǎn):帶參數(shù)的宏定義)#include<stdio.h>#defineM(x,y)((x%y==1)?1:0)intfun(int*a,intn){inti,s=0;for(i=0;i<n;i++)if(M(a[i],2)&&M(a[i],3))s=s+a[i];returns;}voidmain(){inta[]={1,2,3,4,5,6,7};printf("%d\n",fun(a,7));}(1)宏調(diào)用M(a[i],2)&&M(a[i],3)為真時(shí)所要表示的是(30)。30(A)判斷a[i]是否能被2或3整除(B)判斷a[i]是否能被2和3整除(C)判斷a[i]被2或3整除時(shí),是否至少有一種情況余1(D)判斷a[i]被2和3整除時(shí),是否都余1(2)程序的運(yùn)行結(jié)果是(31)。31(A)15 (B)6 (C)16 (D)84.有下列程序(考點(diǎn):函數(shù)(地址參數(shù))、指針運(yùn)算)#include"stdio.h"voidprt(int*x,int*y,int*z){printf("%d,%d,%d\n",++*x,++*y,*(z++));}voidmain(){inta=10,b=40,c=20;prt(&a,&b,&c);prt(&a,&b,&c);}(1)第一次調(diào)用函數(shù)prt的運(yùn)行結(jié)果是(32)。32(A)11,42,31 (B)11,41,20 (C)11,21,40 (D)11,41,21(2)第二次調(diào)用函數(shù)prt的運(yùn)行結(jié)果是(33)。33(A)12,42,20 (B)12,22,41 (C)11,21,41 (D)12,42,225.有如下程序(考點(diǎn):全局變量和局部變量、函數(shù)(地址參數(shù))、)#include<stdio.h>intb=1;intfun(int*a){intb=0;b=b+a[0];returnb;}voidmain(){inta[]={1,2,3,4,5,6},i;for(i=0;i<2;i++){b=b+fun(a+i);printf("%d",b);}}(1)程序的運(yùn)行結(jié)果是(34)。34(A)24 (B)412 (C)23 (D)410(2)若將函數(shù)fun中的定義“intb=0;”去掉,則程序的運(yùn)行結(jié)果為(35)。35(A)24 (B)412 (C)23 (D)4106.有如下程序(考點(diǎn):字符數(shù)組、函數(shù)(地址參數(shù))、邏輯表示式)#include<stdio.h>voidfun(char*s,char*t1,char*t2){inti,j=0;for(i=0;s[i]!='\0';i++){if(i%2&&(s[i]>='a'&&s[i]<='z'))t1[i]=s[i]-'a'+'A';elset1[i]=s[i];if(s[i]>='0'&&s[i]<='9'){t2[j]=s[i];j++;}}t1[i]=t2[j]='\0';}voidmain(){chars[20]="2abcde3fg45",t1[20],t2[20];fun(s,t1,t2);puts(t1);puts(t2);}(1)程序中第一個(gè)puts的輸出結(jié)果為(36)36(A)abcdefg (B)2345 (C)2AbCdE3Fg45 (D)2aBcDe3fG45(2)程序中第二個(gè)puts的輸出結(jié)果為(37)37(A)abcdefg (B)2345 (C)2AbCdE3Fg45 (D)2aBcDe3fG457.有如下程序:(考點(diǎn):命令行參數(shù)、宏定義、條件運(yùn)算符)#include<stdio.h>#defineIsAlpha(c)c>='a'&&c<='z'?1:0voidmain(intargc,int**argv){char*str,cx;intcn=0;if(argc<2)return;str=(*++argv);while(*str){cx=(*str++);if(IsAlpha(cx))cn++;}printf("%d\n",cn);}若上述程序經(jīng)編譯連接后形成的可執(zhí)行文件名為:2-8.exe(1)當(dāng)輸入命令行:2-8.exe2abHcabA2時(shí),輸出為(38)。38(A)5 (B)3 (C)1 (D)2(2)上述程序的功能是(39)。39(A)命令行第一參數(shù)2abHc中出現(xiàn)的小寫字母?jìng)€(gè)數(shù)(B)命令行第一參數(shù)2abHc中出現(xiàn)的大寫字母?jìng)€(gè)數(shù)(C)命令行第二參數(shù)abA2中出現(xiàn)的小寫字母?jìng)€(gè)數(shù)(D)命令行第二參數(shù)abA2中出現(xiàn)的大寫字母?jìng)€(gè)數(shù)8.有如下程序:(考點(diǎn):文件、大小寫字母轉(zhuǎn)換方法)#include<stdio.h>voidmain(){charch;FILE*fp;if((fp=fopen("test.dat","r+"))==NULL){printf("Cannotopenfile.\n");exit(0);}ch=fgetc(fp);while(ch!=EOF){if(ch>='a'&&ch<='z')ch-=32;elseif(ch>='A'&&ch<='Z')ch+=32;putchar(ch);ch=fgetc(fp);}fclose(fp);}若磁盤文件test.dat中的內(nèi)容為ab12HD,則程序運(yùn)行結(jié)果為(40)。40(A)ab12HD (B)Ab12hD (C)aB12Hd (D)AB12hd注意:①請(qǐng)把下面“程序填空”中各小題答案寫在主觀題答題紙上②每一個(gè)空只填一個(gè)語(yǔ)句或一個(gè)語(yǔ)句所缺的部分內(nèi)容三、程序填空(每空2分,共30分)1.以下程序能計(jì)算數(shù)列1/2,3/4,1/6,3/8,1/10,3/12…的前15項(xiàng)之和。請(qǐng)?zhí)羁?。(考點(diǎn):序列處理算法)#include<stdio.h>#defineN15voidmain(){inti;doublesum=0.0,a,b=0.0;for(i=0;i<N;i++){if(①)a=②;elsea=1.0;b+=2.0;sum+=③;}printf("1/2+3/4+1/6...+1/30=%f\n",sum);}2.一結(jié)構(gòu)體數(shù)組中放置了10名學(xué)生的學(xué)號(hào)和成績(jī)(成績(jī)互不相同),程序功能是求出學(xué)生的最高分,輸出她的學(xué)號(hào)和成績(jī)。請(qǐng)?zhí)羁?。(考點(diǎn):結(jié)構(gòu)體數(shù)組、求最值算法)#include<stdio.h>typedefstructsutdent{charno[10];intscore;}ST;voidmain(){STs[10]={{"A01",65},{"A02",70},{"A03",60},{"A04",84},{"A05",82},{"A06",90},{"A07",75},{"A08",72},{"A09",95},{"A10",93}};intmax,i,maxi;max=s[0].score;maxi=0;for(i=1;i<10;i++)if(s[i].score①max){max=②;maxi=③;}printf("Max:No%s;Score%d\n",s[maxi].no,s[maxi].score);}3.insert()函數(shù)在一維數(shù)組y中把x插到下標(biāo)為i的元素之前,i≥0。如果i大于等于元素個(gè)數(shù)則插在末尾。原有的元素個(gè)數(shù)存放在指針變量n所指的變量中。請(qǐng)?zhí)羁?。(考點(diǎn):數(shù)組、插入元素算法)#include<stdio.h>#defineN11voidinsert(inty[],int*n,intx,inti){intj;if(i<*n)for(j=*n-1;①;j--) ②=y[j];elsei=*n;y[i]=③;(*n)++;}voidmain(){inty[N]={0,1,2,3,4,5,6,7,8,9},x,i,*n,j;j=N-1;printf("\nPleaseinputx:");scanf("%d",&x);printf("\nPleaseinputi:");scanf("%d",&i);insert(y,&j,x,i);for(j=0;j<N;j++)printf("%d",y[j]);}4.下面程序能將Hello!反向打印出來。請(qǐng)?zhí)羁?。(考點(diǎn):函數(shù)(地址參數(shù))、字符數(shù)組、遞歸算法)#include<stdio.h>voidmain(){intprint_hello(char*);print_hello("\nHello!\n");}intprint_hello(char*string){char*str=string;if(*str==①)return;while(*str)②;--str;pri
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 石坎施工方案
- 培訓(xùn)機(jī)構(gòu)消防施工方案
- 關(guān)于施工方案
- 美麗人生觀后感
- 二零二五年度私人房產(chǎn)全款買賣合同(限智能家居)
- 甲乙丙方2025年度轉(zhuǎn)租健身房租賃合同
- 2025年度電力工程安全防護(hù)電力勞務(wù)分包合同模板
- 二零二五年度生物樣本低溫保管與共享協(xié)議
- 工傷事故賠償及職工權(quán)益保護(hù)協(xié)議2025年度范本
- 二零二五年度科技孵化器場(chǎng)地租賃管理服務(wù)合同
- 廉政鑒定書(院內(nèi)廉政意見書)
- 《潘姓源于固始,是不爭(zhēng)的史實(shí)》的考辨
- 二次電纜敷設(shè)、接線作業(yè)指導(dǎo)書
- 焊接技師培訓(xùn)教材(釬焊)課件
- 《等腰三角形的性質(zhì)》優(yōu)秀課件
- 原發(fā)性肝癌經(jīng)皮肝動(dòng)脈化療栓塞術(shù)(TACE)臨床路徑
- 異常情況匯報(bào)流程圖
- 化工工藝學(xué)-第二章-化工原料及其初步加工
- 全國(guó)水資源綜合規(guī)劃技術(shù)細(xì)則(水利部文件)
- 02312電力系統(tǒng)遠(yuǎn)動(dòng)及調(diào)度自動(dòng)化
- 校園欺凌談心記錄
評(píng)論
0/150
提交評(píng)論