第一篇:《C語(yǔ)言及程序設(shè)計(jì)》在線作業(yè)答案
一、單選題(共 15 道試題,共 75 分。)V 1.合法的C語(yǔ)言標(biāo)識(shí)符是()。A.abc B.2ab C._a1 D./n
滿分:5 分
2.有兩個(gè)字符數(shù)組a、b,則以下正確的輸入
語(yǔ)句是()。A.gets(a,b);B.“scanf(”“%s%s”“,a,b);” C.“scanf(”“%s%s”“,a,b);” D.“gets(”“a”“),gets(”“b”“);”
滿分:5 分
3.若運(yùn)行以下程序時(shí),從鍵盤輸入25,13,10回車,則輸出結(jié)果為()。
main(){inta1,a2,a3;scanf(“%d%d%d”,a1,a2,a3);printf(“a1+a2+a3=%
dn”,a1+a2+a3);} A.a1+a2+a3=48 B.a1+a2+a3=25 C.a1+a2+a3=10 D.不確定值
滿分:5 分
4.以下為一維整型數(shù)組a的正確說(shuō)明是
()。A.inta(10);B.“intn=10,a[n];” C.“intn;scanf(”“%d”“,n);” D.“#defineSIZE10;inta[SIZE];inta[n];”
滿分:5 分
5.以下能對(duì)二維數(shù)組a進(jìn)行正確初始化的語(yǔ)句是()。
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}};”
滿分:5 分
6.函數(shù)rewind(fp)的作用是:使文件位置
指針()。A.重新返回文件的開頭 B.返回到前一個(gè)字符的位置
C.指向文件的末尾
D.自動(dòng)移至下一個(gè)字符的位置
滿分:5 分
7.以下敘述中不正確的是()
A.在C程序中,調(diào)用函數(shù)時(shí),只能把實(shí)參的值傳送給形參,形參的值不
能傳送給實(shí)參
B.在C程序的函數(shù)中,最好使用全局變量 C.在C程序中,形參只是局限于所在函數(shù) D.在C程序中,函數(shù)名的存儲(chǔ)類別為外部
滿分:5 分
8.以下程序段()。intx=1,y=4;printf(x B.輸出:x=1 C.輸出:y=1 D.輸出:y=4 滿分:5 分 9.下列四組選項(xiàng)中,均是不合法的用戶標(biāo)識(shí)符的選項(xiàng)是______。 A.AP_0do B.floatgoto_A C.b-agotoint D._123tempINT 滿分:5 分 10.已知字母A的ASCII碼為(65)10,變量ch1為字符型,則執(zhí)行語(yǔ)句 ch1='A'+'6'-'3';后,ch1中的值為()。 A.D B.68 C.一個(gè)不確定的值 D.C 滿分:5 分 11.若x為float型變量,則以列程序段結(jié)果是()x=1234.6789;printf(“%- 2.1f”,x); A.輸出格式描述符的域?qū)挾炔粔?,不能?/p> 出 B.輸出為1234.7 C.輸出為1234.6 D.輸出為-1234.6 滿分:5 分 12.sizeof(float)是()。A.雙精度型表達(dá)式 B.一個(gè)整型表達(dá)式 C.一個(gè)函數(shù)調(diào)用 D.一個(gè)不合法的表達(dá)式 滿分:5 分 13.071^052的結(jié)果是() A.32 B.16 C.23 D.22 滿分:5 分 14.若有定義:intx=7;floata=2.5,b=4.7;則表達(dá)式a+x%3*(int)(a+b)%2/4 的值是()。 A.2.5 B.2.75 C.3.5 D.0 滿分:5 分 15.有下列語(yǔ)句和賦值語(yǔ)句:(1)charstr[]=”iamaboy.”(2)charstr [12]=”iamaboy.”(3)char*p=”iamaboy.”(4)p=”iamaboy.”下列說(shuō)法正 確的是()A.只有(1)、(2)正確 B.只有(3)、(4)正確 C.只有(1)、(3)、(4)正確 D.只有(3)正確 滿分:5 分 1c2c 3 D4d5b6a 7b8c9c 10a 11B12B13A14A15B 二、判斷題(共 5 道試題,共 25 分。)V 1.聲明語(yǔ)句int a[]={0};可以對(duì) 一維數(shù)組a進(jìn)行正確初始化。 A.錯(cuò)誤 B.正確 T滿分:5 分 2.在c語(yǔ)言中,函數(shù)形參的存儲(chǔ)類型是自 動(dòng)類型的變量 A.錯(cuò)誤 B.正確 F 滿分:5 分 3.函數(shù)必須有返回值,否則不能使用函數(shù) A.錯(cuò)誤 B.正確 F 滿分:5 分 4.已知int a[]={1,2,3,4},y,*p=&a[1];則執(zhí)行語(yǔ)句y(*--p)++;變量y的值是3。 A.錯(cuò)誤 B.正確 F 滿分:5 分 5.C語(yǔ)言fread()函數(shù)的功能是從文件fp中讀取n個(gè)字符存入指定的內(nèi)存 。A.錯(cuò)誤 B.正確 T 滿分:5 分 第一章 程序設(shè)計(jì)算法概述 一.選擇題 (一)基本概念 1、一個(gè)C語(yǔ)言程序總是從()。 A、主過(guò)程開始執(zhí)行 B、主 函數(shù)開始執(zhí)行 C、子程序開始執(zhí)行 D、主 程序開始執(zhí)行 【答案】B 2、下面四個(gè)選項(xiàng)中,均是C語(yǔ)言關(guān)鍵字的選項(xiàng)是()。 A、auto enum include B、switch typedef continue C、signed union scanf D、if struct type 【答案】B 3、下面四個(gè)選項(xiàng)中,均是合法整型常量的選項(xiàng)是()。 A、160-0xffff 01B、-0xcdf 01a 0xe C、-01 986,012 0668 D、-0x48a 2e5 0x 【答案】A 4、以下不正確的C語(yǔ)言標(biāo)識(shí)符是()。 A、int B、a_1_2 C、ab1exe D、_x 【答案】A 5、以下是正確的C語(yǔ)言標(biāo)識(shí)符是()。 A、#define B、_123 C、%d D、n 【答案】B 6、下列四組選項(xiàng)中,均不是C語(yǔ)言關(guān)鍵字的選項(xiàng)是()。 A、define IF type B、getc char printf C、include scanf case D、while go pow 【答案】A 7、下列不屬于C語(yǔ)言關(guān)鍵字的是()。 A、default B、register C、enum D、external 【答案】D 8、合法的C語(yǔ)言標(biāo)識(shí)符是()。 A、ab&c B、2ab C、_a1 D、/n 【答案】C 9、下列四組選項(xiàng)中,均是不合法的用戶標(biāo)識(shí)符的選項(xiàng)是______。 A、A P_0 do B、float goto _A C、b-a goto int D、_123 temp INT 【答案】C 二.填空題 1.在C語(yǔ)言中的實(shí)型變量分為兩種類型,它們是 和。 【答案】單精度型(或float型) 雙精度型(或:double型) 2.C語(yǔ)言規(guī)定,可執(zhí)行程序的開始執(zhí)行點(diǎn)是。 【答案】程序中的main()函數(shù) 3.C語(yǔ)言中三中基本的程序結(jié)構(gòu) 是 、和。 【答案】順序結(jié)構(gòu);分支(選擇)結(jié)構(gòu);循 環(huán)結(jié)構(gòu) 4.一個(gè)C源程序必須包含一個(gè)。 【答案】main函數(shù) 5.在C語(yǔ)言中,char型數(shù)據(jù)在內(nèi)存中的存 儲(chǔ)形式是。 【答案】ASCII碼 6.用計(jì)算機(jī)實(shí)現(xiàn)算法的過(guò)程稱 為。 【答案】程序設(shè)計(jì) 7.C源程序的基本單位是。 【答案】函數(shù) 8.int型數(shù)據(jù)(2byte)可表示的數(shù)值范圍 為。 【答案】-32768—32767 9.C語(yǔ)言的標(biāo)識(shí)符只能由三種字符組成,它們是 【答案】字母、數(shù)字、下劃線 三.判斷題:(正確:T;錯(cuò)誤:F) 1.在C程序中main函數(shù)必須位于程序的最 前面 【答案】F 2.C語(yǔ)言本身沒有輸入輸出語(yǔ)句 【答案】T 3.一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成 【答案】T 4.在C程序中,注釋說(shuō)明只能位于一條語(yǔ) 句的后面 【答案】F 四.簡(jiǎn)答-完善程序-分析程序 1、c語(yǔ)言程序的總體結(jié)構(gòu)是怎樣的。 【答案】 一個(gè)完整的c語(yǔ)言程序,是由一個(gè)、且只能由一個(gè)main()函數(shù)(又稱主函數(shù))和若 干個(gè)其他函數(shù)結(jié)合而成的,或僅由一個(gè) main()函數(shù)構(gòu)成。 2、c語(yǔ)言程序的基本單位是什么?它的結(jié)構(gòu) 又如何? 【答案】 函數(shù)是c語(yǔ)言程序的基本模塊單元。 任何函數(shù)(包括主函數(shù)main())都是由函數(shù)說(shuō)明和函數(shù)體兩部分組成。其一般結(jié)構(gòu)如 下: [函數(shù)類型] 函數(shù)名(函數(shù)參數(shù)表) { 說(shuō)明語(yǔ)句部分; 執(zhí)行語(yǔ)句部分;} 3、主函數(shù)main()在程序中的地位如何。程序總是從哪個(gè)函數(shù)開始執(zhí)行,到哪個(gè)函數(shù)執(zhí) 行完后結(jié)束? 【答案】 main()函數(shù)的作用相當(dāng)于其他高級(jí)語(yǔ)言中的主程序;其他函數(shù)的作用相當(dāng)于子程序。 一個(gè)c語(yǔ)言程序,總是從main()函數(shù)開始執(zhí)行,而不論其在程序中的位置。當(dāng)主函數(shù)執(zhí)行完畢時(shí),亦即程序執(zhí)行完畢。習(xí)慣上,將主函數(shù)main()放在最前頭。 4、C語(yǔ)言用戶標(biāo)識(shí)符的定義方式是什么? 【答案】 c語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線3種字符組成,且第一個(gè)字符必須為字母或下劃線,同時(shí)c語(yǔ)言還規(guī)定標(biāo)識(shí)符不能為 c語(yǔ)言的關(guān)鍵字。 5、說(shuō)明算法可以采用哪幾種控制結(jié)構(gòu)組合。 【答案】 算法的控制結(jié)構(gòu)給出了算法的基本框架,不僅決定了算法中各操作的執(zhí)行順序,也直接反映了算法的設(shè)計(jì)是否符合結(jié)構(gòu)化原則。一個(gè)算法一般可以用順序、選擇、循環(huán)三種基本控制結(jié)構(gòu),通過(guò)順序或嵌套組合而成。 6、算法的基本特征是什么? 【答案】 一個(gè)算法,一般應(yīng)具有以下幾個(gè)基本特征。可行性、確定性、有窮性、一個(gè)輸入、零個(gè) 或多個(gè)輸出。 7、常見的過(guò)程設(shè)計(jì)工具有哪些?為什么可以N-S圖代替?zhèn)鹘y(tǒng)的程序流程圖? 【答案】 常見的過(guò)程設(shè)計(jì)工具有:程序流程圖、N-S圖、PAD圖和HIPO圖。為了避免流程圖在描述程序邏輯時(shí)的靈活性,提出了用方框圖來(lái)代替?zhèn)鹘y(tǒng)的程序流程圖,通常也把這種圖 稱為N-S圖。 8、“在源文件的一行上可以有多條預(yù)處理命令”是否正確,為什么? 【答案】 通常,預(yù)處理命令位于源文件的開頭,也可以寫在函數(shù)與函數(shù)之間;不能在一行上寫多條預(yù)處理命令:宏名一般習(xí)慣用大寫字母表示,以便與變量名相區(qū)別,但這并非規(guī)定,也可用小寫字母。 五.程序設(shè)計(jì)題 1.已知三角形的三邊長(zhǎng),求其面積。假設(shè)輸入的三邊能構(gòu)成三角形,三角形的面積公式 為: Area=,其中S=(a+b+c)/2。 【參考答案】 #include “math.h” Main() { Float a,b,c,s,area; Printf(“請(qǐng)輸入三角形的三邊:”); Scanf(“%f,%f,%f”,&a,&b,&c); S=(a+b+c)/2.0; Area=sqrt(s*(s-a)*(s-b)*(s-c)); Printf(“三角形的三邊為:%7.2f, %7.2f, %7.2fn”,a,b,c); Prinft(“三角形的面積為:%7.2fn”,area); } 2.編寫程序讀入3個(gè)雙精度數(shù),求它們的平均值,并保留此平均值小數(shù)點(diǎn)一位,對(duì)小數(shù)點(diǎn)后第二位進(jìn)行四舍五入,并輸出結(jié)果。 【參考答案】 #include “stdio.h” mian() { double x,y,z; double aver; long temp; printf(“n請(qǐng)輸入三個(gè)雙精度數(shù):” scanf(“%lf%lf%lf”,&x,&y,&z); aver=(x+y+z)/3; temp=aver*10; temp=(aver*10-temp)*2+temp; aver=temp/10.0;); printf(“n平均值為:%.1lf”,aver); } 3.輸入兩個(gè)整數(shù),求出它們的商數(shù)和余數(shù)并 進(jìn)行輸出。 【參考答案】 #include “stdio.h” main() { int x,y; int shang ,yu; printf(“n請(qǐng)輸入兩個(gè)整數(shù):”); scanf(“%d%d”,&x,&y);” shang=x/y; yu=x%y; printf(“%d%d的商為:%d,余數(shù)為%d”,x,y,shang,yu); } 第二章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式 一.選擇題 1、若num、a、b和c都是int型變量,則執(zhí)行表達(dá)式num=(a=4,b=16,c=32)后num的值為()。 A、4B、16 C、32 C D、52 【答案】C 2、若有變量說(shuō)明:int a=0,b=0,c=0;,以下符合C語(yǔ)言語(yǔ)法的賦值表達(dá)式是()。 A、a=9+b+c=a+9 B、a=9+b;c=a+9; C、a=(9+b,b++) D、a=9+b++=a+7 【答案】C 3、若有以下類型說(shuō)明語(yǔ)句:char a;int b;float c;double d;則表達(dá)式a*b-2*d+c的結(jié)果類型為()。 A、float B、char C、int D、double 【答案】D 4、下面四個(gè)選項(xiàng)中,均是合法浮點(diǎn)數(shù)的選 項(xiàng)是()。 A、+1e+1 5e-9.4 03e2 B、-.60 12e-4-8e5 C、123e 1.2e-.4 +2e-1 D、-e3.8e-4 5.e-0 【答案】B 5、下面四個(gè)選項(xiàng)中,均是合法轉(zhuǎn)義字符的選項(xiàng)是()。 A、''' '' 'n' B、'' '