天天看點

國家開放大學c語言題及答案,國家開放大學C語言試題及答案.docx

國家開放大學c語言題及答案,國家開放大學C語言試題及答案.docx

國家開放大學C語言試題及答案.docx

1C語言中的循環類語句有3條,它們是()。選擇一項A. for,if,while B. for,while,do C. while,do,switch D. for,break,do正确答案是for,while,do2C語言中的跳轉類語句有四條,它們是goto,return和()。A.break,const B.static,continue C.break,continueD.while,extern正确答案是break,continue3當不需要函數傳回任何值時,則所使用的傳回類型為()。A.Int B.union C.void D.Void 正确答案是void4在一個函數定義中,函數頭包括的3個部分依次為函數類型、函數名和()。選擇一項A.表達式B.語句C.函數體D.參數表正确答案是參數表5在一個程式檔案的開始,若需要使用一個包含指令包含一個頭檔案時,則指令辨別符為A.cludeB.constC.includeD.defile正确答案是include6在include預處理指令中,不可以包含()。A.系統頭檔案B.程式檔案C.使用者頭檔案D.目标檔案正确答案是目标檔案7在printf函數調用的格式字元串中,若使用格式符為“6.2f”,則規定對應輸出的資料占用的字元位置個數為()。選擇一項A.5B.6C.4D.2正确答案是68在printf函數調用的格式字元串中,若使用格式符為“6.2f”,則規定對應輸出的資料中,其小數部分占用的字元位置個數為()。選擇一項A.5B.6C.4D.2正确答案是29在printf函數調用的格式字元串中,若使用格式符為“6.2f”,則規定對應輸出的資料中,其整數部分占用的字元位置個數為()。A.6B.4C.3D.2正确答案是310在scanf函數調用的格式字元串中,若使用格式符為“f”,則對應輸入的資料類型為()。選擇一項A.charB.intC.floatD.double正确答案是float11在scanf函數調用的格式字元串中,若使用格式符為“Lf”,則對應輸入的資料類型為()。A.charB.intC.floatD.double正确答案是double12每個C程式檔案在編譯時可能出現有嚴重性錯誤,其對應的辨別符号為()。選擇一項A.warningB.errorC.warnD.err正确答案是error13在VC環境下,為運作一個程式而建立的工作區檔案的擴充名為()。A.objB.C.dswD.dsp正确答案是dsw二、判斷題1在C語言中,作為辨別符的第一個字元可以是英文字母、數字或下劃線字元。正确的答案是“錯”。2在C語言中,辨別符中的非首字元可以是英文字母、數字或下劃線字元。選擇一項正确的答案是“對”。3當需要在程式檔案中引入使用者定義的頭檔案時,使用的不是include指令。正确的答案是“錯”。4使用include指令隻能包含頭檔案,不能包含其他任何檔案。正确的答案是“錯”。5注釋語句的内容隻會出現在源程式檔案中,不會出現在編譯後而生成的目标代碼檔案中。正确的答案是“對”。6一條注釋語句的最後必須使用分号結束。正确的答案是“錯”。7源程式檔案被編譯成目标檔案後,其目标檔案中也存在有對應的注釋内容。正确的答案是“錯”。8源程式檔案被編譯成目标檔案後,源程式檔案中的注釋語句仍然存在。正确的答案是“對”。9在一條注釋語句中,除了注釋内容外,不需要使用任何特定的标記符。正确的答案是“錯”。10多行注釋語句的開始和結束标記符可以互換使用。正确的答案是“錯”。11在執行“printf5d,x;”語句時,其輸出的x的值所占用的顯示寬度将大于等于5個字元位置。正确的答案是“對”。12在執行“printf6d,x;”語句時,其輸出的x的值所占用的顯示寬度将小于6個字元位置。正确的答案是“錯”。13在執行“printf8.2f,x;”語句時,其輸出的x的值所占用的顯示寬度将大于等于8個字元位置。正确的答案是“錯”。14在“scanfd d,”語句中,x和y變量均為整數類型。正确的答案是“對”。15在“scanfs,x;”語句中,x變量不是字元指針類型。正确的答案是“錯”。16在“scanfd-dd,”語句中,有文法錯誤。正确的答案是“錯”。17在C語言程式上機操作的過程中,連接配接程式的操作步驟之前是編譯程式。正确的答案是“對”。18在C語言程式上機操作的過程中,需要對每個使用者頭檔案進行單獨的編譯操作。正确的答案是“錯”。19在C語言程式上機操作的過程中,不能夠對使用者頭檔案進行單獨的編譯操作。正确的答案是“對”。1題目1int類型的長度為()。正确答案是42常數-4.25的資料類型為()。正确答案是雙精度型題目3一個有符号字元類型的值域範圍是()。正确答案是-128到127題目4字元串Its40n的長度為()。正确答案是5題目5實數340.25對應的規格化浮點數為()。正确答案是3.4025e2題目6要利用const保留字定義整型常量ABC的值為10,則對應的定義語句為()。正确答案是const int ABC10;題目7要利用define指令定義ABC常量的值為100,則對應的指令格式為()。正确答案是define ABC100下列數值中最大值是()。正确答案是288題目9在下面運算符中,優先級最高的是( )。正确答案是題目10設有語句序列為“int a12; aa*a;”,則執行結束後,a的值為()。正确答案是156題目11在C語言中,用于比較大小的關系運算符的總數為()。正确答案是6題目12x0 y5的相反表達式為()。正确答案是x0 y5題目13假定x是一個邏輯量,則x x和x x的值分别為( )。正确答案是0和1題目14假定x4.6,則函數ceilx的值為( )。正确答案是5.0題目15表達式floor2.3457*1000.5/100的值為( )。正确答案是2.35常數3.26e4是雙精度浮點數。正确的答案是“對”。題目17浮點數隻有單精度表示,沒有雙精度表示。正确的答案是“錯”。題目18定點數包括單精度定點數和雙精度定點數兩種。正确的答案是“對”。題目19定義符号常量隻有一種方法,就是采用預處理指令define的方法。正确的答案是“錯”。題目20使用const語句定義一個符号常量時,則必須對它同時進行初始化。正确的答案是“對”。題目21在一條變量定義語句中,定義的變量和賦給它的初值之間隻能使用等号。正确的答案是“對”。題目22假定x5,則表達式2x的值為7。正确的答案是“對”。題目23表達式int14.65的值為0。正确的答案是“錯”。題目24表達式xx1表示成增量表達式為x。正确的答案是“錯”。題目25假定x5,則執行“ax1020;”語句後a的值為10。正确的答案是“對”。題目26邏輯表達式ab b5的相反表達式為ab b5。正确的答案是“錯”。題目27在C語言中,求一個整數的絕對值的數學函數為absx。正确的答案是“對”。題目28在C語言中,退出程式運作的系統函數為exit。正确的答案是“對”一、單項選擇題題目1若x的值為15,則執行“ifx10 x; else x;”語句後,x的值為(正确答案是16題目2若x的值為-10,則執行“ifx x; else x;”語句後,x的值為( )。正确答案是-11題目3若x的值為10,則執行“switchx3case0 x; case 1x; case 2 x;”語句後,x的值為( )。正确答案是12題目4若x的值為10,則執行“switchx3case0 x; break; case 1x; default x;”語句後,x的值為( )。正确答案是12題目5若n的值為10,則執行“fori1;in; i S;”語句的過程中,表達式i1共被執行的次數為( )。正确答案是1題目6若n的值為10,則執行“fori0 i ifin/3 break;”語句後,i的值為( )。正确答案是4題目7若n的值為10,則執行“fori1;in; i S;”語句的過程中,表達式i共被執行的次數為( )。正确答案是n-1題目8若n的值為10,則執行“fori0;in; i forji; jn; j S;”語句後,内層循環體S語句的執行總次數為( )。正确答案是nn1/2題目9若n的值為10,則執行“whilen0sn;”語句的過程中,循環體被執行的次數為( )。正确答案是10題目10若n的值為5,s的值為0,則執行“whilen0 sn;”語句後,s的值為( )。正确答案是10題目11在下列的語句中,必須以分号作為結束的語句是( )。正确答案是do題目12若n的值為5,s的值為0,則執行“do sn; whilen0;”語句後,s的值為(正确答案是15題目13要結束任一種循環語句或switch語句的執行,則在其中使用的語句為( )。正确答案是break二、判斷題在if語句中,必須帶有else子句,不能省略它。正确的答案是“錯”。題目15在for循環語句的頭部,for後面括号内共有3個表達式位置。正确的答案是“對”。題目16for循環語句不能夠被轉換為while循環語句。正确的答案是“錯”。題目17while循環語句中的循環體可能不會被執行。正确的答案是“對”。題目18while循環語句的循環體,隻能是複合語句,不能是簡單語句。正确的答案是“錯”。題目19do-while循環語句中的循環體可能不會被執行。正确的答案是“錯”。題目20do-while循環語句的循環體,隻能是複合語句,不能是簡單語句。正确的答案是“錯”。題目21do-while循環語句是以循環體結尾的。正确的答案是“錯”break語句可以使用在switch語句中。正确的答案是“對”。題目23return語句中可以帶有傳回表達式。正确的答案是“對”。題目24continue隻能使用在任一種循環語句的循環體中。正确的答案是“對”。一、單項選擇題題目1假定有一個元素類型為int的數組a10,它所占用的存儲空間的位元組數為( )。正确答案是40題目2假定一維數組的定義為“char* a8;”,則該數組所占用的存儲空間的位元組數為( )。正确答案是32題目3假定有一個定義語句為“int a103,4,2,8,6;”,則元素a5的值為( )正确答案是0題目4在下面的一維數組定義語句中,有文法錯誤的是( )。正确答案是int a;題目5假定二維數組的定義語句為“int a35;”,則該數組所含元素的個數為( )。正确答案是15題目6假定有一個定義語句為“int a343,4,2,8,6;”,則元素a12的值為( )。正确答案是6題目7對于一個長度為n的字元串,儲存它至少需要占用的存儲位元組數為( )。正确答案是n1題目8對于一個二維字元數組aMN,存儲每個字元串的長度至多為( )。正确答案是N-1題目9若需要比較兩個字元串的大小,則選用的函數是( )。正确答案是strcmp二、判斷題題目10一維數組元素帶有兩個下标。正确的答案是“錯”。題目11對于二維數組元素,數組名後使用兩對中括号。正确的答案是“對”。題目12在一維數組的定義語句中,給數組賦初值的部分是用一對花括号括起來的資料表。正确的答案是“對”。題目13在一維數組的定義語句中,數組名前為元素類型關鍵字。正确的答案是“對”。題目14在二維數組的定義語句中,數組名後帶有兩對圓括号。正确的答案是“錯”。題目15假定二維數組的定義語句為“double aMN;”,則每個數組元素的列下标取值範圍在1N之間。正确的答案是“錯”。題目16使用“typedef char BB10;”語句定義辨別符BB為含有10個元素的一維字元數組。正确的答案是“錯”。題目17使用“typedef char BB1050;”語句定義辨別符BB為含有10行50列共500個元素的二維字元數組類型。正确的答案是“對”。題目18一個二維字元數組a1020中存儲每個字元串的最大長度為19。一、單項選擇題題目1一個指針指向一個資料對象,它儲存着該資料對象的位址,若資料對象為DataType類型,則該指針的類型為( )。正确答案是DataType*題目2NULL是一個符号常量,通常作為空指針值,它的取值為( )。正确答案是0題目3若要把一個整型指針p轉換為字元指針,則采用的強制轉換表達式為( )。.正确答案是char*p題目4若要定義整型指針p并初始指向x,則所使用的定義語句為( )。正确答案是int *p題目5假定p所指對象的值為25,p1所指對象的值為42,則表達式*p的值為( )。正确答案是25題目6假定p是一個指針變量,則該變量的位址表示為( )。t.正确答案是”,要使變量p指向s所指向的同一個字元串,則p應定義為( )。正确答案是char *ps;題目8假定a為一個數組名,則下面表達式中錯誤的是( )。正确答案是*a題目9已知“charb10”12345”, *pb;”,則*p2的值為()。正确答案是3題目10已知“int a65;”,則元素a24的位址比該數組的首位址大( )。正确答案是56個位元組題目11要使p指向二維整型數組a1020,p應定義為( )。正确答案是int*p20a;題目12執行“int *pmallocsizeofdouble*2;”語句後得到的動态存儲空間的位元組數為( )。正确答案是16題目13利用動态存儲配置設定建立具有10個位元組的一維數組空間的正确語句是( )。正确答案是char *pmalloc10;二、判斷題題目14在定義指針變量的語句中,對指針變量不允許賦初值。正确的答案是“錯”。題目15在定義指針變量的語句“int *p,pp;”中,p和pp具有相同的資料類型。正确的答案是“錯”。題目16在語句“typedefint* inPointer;”中,把辨別符inPointer定義為int*類型。正确的答案是“對”。題目17假定a是一個一維數組,則ai的值與”,則進行*p運算是不允許的。正确的答案是“錯”。題目19假定a是一個二維數組,則表達式*aji所對應的元素為aij。正确的答案是“錯”。題目20假定a是一個二維數組,則數組名a的值和a0的值相等。正确的答案是“對”。題目21進行動态存儲配置設定的calloc函數帶有一個參數。正确的答案是“錯”。題目22用于釋放動态存儲空間的函數為free,調研它需要帶有一個參數。正确的答案是“對”。題目23假定a是一個指針數組,則ai所指對象的位址比a位址大4*i個位元組。正确的答案是“對”。單項選擇題在下面的函數聲明語句中存在着文法錯誤的是( )。正确答案是AAint a; int b題目2如果一個函數定義僅允許為所在的程式檔案調用,則應在該函數定義的最前面添加的關鍵字為( )。正确答案是static題目3假定一個函數定義為“extern char* f1char*xreturn x;”,表示該函數作用域的關鍵字為( )。正确答案是extern題目4假定一個函數的原型語句為“int ffint* x;”,一個整型數組為a10,則下面函數調用表達式不正确的是( )。正确答案是ffa0題目5型語句為“int f1int a,int n;”,與數組參數等價的表示為( )。正确答案是int* a題目6假定一個函數的參數說明為const int a,則在函數體中不能進行的操作是( )。正确答案是a10題目7在函數體中定義的變量具有( )。正确答案是局部作用域題目8在函數外定義的變量,若帶有作用域關鍵字static,則它具有( )。正确答案是檔案作用域題目9在函數體中定義一個靜态變量時,選用的存儲屬性關鍵字為( )。正确答案是static題目10假定一個函數原型為“void ffint a,int n”,則對應的函數指針類型為( )。選擇一項正确答案是void*ffint*a,int二、判斷題題目11函數定義格式中的參數表被稱為實參表。正确的答案是“錯”。題目12函數定義格式中的參數表被稱為形參表。正确的答案是“對”。題目13函數調用參數表中的每個實參可以是表達式。正确的答案是“對”。題目14對于辨別為static屬性的變量,若沒有對它進行初始化,則預設的初值為0。正确的答案是“對”。題目15在函數體中定義一個變量時,若不選用任何存儲屬性關鍵字進行辨別,則它為靜态變量。正确的答案是“錯”。題目16在C語言程式中,主函數也可以成為遞歸函數。正确的答案是“錯”。題目17在C語言程式中,除主函數外的任何使用者定義的函數都可以是遞歸函數。正确的答案是“對”。一、單項選擇題題目1在結構類型的定義中,對于類型辨別符後的定義體,使用的起止标記符是一對( )。正确答案是圓括号題目2假定一個結構類型的定義為 “struct Aint a,b; double c”,則該類型的長度為( )。正确答案是16題目3假定一個結構類型的定義為 “struct Dint a; D* next”,則該類型的長度為( )。正确答案是8題目4假定有結構定義“struct Bookchar title20; double price”,則不正确的語句定義為( )。選擇一項正确答案是struct Book bC Programming,27.0題目5假定有結構定義“struct Bookchar title20; double price”,則正确的語句定義為( )。正确答案是struct Book *xcalloc6,sizeofstruct Book;題目6假定要通路一個結構指針變量x中的資料成員a,則表示方法為( )。正确答案是x-a題目7與結構成員通路表達式p-name等價的表達式為( )。正确答案是*p.name題目8在一個連結清單中,每個結點必然存在着一個指向自身結點類型的指針域,用來儲存下一個結點的( )。正确答案是位址題目9假定一個連結清單的表頭指針為f,結點中包含有data和next域,則向該連結清單的表頭插入一個位址為p的結點時,應執行的操作為( )。正确答案是p-nextf和fp題目10假定一個聯合類型的定義為 “union Dint a; D* next”,則該類型的長度為( )。正确答案是4二、判斷題題目11在同一個結構類型的定義中,各資料成員名必須不同。正确的答案是“對”。題目12在結構類型的定義中,其中的資料成員可以是本身類型的指針對象。正确的答案是“對”。題目13在結構類型的定義中,不允許出現結構類型不完整的超前定義。正确的答案是“錯”。題目14定義結構類型的同時能夠定義它的變量。正确的答案是“對”。題目15定義結構類型的變量時,能夠用同類型的其他變量進行初始化,不能用資料表進行初始化。正确的答案是“錯”。題目16使用結構類型時,必須一起使用關鍵字struct和類型辨別符。正确的答案是“對”。題目17在一個連結清單中,表頭結點和表尾結點均無後繼結點。正确的答案是“錯”。題目18在一個連結清單中,若表頭指針的值非空,則表頭和表尾結點必然不是同一個結點。正确的答案是“錯”。題目19在C語言中,一個結構類型的長度等于所含的所有資料成員類型長度的最大值。正确的答案是“錯”。一、單項選擇題題目1标準輸出裝置顯示器的檔案流辨別符是( )。正确答案是stdout題目2表示檔案結束符的符号常量EOF的值為( )。正确答案是-1題目3假定一個磁盤資料檔案占用n個位元組的存儲空間,則按位元組進行編址的範圍是( )。選擇一項正确答案是0n-1題目4在C語言中,為隻寫操作打開一個文本檔案的方式為( )。正确答案是w題目5在C語言中,文本檔案的打開方式共有( )。正确答案是6題目6在C語言中,為讀和寫操作打開一個二進制檔案,若檔案不存在則自動建立空檔案的打開方式為( )。選擇一項正确答案是wb題目7從一個文本檔案中讀取以換行符結束的一個字元串的系統函數為( )。正确答案是fgets題目8向一個文本檔案中寫入一個字元的系統函數為( )。選擇一項正确答案是fputc題目9向一個二進制檔案中寫入資料的系統函數為( )。正确答案是fwrite題目10從一個二進制檔案中讀取資料的系統函數為fread,它的參數有( )。正确答案是4個二、判斷題題目11一個磁盤資料檔案的檔案名由檔案主名和擴充名所組成,其中間用圓點分開。正确的答案是“對”。題目12當向字元檔案輸出一個換行符時,實際将輸出的是回車符或換行符。正确的答案是“錯”。題目13C語言系統中提供一個用來描述檔案屬性的類型辨別符為FILE。正确的答案是“對”。題目14在資料檔案打開方式字元串中,字元r、w和a具有确定的含義,分别代表讀、寫和追加方式。正确的答案是“對”。題目15在資料檔案打開方式字元串中,字元加号隻用于打開二進制檔案的方式中,不能用于打開文本檔案的方式中。正确的答案是“錯”。題目16每次隻能從文本檔案中讀取一個字元,不能一次讀取一行字元串。正确的答案是“錯”。題目17從文本檔案中輸入資料時,需要調用系統函數fgetc或fgets。正确的答案是“對”。題目18向文本檔案中輸出資料時,需要調用系統函數fputc或fgetc。正确的答案是“錯”。題目19對二進制檔案進行讀和寫操作将使用同一個系統函數。正确的答案是“錯”。題目20在C語言中,系統函數fseek用來移動資料檔案中的檔案位置指針。正确的答案是“對”