2012級C語言程序設計(專科)試卷A及答案_第1頁
2012級C語言程序設計(???試卷A及答案_第2頁
2012級C語言程序設計(???試卷A及答案_第3頁
免費預覽已結(jié)束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

2012—2013學年度第二學期期末考試《C語言程序設計》試題A參考答案及評分標準2012級非計算機專業(yè)專(理論和上機各26學時) 90分鐘 2013年6月一、單項選擇題(每題2分,共40分)01~10 ABCDD AABCD 11~20 ABBCDABCCD二、程序閱讀填空題(共10空,每空2分,共20分)(空不得分)1、8,16、3、17、i=00000008,j=(7個空格)9

2、1,00,14、16、138、x=(4個空格)123.46,x=(3個空格)1.2e+029、97\b 10、x=’61’,’141’三、程序改錯題(本大題共2小題,每小題5分,共10分)1、第一處:去掉while(r=m%n);后面的分號(2分)printf("最大公約數(shù)是%d\n",m);mn(212、第一處:intfib(NUM)=(1,1);改為intfib[NUM]={1,1}; (2分)第二處:fib[3]=fib[2]+fib[1];改為fib[i]=fib[i-2]+fib[i-1]; (2分找對二個錯處1分四、編程題(第1小題每題12分,第2小題18分,共30分)1、程序如下:#include"stdio.h"main(){inti;unsignedintn;printf("scanf("%d",&n);printf("數(shù)%uwhile(n>0){printf("%d",n%10);n/=10;}第2頁共2頁第2頁共2頁printf("\n");}2、程序如下:#include"stdio.h"#include"math.h"main(){floatx1,x2,x0;floatf(floatdo{printf("請輸入求值區(qū)間的上、下界(用空格分隔scanf("%f%f",&x1,&x2);if(f(x1)*f(x2)>0)printf("%f,%f}while(f(x1)*f(x2)>0);do{x0=(x1+x2)/2;if(f(x1)*f(x0)>0)x1=x0;elsex2=x0;}while(fabs(x1-x2)>1e-5);printf("一元方程的一個解是%f",(x1+x2)/2);}第第4頁共4頁2012—2013學年度第二學期期末考試《C語言程序設計》試題(A卷)2012級非計算機專業(yè)專(理論和上機各26學) 90分鐘 2013年6月一、選擇題(每空2分,共40分)1、對任何C語句必須結(jié)束。A、分號 B、逗號 C、冒號 D、句2、能將高級語言編寫的源程序轉(zhuǎn)換為目標程序的。A、編輯程序 B、編譯程序 C、解釋程序 D、連接程3、若C主函數(shù)中有定義語句:intk;,。A、系統(tǒng)將自動給k賦初值0 B、系統(tǒng)將自動給k賦初值C、系統(tǒng)將自動給k賦值且無意義 D、系統(tǒng)將不給k賦值4、下列標識符中,符合規(guī)定的是 。A、f2-g3 B、3max C、_fa#23 D、5、int型數(shù)-1在winTC的內(nèi)存中存儲形式。A、符號位和最低位為1,中間14個0 B、32個1C、1符號位和最低位為1,中間30個0 D、16個6、下列類型的運算符中,優(yōu)先級從高到低排列。A、單目運算符、算術(shù)運算符、關(guān)系運算符、邏輯運算符、賦值運算符B、單目運算符、邏輯運算符、算術(shù)運算符、關(guān)系運算符、賦值運算符C、單目運算符、賦值運算符、算術(shù)運算符、關(guān)系運算符、邏輯運算符D、單目運算符、關(guān)系運算符、邏輯運算符、算術(shù)運算符、賦值運算符7、自增運算符++和自減運算符—都屬于算術(shù)運算符,下列敘述中正確。A、它們的運算優(yōu)先級與單目運算符相同,結(jié)合方向是自右至左。B、它們的運算優(yōu)先級與單目運算符相同,結(jié)合方向是自左至右。C、它們的運算優(yōu)先級與運算符+,-相同,結(jié)合方向是自右至左。D、它們的運算優(yōu)先級與運算符+,-相同,結(jié)合方向是自左至右。8、下列關(guān)于關(guān)系運算符與關(guān)系表達式的表述中,錯誤的A、關(guān)系運算符為雙目運算符,結(jié)合方向為自左至右。B、C語言中沒有邏輯值,用1表示真,0表示假。C、關(guān)系運算的結(jié)果為真時其值為1,結(jié)果為假時其值為0。D、由關(guān)系運算符、運算對象以及小括號組成的表達式稱為關(guān)系表達式9、下列關(guān)于邏輯運算符與邏輯表達式的敘述中,錯誤的是 。A、用邏輯運算符將關(guān)系表達式連接起來構(gòu)成邏輯表達式。B、邏輯運算的對象可以是C語言中任意合法的表達式。C、邏輯運算的結(jié)果為邏輯值。D、邏輯運算符的優(yōu)先級從高到低依次是邏輯非、邏輯與、邏輯或。10、有語句max=a>b?a:b;其中:變量max、a、b、在前面已聲明且a、b已賦值下列敘述中錯誤的。A、條件運算符的優(yōu)先級高于賦值運算符,低于關(guān)系運算符或算術(shù)運算符。B、條件運算符的結(jié)合方向為自右至左。C、條件表達式中各表達式的類型可以不一樣。D、該語句為條件表達式語句。11C語言允許數(shù)據(jù)的值從一種類型轉(zhuǎn)換為另一種類型關(guān)于數(shù)據(jù)類型轉(zhuǎn)換敘述誤的。A、當雙目運算符的兩個操作數(shù)類型不同時,引起強制類型轉(zhuǎn)換。B、當一個值賦給一個不同類型的變量時,引起賦值類型轉(zhuǎn)換。C、當一個值被強制轉(zhuǎn)換為另一個類型時,引起強制類型轉(zhuǎn)換。D、當某個值作為參數(shù)傳給一個函數(shù)時,引起函數(shù)調(diào)用轉(zhuǎn)換。12、結(jié)構(gòu)化程序設計的三種基本結(jié)構(gòu)的流程圖它們有以下共同點,敘述錯誤。A、只有一個入口,不得從結(jié)構(gòu)外隨意轉(zhuǎn)入結(jié)構(gòu)中某點。B、可以有多個出口,根據(jù)不同條件通過不同分支從結(jié)構(gòu)內(nèi)轉(zhuǎn)出。C、結(jié)構(gòu)中的每一部分都有機會被執(zhí)行。D、結(jié)構(gòu)內(nèi)不存在死循環(huán)。13xy被定義為int,若從鍵盤給xy輸入數(shù)據(jù),正確的輸入語句是 。A、inputx,y; B、scanf("%d%d",&x,&y);C、scanf("%d%d",x,y); D、getchar("%d%d",x,y);14printf()%m.nf,下面關(guān)于該格式描述中不正確的。A、在m列的位置上輸出一個實數(shù);B、mC、mmD、保留n位小數(shù)(含小數(shù)點),系統(tǒng)自動對數(shù)據(jù)進行四舍五入的處理。15、對if語句中表達式的類型,下面正確的敘述。A、必須是關(guān)系表達式 B、必須是關(guān)系表達式或邏輯表達C、必須是關(guān)系表達式或算術(shù)表達式 D、可以是任意表達式16、以下關(guān)于switch語句和break語句的描述中,正確的。AswitchbreakBswitchbreakC、break語句只能用于switch語句。D、break語句是switch語句的一部分。17、下列循環(huán)結(jié)構(gòu)中不符合結(jié)構(gòu)化程序設計思想的。A、for語句構(gòu)成的循環(huán) B、goto語句和if語句構(gòu)成的循C、while語句構(gòu)成的循環(huán) D、do-while語句構(gòu)成的循環(huán)18、for循環(huán)的循環(huán)體中如果包含有continue語句,當執(zhí)行到continue語句后下面敘述不正確的。A、結(jié)束本次循環(huán); B、執(zhí)行for語句中的“表達式C、跳過for語句中的“表達式2”; D、再次執(zhí)行循環(huán)體。1、某文件中定義的靜態(tài)全局變量(或稱靜態(tài)外部變量,其作用域 A、只限于某個函數(shù) B、跨全部文件C、本文件 D、不限制作用域20、C語言規(guī)定,函數(shù)返回值的類型是A、return語句中的表達式的類型所決定B、調(diào)用該函數(shù)時的主調(diào)函數(shù)類型所決定C、調(diào)用該函數(shù)時,系統(tǒng)臨時決定D、在定義該函數(shù)時所指定的函數(shù)類型所決定二、程序閱讀填空題(共10空,每空2分,共20分)(注意:解答本題時請一定注意輸出的格式和符號,格式或符號、空格數(shù)錯則在空不得分)1、有以下程序段,執(zhí)行后的結(jié)果① 。inta=2,b=2;a+=a*=a;b+=b*=b+b;printf("%d,%d",a,b);2、有以下程序段,執(zhí)行后的結(jié)果② 。inta=2,b=3,c=4;printf("%d,%d",a>0,a<0);printf("%d,%d",c>b>a,c<b<a);3、有以下程序段,執(zhí)行后的結(jié)果③ 。intj=2,k=3,m;m=1&&(++j==3||k++==3);printf("%d\n",k);4、設x、y、z均為int型,且x=3,y=-4,z=5,則下列表達式的結(jié)果:(x&&y)==(x||z) ④ !(x>y)+(y!=z)||(x+y)&&(y-z) ⑤ x++-y+(++z) ⑥ 5、若有下列定義(設整形變量占兩個字節(jié):inti=8,j=9;floatx=123.456;則下列各組語句的輸出結(jié)果是:printf("i=%08d,j=%8d\n",i,j); ⑦ printf("x=%10.2f,x=%10.2e\n",x,x); ⑧ 6aASCII97,charx='a',y='b';printf("%d\\%c\n",x,y); ⑨ printf("x=\'%x\',\'%o\'\n",x,x); ⑩ 三、程序改錯題(2510注意:不得增減語句或改變結(jié)構(gòu),否則不得分。1、下面這段程序的功能是輾轉(zhuǎn)相除法求正整數(shù)mn有二處錯誤請改正。#include<stdio.h>main(){unsignedm,n,r;printf("請輸入二個正整數(shù),用空格分隔:");scanf("%u%u",&m,&n);while(r=m%n);{m=n;n=r;}printf("最大公約數(shù)是%d\n",m);}2、引用數(shù)組輸出Fibonacci數(shù)列的前20項。1n=1Fib(n)=1n=2Fib(n-2)+fib(n-1)n>=3(函數(shù)體部分有二行錯誤,請改正)#include<stdio.h>#definemain()NUM20{inti;intfib(NUM)=(1,1);//fibfor(i=2;i<NUM;i++) //循環(huán)為數(shù)組每一項賦fib[3]=fib[2]+fib[1]; //第三項等于前二項的for(i=0;i<NUM;i++) //循環(huán)輸出數(shù)組

溫馨提示

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

最新文檔

評論

0/150

提交評論