山東開放大學(xué)《C語言程序設(shè)計(jì)》期末考試復(fù)習(xí)題及參考答案_第1頁
山東開放大學(xué)《C語言程序設(shè)計(jì)》期末考試復(fù)習(xí)題及參考答案_第2頁
山東開放大學(xué)《C語言程序設(shè)計(jì)》期末考試復(fù)習(xí)題及參考答案_第3頁
山東開放大學(xué)《C語言程序設(shè)計(jì)》期末考試復(fù)習(xí)題及參考答案_第4頁
山東開放大學(xué)《C語言程序設(shè)計(jì)》期末考試復(fù)習(xí)題及參考答案_第5頁
已閱讀5頁,還剩235頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

C語言程序設(shè)計(jì)一、單選題(題數(shù):20,共40.0分)1一個(gè)二維數(shù)組元素為a[i][j],它的指針訪問方式不正確的是()。A、*(a[i]+j)B、(*(a+i))[j]C、*a[i]+jD、*(*(a+i)+j)正確答案:C2若一個(gè)文本文件的長度為n-1,當(dāng)以"r"方式打開時(shí),其讀文件指針初始指向的字節(jié)位置編號為()。A、0B、1C、n-1D、n正確答案:A3要結(jié)束所在循環(huán)語句中循環(huán)體的一次執(zhí)行,則在其中使用的語句為()。A、continueB、breakC、gotoD、return正確答案:A答案解析:4程序運(yùn)行中需要從鍵盤上輸入多于一個(gè)數(shù)據(jù)時(shí),若不特別規(guī)定分隔符,則輸入的各數(shù)據(jù)之間所使用的分隔符為()。A、空格或逗號B、逗號或回車C、逗號或分號D、空格或回車正確答案:D答案解析:5在函數(shù)體中把出現(xiàn)調(diào)用自身函數(shù)的情況稱為()。A、非遞歸調(diào)用B、直接遞歸調(diào)用C、間接遞歸調(diào)用D、末尾遞歸調(diào)用正確答案:B6在結(jié)構(gòu)類型的定義中,使用的關(guān)鍵字是()。A、structB、unionC、staticD、enum正確答案:A7每次先進(jìn)行循環(huán)條件的判斷,然后再執(zhí)行循環(huán)體的語句為()。A、for和doB、for和whileC、while和doD、switch和break正確答案:B答案解析:8在定義指針變量的語句中,在指針變量名的前面標(biāo)記的字符為()。A、&B、*C、#D、$正確答案:B9在循環(huán)語句“for(i=1;i<10;i+=2)S;”中,循環(huán)體S被執(zhí)行的次數(shù)為()。A、10B、6C、4D、5正確答案:D答案解析:10要定義a和b為兩個(gè)整型變量,則使用的定義語句為()。A、inta;b;B、inta,b;C、intab;D、inta:b;正確答案:B答案解析:11在scanf()函數(shù)調(diào)用的格式字符串中,每個(gè)格式符的先導(dǎo)字符為()。A、#B、%C、$D、@正確答案:B答案解析:12假定一個(gè)函數(shù)原型為intf1(inta[][N],intn),與數(shù)組參數(shù)等價(jià)的表示為()。A、int*aB、int**aC、int(*a)[N]D、int*a[N]正確答案:C13在一個(gè)數(shù)組中,數(shù)組元素a[i]前面的元素個(gè)數(shù)為()。A、iB、i+1C、i-1D、2*i正確答案:A答案解析:14在每個(gè)C語言程序中都必須包含有這樣一個(gè)函數(shù),該函數(shù)的函數(shù)名為()。A、mainB、MAINC、nameD、function正確答案:A答案解析:15向一個(gè)二進(jìn)制文件中寫入數(shù)據(jù)的系統(tǒng)函數(shù)為fwrite(),它的參數(shù)有()。A、1B、2C、3D、4正確答案:D16使用“typedefintInteger;”語句把標(biāo)識符Integer定義為一個(gè)()。A、整數(shù)變量B、整數(shù)類型C、數(shù)組變量D、數(shù)組類型正確答案:B答案解析:17假定二維數(shù)組的定義語句為“int*a[3][5];”,則該數(shù)組所占用的存儲(chǔ)空間的字節(jié)數(shù)為()。A、120B、15C、30D、60正確答案:D答案解析:18一個(gè)無符號字符類型的值域范圍是()。A、-128到+127B、0到255C、-127到255D、1到255正確答案:B答案解析:19流程控制類語句包括的3類語句為()。A、選擇、循環(huán)、跳轉(zhuǎn)B、選擇、循環(huán)、輸入C、選擇、輸入、輸出D、循環(huán)、選擇、函數(shù)正確答案:A答案解析:20假定一維數(shù)組的定義為“chara[8];”,則該數(shù)組所占用的存儲(chǔ)空間的字節(jié)數(shù)為()。A、8B、16C、64D、32正確答案:A答案解析:二、填空題(題數(shù):10,共30.0分)1假定以-1.0作為結(jié)束鍵盤輸入的標(biāo)志,此函數(shù)的功能是求出并返回從鍵盤上輸入的一批實(shí)數(shù)的_____________。doublexk7(){doublex,y=0;intn=0;printf("請輸入一批實(shí)數(shù),直到-1.0為止!\n");do{scanf("%Lf",&x);if(x==-1.0)break;n++;y+=x;}while(1);if(n==0)returny;elsereturny/n;}(3.0分)正確答案第一空:平均值我的答案:2執(zhí)行下面程序的輸出結(jié)果為__________。#include<<stdio.h>#include<string.h>voidmain(){intc1,c2;chara[20]="String1234\n";charb[10]="str";c1=strlen(a);strcat(b,"245\0");intc2=strlen(b);printf("%d%d\n",c1,c2);}(3.0分)正確答案第一空:116我的答案:3下面函數(shù)的功能是從字節(jié)文件中依次讀取每個(gè)整數(shù)并進(jìn)行求和,返回求和結(jié)果。該字節(jié)文件名為參數(shù)fname所指向的字符串。請?jiān)跈M線處填寫合適內(nèi)容。intxw3(char*fname){FILE*fin=fopen(fname,__________);intc,x,s=0;while(1){c=fread(&x,sizeof(int),1,fin);if(c==0)break;s+=x;}fclose(fin);returns;}(3.0分)正確答案第一空:"rb"我的答案:4在C語言中,表示換行符的轉(zhuǎn)義字符為_____________。(3.0分)正確答案第一空:\n我的答案:答案解析:5執(zhí)行下面程序的輸出結(jié)果為___________。#include<stdio.h>voidmain(){inta[8]={3,8,6,5,9,2,8,5};inti,s=0;for(i=0;i<8;i++)s+=a[i];printf("s=%d\n",s);}(3.0分)正確答案第一空:s=46我的答案:6此程序運(yùn)行后,得到的輸出結(jié)果為____________________。#include<stdio.h>structWorker{charname[15];intage;intpay;};voidxh1(structWorkerr){r.age+=12;printf("%d",r.age);};voidmain(){structWorkerr={"abc",25,420};xh1(r);r.age+=15;printf("%d\n",r.age);}(3.0分)正確答案第一空:3740我的答案:7此程序的功能是從鍵盤上輸入兩個(gè)__________,輸出結(jié)果為它們的平方和。#include<stdio.h>voidmain(){intx,y;doscanf("%d%d",&x,&y);while(x<=0||y<=0);printf("%d\n",x*x+y*y);}(3.0分)正確答案第一空:正整數(shù)我的答案:答案解析:8執(zhí)行下面程序的輸出結(jié)果為__________。#include<stdio.h>voidmain(){inta[3][3]={{12,18,10},{8,6,14},{5,10,19}};inti,j,s[3]={0};for(i=0;i<3;i++)for(j=0;j<3;j++)s[a[i][j]%3]+=a[i][j];for(i=0;i<3;i++)printf("%d",s[i]);}(3.0分)正確答案第一空:363927我的答案:9此程序運(yùn)行后,得到的輸出結(jié)果為____________________。#include<stdio.h>#include<stdlib.h>#include<string.h>structCCC{char*a;intn;};voidmain(void){structCCCx;char*p="XxkComputer";x.n=strlen(p)+1;x.a=malloc(x.n);strcpy(x.a,p);printf("%s%d\n",x.a,x.n);}voidmain(){structWorkera[4]={{"abc",25,420},{"defa",58,638},{"ghin",49,560},{"jklt",36,375}};structWorkerx={"",49,0};inti;for(i=0;i<4;i++)if(xh2(a[i],x))break;for(i=0;i<4;i++)if(xh2(a[i],x))break;}(3.0分)正確答案第一空:XxkComputer12我的答案:10假定結(jié)構(gòu)類型為“structstrNode{charname[15];structstrNode*next;};”,下面函數(shù)能夠遍歷以f為表頭指針的單鏈表,請?jiān)跈M線處填寫合適內(nèi)容。voidxb1(structstrNode*f){while(f!=NULL){printf("%s",f->name);f=_______________;}printf("\n");}(3.0分)正確答案第一空:f->next我的答案:三、判斷題(題數(shù):15,共30.0分)1在C語言中,正弦、余弦或正切函數(shù)的參數(shù)的度量單位是度。正確答案:×答案解析:2break語句只能使用在循環(huán)語句中。正確答案:×答案解析:3一個(gè)函數(shù)必須返回一個(gè)值,不允許定義不返回任何值的函數(shù)。正確答案:×答案解析:4假定a是一個(gè)一維數(shù)組,則表達(dá)式*(a+i)所對應(yīng)的元素為a[i]。正確答案:√5在函數(shù)定義中,存在著調(diào)用自身函數(shù)的函數(shù)調(diào)用表達(dá)式,則稱此函數(shù)為遞歸函數(shù)。正確答案:√6在利用printf()函數(shù)向屏幕輸出數(shù)據(jù)時(shí),需要在參數(shù)表的開始位置使用相應(yīng)的格式字符串。正確答案:√答案解析:7在一條變量定義語句中,定義的變量和賦給它的初值之間不需要使用等號(=)。正確答案:×答案解析:8C語言系統(tǒng)中提供一個(gè)用來描述文件屬性的類型標(biāo)識符為FILE,它與系統(tǒng)頭文件stdio.h無關(guān)。正確答案:×9return語句只有保留字,沒有其他成分。正確答案:×答案解析:10for循環(huán)是先判斷循環(huán)條件,當(dāng)條件為真時(shí)執(zhí)行循環(huán)體。正確答案:√答案解析:11函數(shù)被調(diào)用執(zhí)行中,形參變量的初值由調(diào)用該函數(shù)時(shí)對應(yīng)的實(shí)參值給定。正確答案:√12常數(shù)3.26是雙精度浮點(diǎn)數(shù)。正確答案:×答案解析:13在for循環(huán)語句的頭部,for后面括號內(nèi)的各表達(dá)式之間使用逗號分開。正確答案:×答案解析:14for循環(huán)語句的循環(huán)體,只能是復(fù)合語句,不能是簡單語句。正確答案:×答案解析:15在C語言程序中,對于遞歸函數(shù)和非遞歸函數(shù),其函數(shù)頭部有區(qū)別標(biāo)志。正確答案:×C語言程序設(shè)計(jì)一、單選題(題數(shù):20,共40.0分)1假定一個(gè)鏈表中結(jié)點(diǎn)的結(jié)構(gòu)類型為“structAA{intdata,structAA*next;};”,則next數(shù)據(jù)成員的類型為()。A、structAAB、structAA*C、AA*D、int正確答案:B2用于從鍵盤上為變量輸入值的標(biāo)準(zhǔn)輸入函數(shù)是()。A、printf()B、print()C、scanf()D、output()正確答案:C答案解析:3在switch語句中,每個(gè)保留字case后面的表達(dá)式必須是()。A、變量種B、常量C、一般表達(dá)式D、函數(shù)調(diào)用正確答案:B答案解析:4從一個(gè)文本文件中讀取一個(gè)字符的系統(tǒng)函數(shù)為()。A、fputc()B、fgets()C、fputs()D、fgetc()正確答案:D5C語言中的選擇類語句有兩條,它們是()。A、if和switchB、if和elseC、switch和caseD、else和case正確答案:A答案解析:6在聯(lián)合類型的定義中,使用的關(guān)鍵字是()。A、structB、unionC、staticD、enum正確答案:B7在結(jié)構(gòu)類型的定義中,使用的關(guān)鍵字是()。A、structB、unionC、staticD、enum正確答案:A8在printf()函數(shù)調(diào)用的格式字符串中,若使用格式符為“%d”,則對應(yīng)輸出的數(shù)據(jù)類型為()。A、charB、intC、floatD、double正確答案:B答案解析:9已知“inta[10],x,*pa=a;”,若要把數(shù)組a[3]元素的值賦給x,則不正確的語句為()。A、x=pa[3];B、x=*(a+3);C、x=a[3];D、x=*pa+3;正確答案:D10在定義指針變量的語句中,在指針變量名的前面標(biāo)記的字符為()。A、&B、*C、#D、$正確答案:B11對于每個(gè)進(jìn)行動(dòng)態(tài)存儲(chǔ)分配的函數(shù),其返回值類型為()。A、charB、char*C、voidD、void*正確答案:D12C語言源程序文件的擴(kuò)展名為()。A、cppB、exeC、objD、c正確答案:D答案解析:13在每個(gè)C語言程序中都必須包含有這樣一個(gè)函數(shù),該函數(shù)的函數(shù)名為()。A、mainB、MAINC、nameD、function正確答案:A答案解析:14在下面字符數(shù)組的定義語句中,有語法錯(cuò)誤的是()。A、chara[20]="abcdefg";B、chara[]="x+y=55.";C、chara[15]={'1','2'};D、chara[10]='5';正確答案:D答案解析:15假定要訪問一個(gè)結(jié)構(gòu)變量x中的數(shù)據(jù)成員a,則表示方法為()。A、x.aB、x->aC、x:aD、x(a)正確答案:A16假定p是一個(gè)指向數(shù)據(jù)對象的指針,則通過p表示該數(shù)據(jù)對象為()。A、p*B、p&C、&pD、*p正確答案:D17設(shè)x和y均為邏輯值,則x&&y為真的條件是()。A、它們均為真B、其中一個(gè)為真C、它們均為假D、其中一個(gè)為假正確答案:A答案解析:18一個(gè)無符號字符類型的值域范圍是()。A、-128到+127B、0到255C、-127到255D、1到255正確答案:B答案解析:19一個(gè)指針類型的簡單變量占用內(nèi)存中的字節(jié)數(shù)為()。A、2B、4C、8D、16正確答案:B20假定一維數(shù)組的定義為“chara[8];”,則該數(shù)組所占用的存儲(chǔ)空間的字節(jié)數(shù)為()。A、8B、16C、64D、32正確答案:A答案解析:二、填空題(題數(shù):10,共30.0分)1若需要定義一個(gè)符號常量,并且使C語言能夠進(jìn)行類型檢查,則應(yīng)在定義語句的開始使用保留字__________。(3.0分)正確答案第一空:const我的答案:答案解析:2char類型的長度為______字節(jié)。(3.0分)正確答案第一空:1我的答案:答案解析:3執(zhí)行下面程序的輸出結(jié)果為___________。#include<stdio.h>voidmain(){inti,f1=1,f2;for(i=2;i<6;i++){f2=3*f1;f1=f2;}printf("f2=%d\n",f2);}(3.0分)正確答案第一空:f2=81我的答案:答案解析:4此程序運(yùn)行后,得到的輸出結(jié)果為____________________。#include<stdio.h>structWorker{charname[15];intage;intpay;};voidmain(){structWorkerx={"wanghua",52,4266};structWorkery=x;printf("%d\n",x.pay+y.pay);}(3.0分)正確答案第一空:8532我的答案:5執(zhí)行下面程序的輸出結(jié)果為________。#includestdio.h>#include<stdio.h>voidmain(){inta=18,b=4,c=0;if(a/b){c+=a/b;c+=a%b;}if(a%b){a=a/b;b=a%b;}printf("%d",a+b+c);}(3.0分)正確答案第一空:10我的答案:答案解析:6執(zhí)行下面程序的輸出結(jié)果為___________。#include<stdio.h>voidmain(){inta[8]={3,8,6,5,9,2,8,5};inti,s=0;for(i=0;i<8;i++)s+=a[i];printf("s=%d\n",s);}(3.0分)正確答案第一空:s=46我的答案:7數(shù)值常量0x62的表示方式為_____________。(3.0分)正確答案第一空:十六進(jìn)制我的答案:答案解析:8執(zhí)行下面程序的輸出結(jié)果為__________。#include<stdio.h>voidmain(){inta[3][3]={{12,18,10},{8,6,14},{5,10,19}};inti,j,s[3]={0};for(i=0;i<3;i++)for(j=0;j<3;j++)s[a[i][j]%3]+=a[i][j];for(i=0;i<3;i++)printf("%d",s[i]);}(3.0分)正確答案第一空:363927我的答案:9已知x=-25,則abs(x)的值為_________。(3.0分)正確答案第一空:25我的答案:答案解析:10若x=5,y=10,則計(jì)算y*=++x表達(dá)式后,y的值為__________。(3.0分)正確答案第一空:60我的答案:答案解析:三、判斷題(題數(shù):15,共30.0分)1增量表達(dá)式++y表示成賦值表達(dá)式為y=y+1。正確答案:√答案解析:2表達(dá)式sizeof(25)的值等于4。正確答案:√答案解析:3C語言中的標(biāo)準(zhǔn)輸入和輸出設(shè)備文件都屬于字符文件。正確答案:×4在結(jié)構(gòu)成員訪問運(yùn)算符中,點(diǎn)運(yùn)算符(.)為雙目運(yùn)算符。正確答案:√5在程序文件中要進(jìn)行動(dòng)態(tài)存儲(chǔ)分配和釋放,則需要引入的系統(tǒng)頭文件是stdio.h。正確答案:×6在結(jié)構(gòu)成員訪問運(yùn)算符中,點(diǎn)運(yùn)算符和箭頭運(yùn)算符的左邊均為結(jié)構(gòu)變量。正確答案:×7在C語言程序上機(jī)操作的過程中,編譯程序的操作步驟之后是連接操作。正確答案:√答案解析:8訪問一個(gè)鏈表時(shí),必須從表頭指針出發(fā),依次訪問每個(gè)結(jié)點(diǎn)。正確答案:√9在函數(shù)定義中,存在著調(diào)用自身函數(shù)的函數(shù)調(diào)用表達(dá)式,則稱此函數(shù)為遞歸函數(shù)。正確答案:√10return語句只有保留字,沒有其他成分。正確答案:×答案解析:11for循環(huán)語句的循環(huán)體,只能是復(fù)合語句,不能是簡單語句。正確答案:×答案解析:12表達(dá)式x=x+y表示成復(fù)合賦值表達(dá)式為x=+y。正確答案:×答案解析:13在結(jié)構(gòu)類型的定義中,其中的數(shù)據(jù)成員可以是本身類型的直接對象。正確答案:×14一個(gè)程序文件開始使用的每條預(yù)處理命令,其首字符必須是#。正確答案:√答案解析:15在C語言中,作為標(biāo)識符的第一個(gè)字符只能是英文字母或下劃線,不能是數(shù)字字符。正確答案:√答案解析:C語言程序設(shè)計(jì)一、單選題(題數(shù):20,共40.0分)1表示文件結(jié)束符的符號常量為()。A、eofB、EofC、EOFD、feof正確答案:C答案解析:2字符串"It\'s\'"中包含的字符個(gè)數(shù)為()。A、8B、6C、7D、5正確答案:D答案解析:3程序運(yùn)行中需要從鍵盤上輸入多于一個(gè)數(shù)據(jù)時(shí),若不特別規(guī)定分隔符,則輸入的各數(shù)據(jù)之間所使用的分隔符為()。A、空格或逗號B、逗號或回車C、逗號或分號D、空格或回車正確答案:D答案解析:4在函數(shù)體中把出現(xiàn)調(diào)用自身函數(shù)的情況稱為()。A、非遞歸調(diào)用B、直接遞歸調(diào)用C、間接遞歸調(diào)用D、末尾遞歸調(diào)用正確答案:B5在printf()函數(shù)調(diào)用的格式字符串中,若使用格式符為“%5d”,則規(guī)定對應(yīng)輸出的數(shù)據(jù)占用的字符位置個(gè)數(shù)為()。A、5B、4C、3D、6正確答案:A答案解析:6在printf()函數(shù)調(diào)用的格式字符串中,若使用格式符為“%d”,則對應(yīng)輸出的數(shù)據(jù)類型為()。A、charB、intC、floatD、double正確答案:B答案解析:7不符合C語言規(guī)定的復(fù)合語句是()。A、{}B、{;}C、{x=0;}D、{y=10}正確答案:D答案解析:8在C語言中,一條簡單語句的結(jié)束符是()。A、逗號B、冒號C、分號D、空格正確答案:C答案解析:9假定一個(gè)函數(shù)的原型為intff(intx),一個(gè)整型變量為a,則下面函數(shù)調(diào)用表達(dá)式不正確的是()。A、ff(*a)B、ff(a)C、ff(a+10)D、ff(3)正確答案:A10在C語言中,用戶定義的標(biāo)識符分為4種作用域,下列選項(xiàng)中不屬于這4種作用域的是()。A、全局B、語句C、文件D、局部正確答案:B11假定一個(gè)函數(shù)原型為intf1(inta[][N],intn),與數(shù)組參數(shù)等價(jià)的表示為()。A、int*aB、int**aC、int(*a)[N]D、int*a[N]正確答案:C12使用“typedefintABC[10];”語句把標(biāo)識符ABC定義為()。A、簡單變量B、符號常量C、整型數(shù)組類型D、字符數(shù)組正確答案:C答案解析:13向一個(gè)二進(jìn)制文件中寫入數(shù)據(jù)的系統(tǒng)函數(shù)為fwrite(),它的參數(shù)有()。A、1B、2C、3D、4正確答案:D14在下面字符數(shù)組的定義語句中,有語法錯(cuò)誤的是()。A、chara[20]="abcdefg";B、chara[]="x+y=55.";C、chara[15]={'1','2'};D、chara[10]='5';正確答案:D答案解析:15在循環(huán)語句“for(i=0;i<n;i++)S;”循環(huán)體S的執(zhí)行次數(shù)為()A、1B、n-1C、nD、n+1正確答案:C答案解析:16假定要訪問一個(gè)結(jié)構(gòu)變量x中的數(shù)據(jù)成員a,則表示方法為()。A、x.aB、x->aC、x:aD、x(a)正確答案:A17假定p是一個(gè)指向數(shù)據(jù)對象的指針,則通過p表示該數(shù)據(jù)對象為()。A、p*B、p&C、&pD、*p正確答案:D18若要結(jié)束所在函數(shù)的執(zhí)行過程,返回到調(diào)用該函數(shù)所在位置,則使用的語句為()。A、continueB、breakC、gotoD、return正確答案:D答案解析:19使用“typedefintInteger;”語句把標(biāo)識符Integer定義為一個(gè)()。A、整數(shù)變量B、整數(shù)類型C、數(shù)組變量D、數(shù)組類型正確答案:B答案解析:20C語言程序中的基本功能模塊為()。A、表達(dá)式B、標(biāo)識符C、語句D、函數(shù)正確答案:D答案解析:二、填空題(題數(shù):10,共30.0分)1此函數(shù)的功能是把十進(jìn)制正整數(shù)x轉(zhuǎn)換為________進(jìn)制數(shù)輸出出來。voidxk10(intx){chara[10];inti=0,rem;do{rem=x%16;x=x/16;if(rem<10)a[i]=48+rem;//'0'字符的ASCII碼為48elsea[i]=55+rem;//'A'字符的ASCII碼為65i++;}while(x!=0);while(i>0)printf("%c",a[--i]);}(3.0分)正確答案第一空:十六我的答案:2若需要定義一個(gè)符號常量,并且使C語言能夠進(jìn)行類型檢查,則應(yīng)在定義語句的開始使用保留字__________。(3.0分)正確答案第一空:const我的答案:答案解析:3在執(zhí)行下面程序的輸出結(jié)果中,最后兩個(gè)整數(shù)為______________。#include<stdio.h>voidmain(){inta[8]={25,18,36,42,17,54,30,63};int*p=a;while(p<a+8){printf("%d",*p++);p++;}}(3.0分)正確答案第一空:1730我的答案:4數(shù)值常量0x62的表示方式為_____________。(3.0分)正確答案第一空:十六進(jìn)制我的答案:答案解析:5下面函數(shù)的功能是把數(shù)組a中的n個(gè)整數(shù)元素保存到字節(jié)文件中。該字節(jié)文件名為參數(shù)fname所指向的字符串。請?jiān)跈M線處填寫合適內(nèi)容。break(return)voidxw1(char*fname,inta[],intn){FILE*fout=fopen(fname,"wb");fwrite(a,sizeof(int),_______,fout);fclose(fout);}(3.0分)正確答案第一空:n我的答案:6已知'A'~'Z'的ASCII碼為65~90,當(dāng)執(zhí)行“intx='C'+5;”語句后x的值為________。(3.0分)正確答案第一空:72我的答案:答案解析:7執(zhí)行下面程序的輸出結(jié)果為__________。#include<stdio.h>voidmain(){inti=0,s=0;do{i+=2;if(i%3==0)continue;s+=i*(i+1);}while(s<60);printf("s=%d\n",s);}(3.0分)正確答案第一空:s=98我的答案:答案解析:8執(zhí)行下面程序的輸出結(jié)果為____________。#include<stdio.h>voidmain(){inta[8]={12,15,20,8,25,30,28,36};inti,c[3]={0};for(i=0;i<8;i++){if(a[i]%2==0)c[0]++;if(a[i]%3==0)c[1]++;if(a[i]%4==0)c[2]++;}printf("%d%d%d\n",c[0],c[1],c[2]);}(3.0分)正確答案第一空:645我的答案:9此程序運(yùn)行后,得到的輸出結(jié)果為_____________。#include<stdio.h>intwr9(int*a,intn){inti,s=0;for(i=0;i<n;i++)s+=a[i];returns;}voidmain(){inta[]={5,10,8,7,20,15};printf("%d%d\n",wr9(a,4),wr9(a+2,3));}(3.0分)正確答案第一空:3035我的答案:10執(zhí)行下面程序的輸出結(jié)果為______________#include<stdio.h>voidmain(){intx=16,s=0;do{s+=x;x-=3;}while(x>0);printf("s=%d\n",s);}(3.0分)正確答案第一空:s=51我的答案:答案解析:三、判斷題(題數(shù):15,共30.0分)1在結(jié)構(gòu)成員訪問運(yùn)算符中,點(diǎn)運(yùn)算符(.)為雙目運(yùn)算符。正確答案:√2若要在程序文件中使用標(biāo)準(zhǔn)輸入和輸出函數(shù),則需要引入的系統(tǒng)頭文件為stdio.h。正確答案:√答案解析:3從文本文件中輸入數(shù)據(jù)時(shí),需要調(diào)用系統(tǒng)函數(shù)fputs()或fgets()。正確答案:×4在函數(shù)定義中,存在著調(diào)用自身函數(shù)的函數(shù)調(diào)用表達(dá)式,則稱此函數(shù)為遞歸函數(shù)。正確答案:√5在C語言字符集中,一個(gè)大寫英文字母和它的小寫英文字母被視為不同的字符。正確答案:√答案解析:6while循環(huán)語句中的循環(huán)體至少被執(zhí)行一次。正確答案:×答案解析:7對二進(jìn)制文件進(jìn)行讀和寫操作將使用不同的系統(tǒng)函數(shù)。正確答案:√8在一條變量定義語句中,定義的變量和賦給它的初值之間不需要使用等號(=)。正確答案:×答案解析:9continue語句只有保留字,沒有語句體。正確答案:√答案解析:10在“printf("%d-%d=%d",x,y,x-y);”語句所使用的格式字符串中,包含有3個(gè)格式符。正確答案:√答案解析:11常數(shù)3.26是雙精度浮點(diǎn)數(shù)。正確答案:×答案解析:12在C語言中,每條復(fù)合語句的開始標(biāo)記字符為{。正確答案:√答案解析:13在C語言中,保留字是有專門含義和作用的,不能作為一般標(biāo)識符使用。正確答案:√答案解析:14一個(gè)程序文件開始使用的每條預(yù)處理命令,其首字符必須是#。正確答案:√答案解析:15在定義指針變量的語句中,最前面的類型關(guān)鍵字仍然允許是指針類型。正確答案:√C語言程序設(shè)計(jì)一、單選題(題數(shù):20,共40.0分)1表示文件結(jié)束符的符號常量為()。A、eofB、EofC、EOFD、feof正確答案:C答案解析:2若一個(gè)文本文件的長度為n-1,當(dāng)以"r"方式打開時(shí),其讀文件指針初始指向的字節(jié)位置編號為()。A、0B、1C、n-1D、n正確答案:A3假定有結(jié)構(gòu)定義為“structBook{chartitle[20];doubleprice;};”,則不正確的語句定義為()。A、structBook*x=calloc(sizeof(structBook));B、structBooka={"C++Programming",27.0};C、structBook*x=malloc(sizeof(structBook));D、structBooka,*x=&a;正確答案:A4程序運(yùn)行中需要從鍵盤上輸入多于一個(gè)數(shù)據(jù)時(shí),若不特別規(guī)定分隔符,則輸入的各數(shù)據(jù)之間所使用的分隔符為()。A、空格或逗號B、逗號或回車C、逗號或分號D、空格或回車正確答案:D答案解析:5在switch語句中,每個(gè)保留字case后面的表達(dá)式必須是()。A、變量種B、常量C、一般表達(dá)式D、函數(shù)調(diào)用正確答案:B答案解析:6用于輸出表達(dá)式值的標(biāo)準(zhǔn)輸出函數(shù)是()。A、printf()B、print()C、scanf()D、output()正確答案:A答案解析:7在函數(shù)體中把出現(xiàn)調(diào)用自身函數(shù)的情況稱為()。A、非遞歸調(diào)用B、直接遞歸調(diào)用C、間接遞歸調(diào)用D、末尾遞歸調(diào)用正確答案:B8假定一個(gè)函數(shù)的原型為intff(intx),一個(gè)整型變量為a,則下面函數(shù)調(diào)用表達(dá)式不正確的是()。A、ff(*a)B、ff(a)C、ff(a+10)D、ff(3)正確答案:A9在一個(gè)程序文件中,若要使用#include命令包含一個(gè)系統(tǒng)頭文件,則此頭文件所使用的起止定界符為一對()。A、尖括號B、雙引號C、單引號D、花括號正確答案:A答案解析:10在printf()函數(shù)調(diào)用的格式字符串中,每個(gè)格式符的先導(dǎo)字符為()。A、#B、%C、$D、@正確答案:B答案解析:11假定一個(gè)函數(shù)原型為intf1(inta[][N],intn),與數(shù)組參數(shù)等價(jià)的表示為()。A、int*aB、int**aC、int(*a)[N]D、int*a[N]正確答案:C12若x的值為5,則執(zhí)行“if(x>10)x++;elsex--;”語句后,x的值為()。A、6B、5C、4D、3正確答案:C答案解析:13函數(shù)定義參數(shù)表中的每個(gè)形參變量,其作用域范圍為所在的整個(gè)()。A、程序B、文件C、函數(shù)D、參數(shù)表正確答案:C14假定要訪問一個(gè)結(jié)構(gòu)變量x中的數(shù)據(jù)成員a,則表示方法為()。A、x.aB、x->aC、x:aD、x(a)正確答案:A15使用“typedefintInteger;”語句把標(biāo)識符Integer定義為一個(gè)()。A、整數(shù)變量B、整數(shù)類型C、數(shù)組變量D、數(shù)組類型正確答案:B答案解析:16在C語言中,打開一個(gè)數(shù)據(jù)文件的系統(tǒng)函數(shù)為()。A、fopen()B、fclose()C、fread()D、fwrite()正確答案:A17假定二維數(shù)組的定義語句為“int*a[3][5];”,則該數(shù)組所占用的存儲(chǔ)空間的字節(jié)數(shù)為()。A、120B、15C、30D、60正確答案:D答案解析:18一個(gè)指針類型的簡單變量占用內(nèi)存中的字節(jié)數(shù)為()。A、2B、4C、8D、16正確答案:B19在一個(gè)數(shù)組中,數(shù)組元素a[i]前面的元素個(gè)數(shù)為()。A、iB、i+1C、i-1D、2*i正確答案:A答案解析:20函數(shù)pow(4,3)的值為()。A、64.0B、12.0C、27D、56正確答案:A答案解析:二、填空題(題數(shù):10,共30.0分)1此程序運(yùn)行后,得到的輸出結(jié)果為____________________。#include<stdio.h>structWorker{charname[15];intage;intpay;};intxh2(structWorkerr1,structWorkerr2){if(r1.age==r2.age)return1;elsereturn0;}voidmain(){structWorkera[4]={{"abc",25,420},{"defa",58,638},{"ghin",49,560},{"jklt",36,375}};structWorkerx={"",49,0};inti;for(i=0;i<4;i++)if(xh2(a[i],x))break;for(i=0;i<4;i++)if(xh2(a[i],x))break;}(3.0分)正確答案第一空:ghin560我的答案:2執(zhí)行下面程序的輸出結(jié)果為___________。#include<stdio.h>voidmain(){inta[3][3]={{13,18,16},{15,19,12},{8,15,22}};inti,j,x=a[0][0];for(i=0;i<3;i++)for(j=0;j<3;j++)if(a[i][j]<x)x=a[i][j];printf("x=%d\n",x);}(3.0分)正確答案第一空:x=8我的答案:3執(zhí)行下面程序時(shí),輸出結(jié)果中的每個(gè)整數(shù)都大于從鍵盤上輸入的8個(gè)整數(shù)的______________。#include<stdio.h>voidmain(){inta[8];intx=0,*p;printf("請輸入8個(gè)整數(shù):");for(p=a;p<a+8;p++)scanf("%d",p);for(p=a;p<a+8;p++)x+=*p;for(p=a;p<a+8;p++)if(*p>x/8)printf("%d",*p);}(3.0分)正確答案第一空:平均值我的答案:4若需要定義一個(gè)符號常量,并且使C語言能夠進(jìn)行類型檢查,則應(yīng)在定義語句的開始使用保留字__________。(3.0分)正確答案第一空:const我的答案:答案解析:5char類型的長度為______字節(jié)。(3.0分)正確答案第一空:1我的答案:答案解析:6在C語言中,表示換行符的轉(zhuǎn)義字符為_____________。(3.0分)正確答案第一空:\n我的答案:答案解析:7執(zhí)行下面程序后,假定從鍵盤上輸入的兩個(gè)字符串?dāng)?shù)據(jù)為123和456,則輸出結(jié)果為__________。#include<stdio.h>#include<string.h>voidmain(){chara[20],b[20];scanf("%s%s",a,b);if(strcmp(a,b)>=0)printf("%s%s\n",a,b);elseprintf("%s%s\n",b,a);}(3.0分)正確答案第一空:456123我的答案:8執(zhí)行下面程序的輸出結(jié)果為_____________。#include<stdio.h>voidmain(){inti,s=0;for(i=1;i<10;i+=3)s+=i*(i+1);printf("s=%d\n",s);}(3.0分)正確答案第一空:s=78我的答案:答案解析:9執(zhí)行下面程序的輸出結(jié)果為___________。#include<stdio.h>voidmain(){inta[8]={3,8,6,5,9,2,8,5};inti,s=0;for(i=0;i<8;i++)s+=a[i];printf("s=%d\n",s);}(3.0分)正確答案第一空:s=46我的答案:10邏輯表達(dá)式(x>3&&x<10)的相反表達(dá)式為______________。(3.0分)正確答案第一空:x<=3||x>=10我的答案:答案解析:三、判斷題(題數(shù):15,共30.0分)1break語句只能使用在循環(huán)語句中。正確答案:×答案解析:2函數(shù)調(diào)用參數(shù)表中的每個(gè)實(shí)參只能是常量或變量。正確答案:×3在C語言字符集中,包含有全部26個(gè)英文大寫字母和對應(yīng)的小寫字母。正確答案:√答案解析:4在函數(shù)定義中,存在著調(diào)用自身函數(shù)的函數(shù)調(diào)用表達(dá)式,則稱此函數(shù)為遞歸函數(shù)。正確答案:√5對二進(jìn)制文件進(jìn)行讀和寫操作將使用不同的系統(tǒng)函數(shù)。正確答案:√6若要在程序文件中使用數(shù)學(xué)函數(shù),則需要引入的系統(tǒng)頭文件為math.h。正確答案:√答案解析:7執(zhí)行“typedefintintType;”語句后,在使用int定義整型變量的地方都可以使用整數(shù)類型標(biāo)識符intType來定義整型變量。正確答案:√答案解析:8在數(shù)據(jù)文件打開方式字符串中,字符加號(+)具有確定的含義,代表既允許讀也允許寫的打開方式。正確答案:√9在C語言中,打開一個(gè)數(shù)據(jù)文件的系統(tǒng)函數(shù)為fopen(),它帶有一個(gè)字符串參數(shù),用來給定待操作的文件名。正確答案:×10在“printf("%d-%d=%d",x,y,x-y);”語句所使用的格式字符串中,包含有3個(gè)格式符。正確答案:√答案解析:11在二維數(shù)組的定義語句中,數(shù)組名后帶有兩對中括號。正確答案:√答案解析:12進(jìn)行動(dòng)態(tài)存儲(chǔ)分配的malloc()函數(shù)帶有一個(gè)參數(shù)。正確答案:√13在C語言中,保留字是有專門含義和作用的,不能作為一般標(biāo)識符使用。正確答案:√答案解析:14廣義整數(shù)類型包括短整型、標(biāo)準(zhǔn)整型和長整型3種。正確答案:×答案解析:15在C語言程序中,對于遞歸函數(shù)和非遞歸函數(shù),其函數(shù)頭部有區(qū)別標(biāo)志。正確答案:×C語言程序設(shè)計(jì)一、單選題(題數(shù):20,共40.0分)1字符串"It\'s\'"中包含的字符個(gè)數(shù)為()。A、8B、6C、7D、5正確答案:D答案解析:2程序運(yùn)行中需要從鍵盤上輸入多于一個(gè)數(shù)據(jù)時(shí),若不特別規(guī)定分隔符,則輸入的各數(shù)據(jù)之間所使用的分隔符為()。A、空格或逗號B、逗號或回車C、逗號或分號D、空格或回車正確答案:D答案解析:3從一個(gè)文本文件中讀取一個(gè)字符的系統(tǒng)函數(shù)為()。A、fputc()B、fgets()C、fputs()D、fgetc()正確答案:D4在printf()函數(shù)調(diào)用的格式字符串中,若使用格式符為“%5d”,則規(guī)定對應(yīng)輸出的數(shù)據(jù)占用的字符位置個(gè)數(shù)為()。A、5B、4C、3D、6正確答案:A答案解析:5每個(gè)C程序文件在編譯時(shí)可能出現(xiàn)有警告性錯(cuò)誤,其對應(yīng)的標(biāo)識符號為()。A、warningB、errorC、warnD、err正確答案:A答案解析:6若用數(shù)組名作為函數(shù)調(diào)用的實(shí)參,傳遞給形參的是()。A、數(shù)組的首地址B、數(shù)組中第一個(gè)元素的值C、數(shù)組中全部元素的值D、數(shù)組元素的個(gè)數(shù)正確答案:A7要定義a和b為兩個(gè)整型變量,則使用的定義語句為()。A、inta;b;B、inta,b;C、intab;D、inta:b;正確答案:B答案解析:8在scanf()函數(shù)調(diào)用的格式字符串中,每個(gè)格式符的先導(dǎo)字符為()。A、#B、%C、$D、@正確答案:B答案解析:9每個(gè)C語言程序文件的編譯錯(cuò)誤的類型有()。A、1種B、2種C、3種D、4種正確答案:B答案解析:10對于每個(gè)進(jìn)行動(dòng)態(tài)存儲(chǔ)分配的函數(shù),其返回值類型為()。A、charB、char*C、voidD、void*正確答案:D11標(biāo)準(zhǔn)輸入設(shè)備鍵盤的文件流標(biāo)識符是()。A、stdinB、stdoutC、stderrD、stdio正確答案:A12C語言源程序文件的擴(kuò)展名為()。A、cppB、exeC、objD、c正確答案:D答案解析:13利用一維字符數(shù)組存儲(chǔ)一個(gè)字符串時(shí),在其末尾自動(dòng)存儲(chǔ)的一個(gè)字符是()。A、空格B、'\0'C、回車D、'\n'正確答案:B答案解析:14在結(jié)構(gòu)類型的定義中,不同數(shù)據(jù)成員的定義項(xiàng)之間采用的分隔符是()。A、句點(diǎn)B、冒號C、分號D、逗號正確答案:C15在printf()函數(shù)調(diào)用的格式字符串中,若使用格式符為“%f”,則對應(yīng)輸出的數(shù)據(jù)類型為()。A、charB、intC、floatD、double正確答案:C答案解析:16假定a為一個(gè)數(shù)組名,則下面表達(dá)式中錯(cuò)誤的是()。A、a[i]B、*a++C、*aD、*(a+1)正確答案:B17C語言程序中的基本功能模塊為()。A、表達(dá)式B、標(biāo)識符C、語句D、函數(shù)正確答案:D答案解析:18在C語言中,打開一個(gè)數(shù)據(jù)文件的系統(tǒng)函數(shù)為()。A、fopen()B、fclose()C、fread()D、fwrite()正確答案:A19假定二維數(shù)組的定義語句為“int*a[3][5];”,則該數(shù)組所占用的存儲(chǔ)空間的字節(jié)數(shù)為()。A、120B、15C、30D、60正確答案:D答案解析:20假定有一個(gè)定義語句為“inta[10]={3,4,2,8,6};”,則元素a[3]的值為()。A、4B、2C、8D、6正確答案:C答案解析:二、填空題(題數(shù):10,共30.0分)1此程序運(yùn)行后,得到的輸出結(jié)果為____________________。#include<stdio.h>structWorker{charname[15];intage;intpay;};intxh2(structWorkerr1,structWorkerr2){if(r1.age==r2.age)return1;elsereturn0;}voidmain(){structWorkera[4]={{"abc",25,420},{"defa",58,638},{"ghin",49,560},{"jklt",36,375}};structWorkerx={"",49,0};inti;for(i=0;i<4;i++)if(xh2(a[i],x))break;for(i=0;i<4;i++)if(xh2(a[i],x))break;}(3.0分)正確答案第一空:ghin560我的答案:2執(zhí)行下面程序的輸出結(jié)果為__________。#include<<stdio.h>#include<string.h>voidmain(){intc1,c2;chara[20]="String1234\n";charb[10]="str";c1=strlen(a);strcat(b,"245\0");intc2=strlen(b);printf("%d%d\n",c1,c2);}(3.0分)正確答案第一空:116我的答案:3下面函數(shù)的功能是從字節(jié)文件中依次讀取每個(gè)整數(shù)并進(jìn)行求和,返回求和結(jié)果。該字節(jié)文件名為參數(shù)fname所指向的字符串。請?jiān)跈M線處填寫合適內(nèi)容。intxw3(char*fname){FILE*fin=fopen(fname,__________);intc,x,s=0;while(1){c=fread(&x,sizeof(int),1,fin);if(c==0)break;s+=x;}fclose(fin);returns;}(3.0分)正確答案第一空:"rb"我的答案:4char類型的長度為______字節(jié)。(3.0分)正確答案第一空:1我的答案:答案解析:5在執(zhí)行下面程序的輸出結(jié)果中,最后兩個(gè)整數(shù)為______________。#include<stdio.h>voidmain(){inta[8]={25,18,36,42,17,54,30,63};int*p=a;while(p<a+8){printf("%d",*p++);p++;}}(3.0分)正確答案第一空:1730我的答案:6執(zhí)行下面程序的輸出結(jié)果為___________。#include<stdio.h>voidmain(){inta[8]={3,8,6,5,9,2,8,5};inti,s=0;for(i=0;i<8;i++)s+=a[i];printf("s=%d\n",s);}(3.0分)正確答案第一空:s=46我的答案:7數(shù)值常量0x62的表示方式為_____________。(3.0分)正確答案第一空:十六進(jìn)制我的答案:答案解析:8常數(shù)120的數(shù)據(jù)類型為__________。(3.0分)正確答案第一空:整型我的答案:答案解析:9執(zhí)行下面程序的輸出結(jié)果為__________。#include<stdio.h>voidmain(){inta[3][3]={{12,18,10},{8,6,14},{5,10,19}};inti,j,s[3]={0};for(i=0;i<3;i++)for(j=0;j<3;j++)s[a[i][j]%3]+=a[i][j];for(i=0;i<3;i++)printf("%d",s[i]);}(3.0分)正確答案第一空:363927我的答案:10若x=5,y=10,則計(jì)算y*=++x表達(dá)式后,y的值為__________。(3.0分)正確答案第一空:60我的答案:答案解析:三、判斷題(題數(shù):15,共30.0分)1表達(dá)式sizeof(25)的值等于4。正確答案:√答案解析:2假定一維數(shù)組的定義為“doublea[M];”,則每個(gè)數(shù)組元素的下標(biāo)取值范圍在1~M之間。正確答案:×答案解析:3從文本文件中輸入數(shù)據(jù)時(shí),需要調(diào)用系統(tǒng)函數(shù)fputs()或fgets()。正確答案:×4浮點(diǎn)數(shù)包括單精度浮點(diǎn)數(shù)和雙精度浮點(diǎn)數(shù)兩種。正確答案:√答案解析:5在C語言字符集中,一個(gè)大寫英文字母和它的小寫英文字母被視為不同的字符。正確答案:√答案解析:6執(zhí)行“typedefintintType;”語句后,在使用int定義整型變量的地方都可以使用整數(shù)類型標(biāo)識符intType來定義整型變量。正確答案:√答案解析:7在數(shù)據(jù)文件打開方式字符串中,字符加號(+)具有確定的含義,代表既允許讀也允許寫的打開方式。正確答案:√8continue語句只有保留字,沒有語句體。正確答案:√答案解析:9函數(shù)被調(diào)用執(zhí)行中,形參變量的初值由調(diào)用該函數(shù)時(shí)對應(yīng)的實(shí)參值給定。正確答案:√10假定二維數(shù)組的定義語句為“doublea[M][N];”,則每個(gè)數(shù)組元素的列下標(biāo)取值范圍在0~N-1之間。正確答案:√答案解析:11在if語句中,可以帶有else子句,也可以省略它。正確答案:√答案解析:12表達(dá)式x=x+y表示成復(fù)合賦值表達(dá)式為x=+y。正確答案:×答案解析:13在一個(gè)鏈表中,表頭結(jié)點(diǎn)無前驅(qū)結(jié)點(diǎn),表尾結(jié)點(diǎn)無后繼結(jié)點(diǎn)。正確答案:√14在一個(gè)磁盤數(shù)據(jù)文件的文件名中,文件主名是必須的,擴(kuò)展名可任選使用。正確答案:√15在定義指針變量的語句中,最前面的類型關(guān)鍵字仍然允許是指針類型。正確答案:√C語言程序設(shè)計(jì)一、單選題(題數(shù):20,共40.0分)1一個(gè)二維數(shù)組元素為a[i][j],它的指針訪問方式不正確的是()。A、*(a[i]+j)B、(*(a+i))[j]C、*a[i]+jD、*(*(a+i)+j)正確答案:C2在switch語句中,每個(gè)保留字case后面的表達(dá)式必須是()。A、變量種B、常量C、一般表達(dá)式D、函數(shù)調(diào)用正確答案:B答案解析:3在函數(shù)體中把出現(xiàn)調(diào)用自身函數(shù)的情況稱為()。A、非遞歸調(diào)用B、直接遞歸調(diào)用C、間接遞歸調(diào)用D、末尾遞歸調(diào)用正確答案:B4在聯(lián)合類型的定義中,使用的關(guān)鍵字是()。A、structB、unionC、staticD、enum正確答案:B5要定義a和b為兩個(gè)整型變量,則使用的定義語句為()。A、inta;b;B、inta,b;C、intab;D、inta:b;正確答案:B答案解析:6在printf()函數(shù)調(diào)用的格式字符串中,每個(gè)格式符的先導(dǎo)字符為()。A、#B、%C、$D、@正確答案:B答案解析:7在C語言中,為追加寫操作打開一個(gè)二進(jìn)制文件的方式為()。A、"w+"B、"rb"C、"wb"D、"ab"正確答案:D8對于每個(gè)進(jìn)行動(dòng)態(tài)存儲(chǔ)分配的函數(shù),其返回值類型為()。A、charB、char*C、voidD、void*正確答案:D9假定一個(gè)函數(shù)原型為intf1(inta[][N],intn),與數(shù)組參數(shù)等價(jià)的表示為()。A、int*aB、int**aC、int(*a)[N]D、int*a[N]正確答案:C10若x的值為5,則執(zhí)行“if(x>10)x++;elsex--;”語句后,x的值為()。A、6B、5C、4D、3正確答案:C答案解析:11在C語言程序中,多行注釋使用的結(jié)束標(biāo)記符為()。A、//B、/*C、*/D、**正確答案:C答案解析:12在一個(gè)數(shù)組中,數(shù)組元素a[i]前面的元素個(gè)數(shù)為()。A、iB、i+1C、i-1D、2*i正確答案:A答案解析:13利用一維字符數(shù)組存儲(chǔ)一個(gè)字符串時(shí),在其末尾自動(dòng)存儲(chǔ)的一個(gè)字符是()。A、空格B、'\0'C、回車D、'\n'正確答案:B答案解析:14在printf()函數(shù)調(diào)用的格式字符串中,若使用格式符為“%f”,則對應(yīng)輸出的數(shù)據(jù)類型為()。A、charB、intC、floatD、double正確答案:C答案解析:15在循環(huán)語句“for(i=0;i<n;i++)S;”循環(huán)體S的執(zhí)行次數(shù)為()A、1B、n-1C、nD、n+1正確答案:C答案解析:16使用“typedefintInteger;”語句把標(biāo)識符Integer定義為一個(gè)()。A、整數(shù)變量B、整數(shù)類型C、數(shù)組變量D、數(shù)組類型正確答案:B答案解析:17假定二維數(shù)組的定義語句為“int*a[3][5];”,則該數(shù)組所占用的存儲(chǔ)空間的字節(jié)數(shù)為()。A、120B、15C、30D、60正確答案:D答案解析:18下面正確的函數(shù)原型語句是()。A、intFunction(voida);B、voidFunction(int);C、intFunction(a);D、voidint(doublea);正確答案:B19設(shè)x和y均為邏輯值,則x&&y為真的條件是()。A、它們均為真B、其中一個(gè)為真C、它們均為假D、其中一個(gè)為假正確答案:A答案解析:20C語言中使用的字符常量,其起止標(biāo)記符是()。A、單引號B、雙引號C、中括號D、尖括號正確答案:A答案解析:二、填空題(題數(shù):10,共30.0分)1此程序運(yùn)行后,得到的輸出結(jié)果為_________________。#include#includestructintNode{intvalue;structintNode*next;};voidmain(void){structintNodex={32,NULL},y={45,&x},*r;for(r=&y;r!=NULL;r=r->next)printf("%d",r->value);printf("\n");}(3.0分)正確答案第一空:4532我的答案:2執(zhí)行下面程序時(shí),輸出結(jié)果中的每個(gè)整數(shù)都大于從鍵盤上輸入的8個(gè)整數(shù)的______________。#include<stdio.h>voidmain(){inta[8];intx=0,*p;printf("請輸入8個(gè)整數(shù):");for(p=a;p<a+8;p++)scanf("%d",p);for(p=a;p<a+8;p++)x+=*p;for(p=a;p<a+8;p++)if(*p>x/8)printf("%d",*p);}(3.0分)正確答案第一空:平均值我的答案:3在C語言中,表示換行符的轉(zhuǎn)義字符為_____________。(3.0分)正確答案第一空:\n我的答案:答案解析:4假定結(jié)構(gòu)類型為“structstrNode{charname[15];structstrNode*next;};”,下面函數(shù)能夠建立并返回以f為表頭指針的單鏈表,請?jiān)跈M線處填寫合適內(nèi)容。structstrNode*xb2(){structstrNode*f=NULL,*r;chara[15];printf("輸入每個(gè)字符串,用\"-1\"作為結(jié)束標(biāo)志\n");do{scanf("%s",a);if(strcmp(a,"-1")==0)break;r=malloc(sizeof(structstrNode));strcpy(r->name,a);r->next=f;____________________;}while(1);returnf;}(3.0分)正確答案第一空:f=r我的答案:5x<=10的相反表達(dá)式為____________。(3.0分)正確答案第一空:x>=10我的答案:答案解析:6執(zhí)行下面程序的輸出結(jié)果為___________。#include<stdio.h>voidmain(){inta[8]={3,8,6,5,9,2,8,5};inti,s=0;for(i=0;i<8;i++)s+=a[i];printf("s=%d\n",s);}(3.0分)正確答案第一空:s=46我的答案:7邏輯表達(dá)式(x>3&&x<10)的相反表達(dá)式為______________。(3.0分)正確答案第一空:x<=3||x>=10我的答案:答案解析:8當(dāng)使用xk4(2,4)調(diào)用此函數(shù)時(shí),返回值為_____________。intxk4(intx,intn){//n為大于等于0的整數(shù)inti,p=1,s=1;for(i=1;i<=n;i++){p*=x;s+=i*p;}returns;}(3.0分)正確答案第一空:99我的答案:9若x=5,y=10,則計(jì)算y*=++x表達(dá)式后,y的值為__________。(3.0分)正確答案第一空:60我的答案:答案解析:10執(zhí)行下面程序的輸出結(jié)果為___________。#include<stdio.h>voidmain(){inti,j,s=0;for(i=1;i<3;i++)for(j=1;j<5;j++)s+=i*j;printf("s=%d\n",s);}(3.0分)正確答案第一空:s=30我的答案:答案解析:三、判斷題(題數(shù):15,共30.0分)1在結(jié)構(gòu)成員訪問運(yùn)算符中,點(diǎn)運(yùn)算符(.)為雙目運(yùn)算符。正確答案:√2在一個(gè)鏈表中,表尾結(jié)點(diǎn)指針域的值為空(NULL)。正確答案:√3訪問一個(gè)鏈表時(shí),必須從表頭指針出發(fā),依次訪問每個(gè)結(jié)點(diǎn)。正確答案:√4浮點(diǎn)數(shù)包括單精度浮點(diǎn)數(shù)和雙精度浮點(diǎn)數(shù)兩種。正確答案:√答案解析:5在C語言字符集中,一個(gè)大寫英文字母和它的小寫英文字母被視為不同的字符。正確答案:√答案解析:6在一維數(shù)組的定義語句中,可以給數(shù)組中每個(gè)元素賦初值。正確答案:√答案解析:7在執(zhí)行“scanf("%d%d",&x,&y);”語句時(shí),需要從鍵盤上輸入2個(gè)整數(shù)。正確答案:√答案解析:8在利用scanf()函數(shù)從鍵盤輸入數(shù)據(jù)時(shí),需要在參數(shù)表的開始位置使用相應(yīng)的格式字符串。正確答案:√答案解析:9return語句只有保留字,沒有其他成分。正確答案:×答案解析:10在C語言中,打開一個(gè)數(shù)據(jù)文件的系統(tǒng)函數(shù)為fopen(),它帶有一個(gè)字符串參數(shù),用來給定待操作的文件名。正確答案:×11在執(zhí)行“printf("%d-%d=%d",x,y,x-y);”語句時(shí),其輸出的前兩個(gè)數(shù)據(jù)值之間將采用逗號分開。正確答案:×答案解析:12在if語句中,可以帶有else子句,也可以省略它。正確答案:√答案解析:13在for循環(huán)語句的頭部,for后面括號內(nèi)的各表達(dá)式之間使用逗號分開。正確答案:×答案解析:14表達(dá)式x=x+y表示成復(fù)合賦值表達(dá)式為x=+y。正確答案:×答案解析:15在結(jié)構(gòu)類型的定義中,其中的數(shù)據(jù)成員可以是本身類型的直接對象。正確答案:×C語言程序設(shè)計(jì)一、單選題(題數(shù):20,共40.0分)1若一個(gè)文本文件的長度為n-1,當(dāng)以"r"方式打開時(shí),其讀文件指針初始指向的字節(jié)位置編號為()。A、0B、1C、n-1D、n正確答案:A2字符串"It\'s\'"中包含的字符個(gè)數(shù)為()。A、8B、6C、7D、5正確答案:D答案解析:3已知x的初值為15,則下列各表達(dá)式中的最小值為()。A、x%=20B、x+=10C、x/=2D、x*=2正確答案:C答案解析:4用于輸出表達(dá)式值的標(biāo)準(zhǔn)輸出函數(shù)是()。A、printf()B、print()C、scanf()D、output()正確答案:A答案解析:5假定一個(gè)函數(shù)的原型為intff(intx),一個(gè)整型變量為a,則下面函數(shù)調(diào)用表達(dá)式不正確的是()。A、ff(*a)B、ff(a)C、ff(a+10)D、ff(3)正確答案:A6若用數(shù)組名作為函數(shù)調(diào)用的實(shí)參,傳遞給形參的是()。A、數(shù)組的首地址B、數(shù)組中第一個(gè)元素的值C、數(shù)組中全部元素的值D、數(shù)組元素的個(gè)數(shù)正確答案:A7在scanf()函數(shù)調(diào)用的格式字符串中,若使用格式字符串為“%d,%d”,則規(guī)定輸入的兩個(gè)數(shù)據(jù)之間的分隔符為()。A、@B、#C、$D、,正確答案:D答案解析:8在scanf()函數(shù)調(diào)用的格式字符串中,每個(gè)格式符的先導(dǎo)字符為()。A、#B、%C、$D、@正確答案:B答案解析:9在C語言中,為追加寫操作打開一個(gè)二進(jìn)制文件的方式為()。A、"w+"B、"rb"C、"wb"D、"ab"正確答案:D10假定有一個(gè)定義語句為“inta[3][4]={{3,4},{2,8,6}};”,則元素a[2][1]的值為()。A、0B、4C、8D、6正確答案:A答案解析:11標(biāo)準(zhǔn)輸入設(shè)備鍵盤的文件流標(biāo)識符是()。A、stdinB、stdoutC、stderrD、stdio正確答案:A12假定一個(gè)函數(shù)原型為intf1(inta[][N],intn),與數(shù)組參數(shù)等價(jià)的表示為()。A、int*aB、int**aC、int(*a)[N]D、int*a[N]正確答案:C13向一個(gè)二進(jìn)制文件中寫入數(shù)據(jù)的系統(tǒng)函數(shù)為fwrite(),它的參數(shù)有()。A、1B、2C、3D、4正確答案:D14在下面字符數(shù)組的定義語句中,有語法錯(cuò)誤的是()。A、chara[20]="abcdefg";B、chara[]="x+y=55.";C、chara[15]={'1','2'};D、chara[10]='5';正確答案:D答案解析:15假定要訪問一個(gè)結(jié)構(gòu)變量x中的數(shù)據(jù)成員a,則表示方法為()。A、x.aB、x->aC、x:aD、x(a)正確答案:A16在程序的一個(gè)文件中定義的函數(shù),若要在另一個(gè)文件中調(diào)用,則必須在這另一個(gè)文件中給出該函數(shù)的()。A、原型語句B、參數(shù)表C、函數(shù)名D、返回類型正確答案:A17假定a為一個(gè)數(shù)組名,則下面表達(dá)式中錯(cuò)誤的是()。A、a[i]B、*a++C、*aD、*(a+1)正確答案:B18使用“typedefintInteger;”語句把標(biāo)識符Integer定義為一個(gè)()。A、整數(shù)變量B、整數(shù)類型C、數(shù)組變量D、數(shù)組類型正確答案:B答案解析:19C語言中使用的字符常量,其起止標(biāo)記符是()。A、單引號B、雙引號C、中括號D、尖括號正確答案:A答案解析:20假定一維數(shù)組的定義為“chara[8];”,則該數(shù)組所占用的存儲(chǔ)空間的字節(jié)數(shù)為()。A、8B、16C、64D、32正確答案:A答案解析:二、填空題(題數(shù):10,共30.0分)1執(zhí)行下面程序的輸出結(jié)果為____________。#include<stdio.h>voidmain(){inti=1,p=1,s=1;while(s<40){i++;p=p*i;s=s+p;}printf("s=%d\n",s);}(3.0分)正確答案第一空:s=153我的答案:答案解析:2char類型的長度為______字節(jié)。(3.0分)正確答案第一空:1我的答案:答案解析:3執(zhí)行下面程序的輸出結(jié)果為___________。#include<stdio.h>voidmain(){inti,f1=1,f2;for(i=2;i<6;i++){f2=3*f1;f1=f2;}printf("f2=%d\n",f2);}(3.0分)正確答案第一空:f2=81我的答案:答案解析:4此程序運(yùn)行后,得到的輸出結(jié)果為____________________。#include<stdio.h>structWorker{charname[15];intage;intpay;};voidxh1(structWorkerr){r.age+=12;printf("%d",r.age);};voidmain(

溫馨提示

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

評論

0/150

提交評論