C語言程序設(shè)計(jì)(山東聯(lián)盟)知到智慧樹章節(jié)測試課后答案2024年秋菏澤學(xué)院_第1頁
C語言程序設(shè)計(jì)(山東聯(lián)盟)知到智慧樹章節(jié)測試課后答案2024年秋菏澤學(xué)院_第2頁
C語言程序設(shè)計(jì)(山東聯(lián)盟)知到智慧樹章節(jié)測試課后答案2024年秋菏澤學(xué)院_第3頁
C語言程序設(shè)計(jì)(山東聯(lián)盟)知到智慧樹章節(jié)測試課后答案2024年秋菏澤學(xué)院_第4頁
C語言程序設(shè)計(jì)(山東聯(lián)盟)知到智慧樹章節(jié)測試課后答案2024年秋菏澤學(xué)院_第5頁
已閱讀5頁,還剩68頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

C語言程序設(shè)計(jì)(山東聯(lián)盟)知到智慧樹章節(jié)測試課后答案2024年秋菏澤學(xué)院第一章單元測試

能將高級語言編寫的源程序轉(zhuǎn)換為目標(biāo)程序的是()。

A:編輯程序B:鏈接程序C:編譯程序D:解釋程序

答案:編譯程序C語言的注釋定界符是()。

A:/**/B:()C:[]D:{}

答案:/**/以下標(biāo)識符中,不能作為合法的C用戶定義標(biāo)識符的是()。

A:_123B:IFC:a3_b3D:void

答案:voidC語言源程序的基本單位是()。

A:標(biāo)識符B:過程B、函數(shù)C、子程序D、標(biāo)識符

C:函數(shù)D:子程序

答案:函數(shù)計(jì)算機(jī)能直接執(zhí)行的程序是用(

)程序設(shè)計(jì)語言編寫的。

A:匯編語言B:C語言

C:機(jī)器語言

D:C++

答案:機(jī)器語言

C程序中main函數(shù)的位置是(

)。

A:必須在程序的開始B:必須在程序的中間位置C:可以任意位置D:必須在程序的最后

答案:可以任意位置C語言程序上機(jī)調(diào)試步驟是(

)。

A:編寫源程序、執(zhí)行B:編寫源程序、編譯、執(zhí)行C:編寫源程序、編譯、組建、執(zhí)行D:編寫源程序、組建、執(zhí)行

答案:編寫源程序、編譯、組建、執(zhí)行語句的結(jié)束標(biāo)志是冒號“:”。

A:對B:錯(cuò)

答案:錯(cuò)C程序中1條語句必須寫在1行。

A:錯(cuò)B:對

答案:錯(cuò)屬于低級語言的是()。

A:JAVA語言B:機(jī)器語言C:匯編語言D:C語言

答案:機(jī)器語言;匯編語言

第二章單元測試

C語言中,最基本的數(shù)據(jù)類型是()

A:整型,字符型,邏輯型B:整型,實(shí)型,字符型,邏輯型C:整型,實(shí)型,字符型D:整型,實(shí)型,邏輯型

答案:整型,實(shí)型,字符型以下不合法的整型常量是(

)。

A:12345B:0xabcC:147D:68

答案:0xabc以下浮點(diǎn)數(shù)的表示不正確的是(

)。

A:22.3B:e23C:7.19E21D:12.E2

答案:e23C程序中變量可以不定義而直接使用。

A:對B:錯(cuò)

答案:錯(cuò)不能將字符串賦給字符變量。

A:對B:錯(cuò)

答案:對以下不合法的實(shí)型常量是(

)。

A:5B:5.0C:.5D:0.5

答案:5以下哪個(gè)是字符數(shù)據(jù)類型關(guān)鍵字(

)。

A:stringB:cC:charD:CHAR

答案:char在程序運(yùn)行期間,變量可以多次被賦值。

A:對B:錯(cuò)

答案:對以下關(guān)于符號常量的說法正確的是(

)。

A:可以將圓周率這個(gè)常量值定義為符號常量,定義方法為:#define

PI=3.1415926B:符號常量是以標(biāo)識符形式出現(xiàn)的常量,一經(jīng)定義,它所代表的常量值在其作用域內(nèi)不能改變C:使用符號常量不僅便于程序的調(diào)試和維護(hù),還能大大提高程序的運(yùn)行速度D:符號常量名可以不遵循C語言的標(biāo)識符和命名規(guī)則

答案:符號常量是以標(biāo)識符形式出現(xiàn)的常量,一經(jīng)定義,它所代表的常量值在其作用域內(nèi)不能改變以下定義變量的語句錯(cuò)誤的是(

)。

A:int

x1;B:float

y1;C:Double

a1;D:double

z1;

答案:Double

a1;以下能正確定義變量并給變量賦值的是(

)。

A:inta=5,b=5;B:inta=b=5;C:inta,b;

a=b=6;D:inta=5,b;

b=5;

答案:inta=5,b=5;;inta,b;

a=b=6;;inta=5,b;

b=5;以下是合法C語言常量的是(

)。

A:‘a(chǎn)’B:012C:“a”D:e-2

答案:‘a(chǎn)’;012;“a”以下合法的C語言整型常量是(

)。

A:011B:01aC:-0xffffD:160

答案:011;-0xffff;160若已定義inta=11;執(zhí)行printf("a=%d,a=%o,a=%x",a,a,a);語句后的輸出結(jié)果是(

)。

A:a=11,a=12,a=13B:a=11,a=13,a=bC:a=11,a=11,a=bD:a=11,a=13,a=c

答案:a=11,a=13,a=b函數(shù)putchar(65)的功能是向終端輸出(

)。

A:有編譯錯(cuò)誤B:6C:65D:A

答案:A

使用scanf()函數(shù),在輸入數(shù)據(jù)時(shí),若遇非法輸入則認(rèn)為該數(shù)據(jù)輸入結(jié)束。

A:錯(cuò)B:對

答案:對getchar()和scanf()均為輸入函數(shù),它們之間可通用,沒有任何區(qū)別。

A:錯(cuò)B:對

答案:錯(cuò)

第三章單元測試

若變量已正確定義,表達(dá)式(j=3,j++)的值是____。

A:4B:5C:3D:6

答案:3若"intn;floatf=13.8;",則執(zhí)行"n=(int)f%3"后,n的值是()。

A:4.6B:4.33333C:1D:4

答案:1若有定義“chara;intb;floatc;doubled;”,則表達(dá)式“a*b+d-c”值的類型為____。

A:charB:intC:doubleD:float

答案:double若x為浮點(diǎn)型,則表達(dá)式x=10/4為()。

A:2.5B:2.0C:3D:2

答案:2.0假設(shè)字符變量ch中存放有小寫英文字母,將其轉(zhuǎn)換為相應(yīng)的大寫英文字母的表達(dá)式是()。

A:ch=ch-'a'+'A'B:ch-='a'+'A'C:tolower(ch)D:ch=ch+32

答案:ch=ch-'a'+'A'C語言中,要求運(yùn)算對象只能為整數(shù)的運(yùn)算符是()。

A:/B:>C:%

D:*

答案:%

為了確保表達(dá)式n/2的值為float型,可寫成float(n/2)。

A:錯(cuò)B:對

答案:錯(cuò)若有定義:inta=8,b=5,c;,執(zhí)行語句:c=a/b+0.4;后,c的值是()。

A:2.0B:1C:2D:1.4

答案:1設(shè)有i=10,在表達(dá)式j(luò)=i--,則j的值是()。

A:11B:9C:8D:10

答案:10在C語言程序中,表達(dá)式5%2的結(jié)果是()。

A:2.5B:2C:3D:1

答案:1若x、i、j和k都是int型變量,則計(jì)算x=(i=4,j=16,k=32)表達(dá)式后,x的值是()。

A:4B:32C:52D:16

答案:32設(shè)x和y都是int型變量,則以下語句:x+=y;y=x-y;x-=y;的功能是交換x和y的值。

A:錯(cuò)B:對

答案:對若變量已正確定義,以下合法的賦值表達(dá)式是()。

A:y=int(a)B:++(a+b)C:a=a/(b=5)D:a=1/b=2

答案:a=a/(b=5)邏輯運(yùn)算符兩側(cè)運(yùn)算對象的數(shù)據(jù)類型()。

A:只能是0或1B:可以是任何類型的數(shù)據(jù)C:只能是整型或字符型數(shù)據(jù)D:只能是0或非0正數(shù)

答案:可以是任何類型的數(shù)據(jù)在賦值表達(dá)式中,賦值號左邊既可以是變量也可以是任意表達(dá)式。

A:錯(cuò)B:對

答案:錯(cuò)若a為int型,且其值為3,則執(zhí)行完表達(dá)式:

a+=6后,a的值是()。

A:6B:12C:9D:3

答案:9單目運(yùn)算符、賦值運(yùn)算符和條件運(yùn)算符均為右結(jié)合性。

A:對B:錯(cuò)

答案:對能表示x為偶數(shù)的表達(dá)式是().

A:x%2B:x%2!=0C:x%2==1D:x%2==0

答案:x%2==0已知inti=10;表達(dá)式'3<=i<=5'的值是()

A:19B:1C:20D:0

答案:1能正確表示“當(dāng)x的取值在[1,10]和[200,210]范圍內(nèi)為真,否則為假”的表達(dá)式是()

A:(x>=1)||(x<=10)&&(x>=200)||(x<=210)B:(x>=1)&&(x<=10)||(x>=200)&&(x<=210)C:(x>=1)||(x<=10)||(x>=200)||(x<=210)D:能正確表示“當(dāng)x的取值在[1,10]和[200,210]范圍內(nèi)為真,否則為假”的表達(dá)式是()

答案:(x>=1)&&(x<=10)||(x>=200)&&(x<=210)

第四章單元測試

以下程序運(yùn)行時(shí),輸入的x值在()范圍時(shí)才會有輸出結(jié)果。

A:大于3且不等于10的整數(shù)B:大于3且等于10的整數(shù)C:小于3的整數(shù)D:不等于10的整數(shù)

答案:大于3且不等于10的整數(shù)若a是基本整型變量,c是單精度實(shí)型變量,輸入語句____是錯(cuò)誤的。

A:scanf("d=%d,c=%f”,&a,&c);B:scanf("%d%f”,&a,&c);C:scanf("%d,%f”,&a,&c);D:scanf("%d%f”,a,c);

答案:scanf("%d%f”,a,c);main()

{inta=2,b=-1,c=2;

if(a<b)

c=0;

else

c++;

printf(“%d”,c);

}

該程序的輸出結(jié)果是()

A:1B:2C:3D:0

答案:3有以下程序

main()

{intx=1,y=2,z=3;

if(x>y)

if(y<z)

printf(“%d”,++z);

else

printf(“%d”,++y);

printf(“%d”,x++);

}

程序的運(yùn)行結(jié)果是()

A:1B:3C:31D:321

答案:1若x=0,y=3,z=3,以下表達(dá)式值為0的是()。

A:x%2&&y==zB:x<y?1:0

C:!xD:y=x||z/3

答案:x%2&&y==z在C程序中,運(yùn)算符%僅能用于整型數(shù)的運(yùn)算。

A:錯(cuò)B:對

答案:對有以下程序

voidmain()

{inta;

scanf(“%d”,&a);

if(a<9)printf(“%d”,a);

elseprintf(“%d”,a--);

}程序運(yùn)行時(shí)鍵盤輸入9<回車>,則輸出的結(jié)果是()

A:11B:8C:9D:10

答案:9為了避免嵌套的if—else語句的二義性,C語言規(guī)定else總是與()組成配對關(guān)系。

A:在其之前未配對的最近的ifB:在其之前未配對的ifC:縮排位置相同的ifD:同一行上的if

答案:在其之前未配對的最近的if賦值運(yùn)算符的結(jié)合性為左結(jié)合。

A:對B:錯(cuò)

答案:錯(cuò)if語句的基本形式是:if(表達(dá)式)語句,以下關(guān)于“表達(dá)式”值的敘述中正確的是()

A:可以是任意合法的數(shù)值B:必須是正數(shù)C:必須是邏輯值D:必須是整數(shù)值

答案:可以是任意合法的數(shù)值

第五章單元測試

設(shè)有程序段intm=20;

while(m=0)m=m++;以下說法正確的是()

A:循環(huán)體語句執(zhí)行一次B:循環(huán)是無限循環(huán)C:while循環(huán)執(zhí)行10次D:循環(huán)體語句一次也不執(zhí)行

答案:循環(huán)體語句一次也不執(zhí)行以下敘述正確的是()。

A:do-while語句構(gòu)成的循環(huán)不能用其它語句構(gòu)成的循環(huán)來代替.B:do-while語句構(gòu)成的循環(huán)只能用break語句退出.C:用do-while語句構(gòu)成的循環(huán),在while后的表達(dá)式為非零時(shí)結(jié)束循環(huán).D:用do-while語句構(gòu)成的循環(huán),在while后的表達(dá)式為零時(shí)結(jié)束循環(huán)

答案:用do-while語句構(gòu)成的循環(huán),在while后的表達(dá)式為零時(shí)結(jié)束循環(huán)在以下給出的表達(dá)式中,與do--while(E)語句中的(E)不等價(jià)的

表達(dá)式是()。

A:(E>0||E<0)B:(E==0)C:(!E==0)D:(E!=0)

答案:(E==0)對for(表達(dá)式1;;表達(dá)式3)可理解為()。

A:for(表達(dá)式1;1;表達(dá)式3)B:for(表達(dá)式1;表達(dá)式1;表達(dá)式3)C:for(表達(dá)式1;0;表達(dá)式3)D:for(表達(dá)式1;表達(dá)式3;表達(dá)式3)

答案:for(表達(dá)式1;1;表達(dá)式3)從循環(huán)體內(nèi)某一層跳出,繼續(xù)執(zhí)行循環(huán)外的語句是()。

A:break語句B:continue語句C:return語句D:空語句

答案:break語句下列程序的輸出為()。

main()

{

int

y=10;

while(y--);

printf(“y=%d

”,y);

}

A:y=0B:y=1C:y=-1D:while構(gòu)成無限循環(huán)

答案:y=-1若i為整型變量,則以下循環(huán)執(zhí)行次數(shù)是()。

for(i=2;i==0;)printf(“%d”,i--);

A:1次B:無限次C:2次D:0次

答案:0次C語言中while和do-while循環(huán)的主要區(qū)別是()。

A:do-while的循環(huán)體不能是復(fù)合語句B:do-while的循環(huán)體至少無條件執(zhí)行一次C:do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)D:while的循環(huán)控制條件比do-while的循環(huán)控制條件更嚴(yán)格

答案:do-while的循環(huán)體至少無條件執(zhí)行一次有以下程序

main()

{inta=1,b=2;

while(a<6){b+=a;a+=2;}

printf(“%d,%d”,a,b);

}程序運(yùn)行后的輸出結(jié)果是(

)

A:5,11B:7,1C:6,1D:7,11

答案:7,11有以下程序段

intn=0,p;

do

{

scanf(“%d”,&p);

n++;

}while(p!=12345&&n<3);

此處do-while循環(huán)的結(jié)束條件是______。

A:p的值不等于12345并且n的值小于3B:p的值等于12345或者n的值大于等于3C:p的值不等于12345或者n的值小于3D:p的值等于12345并且n的值大于等于3

答案:p的值等于12345或者n的值大于等于3以下程序段中的變量已正確定義

for(i=0;i<4;i=i+2)

for(k=1;k<3;k++)printf('*');

程序段的輸出結(jié)果是()

A:*B:********C:**D:****

答案:****以下程序的運(yùn)行結(jié)果是()。

main()

{

int

i,b,k=0;

for(i=1;i<=5;i++)

{b=i%2;

while(b>0){b--;k++;}}

printf(“k=%d,b=%d”,k,b);}

A:k=8,b=-1B:k=3,b=0C:k=8,b=-2D:k=3,b=-1

答案:k=3,b=0循環(huán)結(jié)構(gòu)中的continue語句是使整個(gè)循環(huán)終止執(zhí)行

A:對B:錯(cuò)

答案:錯(cuò)while和do…while循環(huán)不論什么條件下它們的結(jié)果都是相同的.

A:對B:錯(cuò)

答案:錯(cuò)

第六章單元測試

在一個(gè)被調(diào)用函數(shù)中,關(guān)于return語句使用的描述,錯(cuò)誤的是()

A:被調(diào)用函數(shù)中,如果有返回值,就一定要有return語句B:被調(diào)用函數(shù)中,一個(gè)return語句可以返回多個(gè)值給調(diào)用函數(shù)C:被調(diào)用函數(shù)中可以使用多個(gè)return語句D:被調(diào)用函數(shù)中可以不用return語句

答案:被調(diào)用函數(shù)中,一個(gè)return語句可以返回多個(gè)值給調(diào)用函數(shù)以下()函數(shù)的定義是錯(cuò)誤的?

A:voidf(inti){returni+1;}B:voidf(inti){}C:intf(){return0;}D:voidf(){}

答案:voidf(inti){returni+1;}C語言中函數(shù)返回值的類型是由()決定的。

A:定義函數(shù)時(shí)所指定的函數(shù)類型B:return語句中的表達(dá)式類型C:調(diào)用該函數(shù)的主調(diào)函數(shù)的類型D:調(diào)用函數(shù)時(shí)臨時(shí)決定

答案:定義函數(shù)時(shí)所指定的函數(shù)類型C語言規(guī)定,必須用(

)作為主函數(shù)名。

A:FunctionB:stdioC:mainD:include

答案:main下列說法正確的是(

)。

A:main函數(shù)可以放在C程序的中間部分,但在執(zhí)行C程序時(shí)是從程序開頭執(zhí)行的B:main函數(shù)可以放在C程序的中間部分,但在執(zhí)行C程序時(shí)是從main函數(shù)開始的C:main函數(shù)必須放在C程序的最后D:main函數(shù)必須放在C程序的開頭

答案:main函數(shù)可以放在C程序的中間部分,但在執(zhí)行C程序時(shí)是從main函數(shù)開始的以下程序的輸出結(jié)果是()。

voidfun(intx,inty,intz)

{z=x*x+y*y;}

main()

{inta=31;

fun(5,2,a);

printf(“%d”,a);

}

A:29B:31C:無定值D:0

答案:31C語言規(guī)定,簡單變量作實(shí)參,它與對應(yīng)形參之間的數(shù)據(jù)傳遞方式是:(

)。

A:由用戶指定傳遞方式B:單向值傳遞C:雙向值傳遞D:地址傳遞

答案:單向值傳遞以下函數(shù)頭定義正確的是:(

)。

A:double

fun(int

x,y)B:double

fun(intx,inty);C:double

fun(intx;inty)D:double

fun(intx,inty)

答案:double

fun(intx,inty)現(xiàn)有如下程序

#include“stdio.h”

intfun(intx)

{printf(“x=%d”,++x);

}

intmain()

{fun(12+5);return0;}

則程序的輸出結(jié)果是(

)。

A:x=17

B:x=18C:x=12

D:x=13

答案:x=18有以下程序,執(zhí)行后輸出的結(jié)果是(

)。

voidf(intx,inty)

{intt;

if(x<y){t=x;x=y;y=t;}

}

main()

{inta=4,b=3,c=5;

f(a,b);

f(a,c);

f(b,c);

printf('%d,%d,%d',a,b,c);}

A:4,3,5B:5,4,3C:3,4,5D:5,3,4

答案:4,3,5以下關(guān)于C語言程序中函數(shù)的說法正確的是:(

)。

A:函數(shù)的定義和調(diào)用均不可以嵌套B:函數(shù)的定義和調(diào)用都可以嵌套C:函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套D:函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套

答案:函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套return語句在一個(gè)函數(shù)體內(nèi)只能有一個(gè)。

A:錯(cuò)B:對

答案:錯(cuò)在C語言中,一個(gè)函數(shù)一般由兩個(gè)部分組成,它們是函數(shù)首部和函數(shù)體。

A:錯(cuò)B:對

答案:對

第七章單元測試

凡是函數(shù)中未指定存儲類別的局部變量,其隱含的存儲類別是____。

A:staticB:registerC:externD:auto

答案:auto下列程序的輸出結(jié)果是()。

#include<stdio.h>intf(intn){

staticintk,s;

n--;for(k=n;k>0;k--)s+=k;

returns;}intmain(void){

intk;

k=f(3);printf("(%d,%d)",k,f(k));

return0;}

A:(3,6)B:(6,6)C:(6,12)D:(3,3)

答案:(3,6)在一個(gè)C源程序文件中,若要定義一個(gè)只允許本源文件中所有函數(shù)使用的全局變量,則該變量需要使用的存儲類別是(

)。

A:registerB:staticC:externD:auto

答案:static以下程序的輸出結(jié)果是(

)。

#defineMAX(x,y)(x)>(y)?(x):(y)

main()

{

inta=5,b=2,c=3,d=3,t;

t=MAX(a+b,c+d)*10;

printf('%d',t);

}

A:7B:70C:6D:60

答案:7變量的有效范圍與其定義的位置有關(guān),(

)的作用域在整個(gè)源程序文件中都有效。

A:在第一個(gè)函數(shù)中定義的變量B:在主函數(shù)中定義的變量C:在函數(shù)中定義的靜態(tài)變量D:在定義第一個(gè)函數(shù)之前所定義的變量

答案:在定義第一個(gè)函數(shù)之前所定義的變量以下關(guān)于編譯預(yù)處理的敘述中錯(cuò)誤的是(

)。

A:預(yù)處理命令不是C語言本身的組成部分B:預(yù)處理命令行只能位于源程序中的所有語句之前C:一條有效的預(yù)處理命令必須單獨(dú)占據(jù)一行D:預(yù)處理命令行必須以#開始

答案:預(yù)處理命令行只能位于源程序中的所有語句之前如果在一個(gè)函數(shù)中的復(fù)合語句中定義了一個(gè)變量,則該變量(

)。

A:在該函數(shù)中有效B:只在該復(fù)合語句中有效C:在本程序范圍內(nèi)有效D:為非法變量

答案:只在該復(fù)合語句中有效進(jìn)行宏定義時(shí),宏名必須使用大寫字母表示。

A:對B:錯(cuò)

答案:錯(cuò)在C語言中,在register寄存器中存儲變量比在內(nèi)存中存儲變量運(yùn)算速度快。

A:錯(cuò)B:對

答案:對

第八章單元測試

下面的程序段將輸出▁▁▁▁▁。doublea[]={1,2,3,4,5};

printf("%d",sizeof(a));

A:48B:5C:0D:40

答案:40下面程序的運(yùn)行結(jié)果是()#include<stdio.h>intmain(){

inta[]={2,3,5,4},i;

for(i=0;i<4;i++)

switch(i%2)

{

case0:

switch(a[i]%2)

{

case0:

a[i]++;

break;

case1:

a[i]--;

}

break;

}

for(i=0;i<4;i++)

printf("%2d",a[i]);

printf("");

return0;}

A:3040B:2050C:0304D:3344

答案:3344以下正確地定義了一維整型數(shù)組a的語句組是()

A:intn;scanf(“%d”,&n);inta[n];B:intn=10,a[n];C:inta[SIZE];(在程序開始有#defineSIZE10)D:inta(10);

答案:inta[SIZE];(在程序開始有#defineSIZE10)假定int類型變量占用兩個(gè)字節(jié),其有定義:intx[10]={0,2,4};則數(shù)組x在內(nèi)存中所占字節(jié)數(shù)是()。

A:6B:10C:20D:3

答案:20在C語言中,一維數(shù)組的定義方式為:類型說明符數(shù)組名().

A:[整型變量]B:[整型常量表達(dá)式]C:[整型常量]或[整型表達(dá)式]D:[整型表達(dá)式]

答案:[整型常量表達(dá)式]若有說明:inta[10];,則對a數(shù)組元素的正確引用是().

A:a(5)B:a[3.5]C:a[10]D:a[10-10]

答案:a[10-10]下面關(guān)于數(shù)組的描述不正確的是().

A:數(shù)組是構(gòu)造數(shù)據(jù)類型B:數(shù)組是基本數(shù)據(jù)類型C:數(shù)組是相同數(shù)據(jù)類型的集合D:同一個(gè)數(shù)組共用一個(gè)數(shù)組名

答案:數(shù)組是基本數(shù)據(jù)類型以下能對一維數(shù)組a進(jìn)行正確初始化的語句形式是().

A:inta[]={0};B:inta[3]=(10,5,8);C:inta[10]={};D:inta[10]=(0,0,0,0,0);

答案:inta[]={0};若有定義:intx[10]={1,2,4};則數(shù)組元素x[4]的值是()。

A:1B:0C:2D:4

答案:0若有說明:inta[5];,則下面可以輸出數(shù)組a中所有元素值的是()。

A:for(i=0;i<5;i++)

printf("%d",a[i]);B:while(b[i]!='')

printf("%d",a[i]);C:for(i=1;i<=5;i++)

printf(“%d”,a[i]);D:printf(“%d”,a);

答案:for(i=0;i<5;i++)

printf("%d",a[i]);下列不是給數(shù)組的第一個(gè)元素賦值的語句是().

A:inta[4];

scanf("%d",a);B:a[1]=2;C:inta[4]={1};D:inta[4]={2*3};

答案:a[1]=2;若有說明:inta[10]={6,7,8,9,10};則該語句不正確,因?yàn)閿?shù)組長度與初值個(gè)數(shù)不相同。

A:錯(cuò)B:對

答案:錯(cuò)一般地,一維數(shù)組各元素分配在連續(xù)地內(nèi)存單元之中。

A:錯(cuò)B:對

答案:對

第九章單元測試

有兩個(gè)字符數(shù)組s1,s2,則以下正確的輸入格式是(

)

A:scanf("%s%s",s1,

s2);B:scanf("%s%s",&s1,

&s2);C:gets("s1"),

gets("s2");D:gets(s1,s2);

答案:scanf("%s%s",s1,

s2);以下不能對二維數(shù)組a進(jìn)行正確初始化的語句是(

)

A:int

a[

][3]={{1,2},{0}};B:int

a[2][3]=

{{1,2},{3,4},{5,6}};C:int

a[

][3]={1,2,3,4,5,6};D:int

a[2][3]={0};

答案:int

a[2][3]=

{{1,2},{3,4},{5,6}};以下對二維數(shù)組a的正確說明是(

)

A:float

a[3][4];B:float

a(3,4);C:float

a(3)(4);D:int

a[3][

];

答案:float

a[3][4];若有說明:inta[][3]={1,2,3,4,5,6,7};,則a數(shù)組第一維的大小是()

A:4B:3C:2D:無確定值

答案:3有以下程序段:inta[][4]={1,2,3,4,5,6,7,8,9,10,11,12};printf(“%d”,a[1][5]);,執(zhí)行后輸出的結(jié)果是(

A:4B:10C:11D:編譯有錯(cuò)誤

答案:編譯有錯(cuò)誤若有初始化語句:inta[3][4]={0};,則下面正確的敘述是()。

A:數(shù)組a中每個(gè)元素均可得到初值0B:此初始化語句不正確C:數(shù)組a中各元素都可得到初值,但其值不一定為0D:只有元素a[0][0]可得到初值0

答案:數(shù)組a中每個(gè)元素均可得到初值0如有說明:inta[3][4];,則對a數(shù)組元素的正確引用是()。

A:a[3][4]B:a[1+1][0]C:a(2)(1)D:a[1,3]

答案:a[1+1][0]對兩個(gè)數(shù)組a和b進(jìn)行初始化:chara[]=“ABCDEF";

charb[]={'A','B','C','D','E','F'};

則以下敘述正確的是()

A:a與b數(shù)組完全相同B:a與b長度相同C:a的長度比b長D:a與b中都存放字符串

答案:a的長度比b長下列能正確定義二維實(shí)型數(shù)組a的選項(xiàng)是().

A:floata(3,4);B:floata[3][4];C:floata[3][]={{1},{0}};D:floata[3][];

答案:floata[3][4];下面描述正確的是().

A:字符串"STOP□"與“STOP"相等(其中□表示1個(gè)空格)B:兩個(gè)字符串所包含的字符個(gè)數(shù)相同時(shí),才比較字符串C:字符個(gè)數(shù)多的字符串比字符個(gè)數(shù)少的字符串大D:字符串"That"小于字符串"The"

答案:字符串"That"小于字符串"The"若有定義:chara[4]="abc",b[20]="Hello";,則執(zhí)行語句strcat(b,a);后,數(shù)組b中的內(nèi)容為().

A:abcHelloB:HelloC:abcD:Helloabc

答案:Helloabc字符數(shù)組中的數(shù)據(jù)存儲時(shí)必須以'\0'結(jié)尾。

A:錯(cuò)B:對

答案:錯(cuò)有定義:chara[]="1";則a數(shù)組的長度是2。

A:對B:錯(cuò)

答案:對下列字符串賦值語句中,能正確把字符串Cprogram賦給數(shù)組的語句是()

A:chara[10];

strcpy(a,"Cprogram");B:chara[10]={'C','','p','r','o','g','r','a','m',''};C:chara[]={'C','','p','r','o','g','r','a','m'};D:chara[10]={"Cprogram"};

答案:chara[10];

strcpy(a,"Cprogram");;chara[10]={'C','','p','r','o','g','r','a','m',''};;chara[10]={"Cprogram"};如有說明:inta[3][4];,則對a數(shù)組元素的合法引用是()

A:a[0][2]B:a[0][4]C:a[1][3]D:a[2][0]

答案:a[0][2];a[1][3];a[2][0]

第十章單元測試

for(j=h+1;j<=max-1;j++)printf("%04d",a[j]);輸出結(jié)果中,若數(shù)組小于1000則前面顯示前導(dǎo)字符0.

A:對B:錯(cuò)

答案:對程序能實(shí)現(xiàn)求20的階乘值。ints=1;n=1;for(n=1;n<=20;n++)s=s*n;

A:錯(cuò)B:對

答案:錯(cuò)對數(shù)組下標(biāo)的訪問規(guī)律變化,可用數(shù)組賦指定值實(shí)現(xiàn)。

A:錯(cuò)B:對

答案:對掃雷游戲設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)只能用二維數(shù)組。

A:對B:錯(cuò)

答案:錯(cuò)程序設(shè)計(jì)基本過程包括:

A:代碼的編寫、調(diào)試、運(yùn)行。B:界面設(shè)計(jì)。C:理解題意,分析需求。D:確定數(shù)據(jù)的組織形式即數(shù)據(jù)結(jié)構(gòu)。E:總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)

答案:代碼的編寫、調(diào)試、運(yùn)行。;界面設(shè)計(jì)。;理解題意,分析需求。;確定數(shù)據(jù)的組織形式即數(shù)據(jù)結(jié)構(gòu)。;總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)一個(gè)遞歸算法必須包括()。

A:終止條件和遞歸部分B:終止條件和循環(huán)部分C:遞歸部分D:循環(huán)部分

答案:終止條件和遞歸部分對于遞歸函數(shù)f,調(diào)用f(4),其返回值為()。

intf(intn)

{

if(n)

returnf(n-1)+n;

elsereturnn;

}

A:4B:其余選項(xiàng)均不是C:0D:10

答案:10調(diào)用函數(shù)f(27)的輸出結(jié)果是()。

voidf(intn)

{

if(n<5)

printf("%d",n);

else{

printf("%d",n%5);

f(n/5);

}

}

A:201B:102C:21D:20

答案:201有如下函數(shù)調(diào)用語句:func(rec1,rec2+rec3,(rec4,rec5));則該函數(shù)調(diào)用語句中,含有的實(shí)參個(gè)數(shù)是()。

A:3B:5C:有語法錯(cuò)D:4

答案:3在C語言中,下列錯(cuò)誤的說法是。

A:不允許在函數(shù)定義中再定義函數(shù)B:遞歸程序不可能用非遞歸算法實(shí)現(xiàn)C:函數(shù)可以遞歸調(diào)用D:對于continue語句,可以通過改變程序的結(jié)構(gòu)而不使用它

答案:遞歸程序不可能用非遞歸算法實(shí)現(xiàn)對于以下遞歸函數(shù)f,調(diào)用f(4),其返回值為()。

intf(intn)

{returnf(n-1)+n;}

A:10B:11C:0D:其余選項(xiàng)均不是

答案:其余選項(xiàng)均不是有兩個(gè)字符數(shù)組a,b,則以下正確的輸入語句是().

A:scanf("%s%s",&a,&b);B:gets(a,b);C:gets("a"),gets("b");D:scanf("%s%s",a,b);

答案:scanf("%s%s",a,b);若用數(shù)組名作為函數(shù)調(diào)用時(shí)的實(shí)參,則實(shí)際上傳遞給形參的是()。

A:數(shù)組的第一個(gè)元素值B:數(shù)組中全部元素的值C:數(shù)組首地址D:數(shù)組元素的個(gè)數(shù)

答案:數(shù)組首地址對字符串進(jìn)行輸入輸出操作時(shí),只能對字符串整體進(jìn)行輸入輸出。

A:對B:錯(cuò)

答案:錯(cuò)若有說明:inta[][4]={0,0};則表示二維數(shù)組a的第一維大小為1。

A:錯(cuò)B:對

答案:對

第十一章單元測試

使用指針變量訪問目標(biāo)變量,也稱為對目標(biāo)變量的()訪問。

A:直接B:一次性C:一般性D:間接

答案:間接若有說明:int

i,j=7,*p=&i;則與i=j;等價(jià)的語句是().

A:i=p;B:i=**p;C:i=&j;D:*p=*&j;

答案:*p=*&j;inta=2,*p=&a,*q=p,則以下非法賦值語句是()。

A:*p=*q;B:p=q;C:a=*q;D:q=a;

答案:q=a;若有定義“int*p,m=5,n;”,則下列選項(xiàng)中正確的是().

A:p=&n;

scanf("%d",*p);B:p=&n;

*p=m;C:p=&n;

scanf(“%d”,&p);D:scanf("%d",&n);

*p=n;

答案:p=&n;

*p=m;若定義:inta=5,*b=&a;則printf(“%d”,*b);的輸出結(jié)果是()。

A:a的地址B:5C:6D:無確定值

答案:5下列關(guān)于指針概念的描述,錯(cuò)誤的是().

A:指針的值是可以改變的B:指針中存放的是某變量或?qū)ο蟮牡刂分礐:指針的類型是他所存放的數(shù)值的類型D:指針是變量,它也具有一個(gè)內(nèi)存地址值

答案:指針的類型是他所存放的數(shù)值的類型如果x是整型變量,則合法形式為()。

A:&*xB:*xC:&(x+5)D:*&x

答案:*&x變量的指針,其含義是指該變量的()。

A:值B:一個(gè)標(biāo)志C:地址D:名

答案:地址系統(tǒng)對變量的直接訪問是將變量的地址放在另一個(gè)內(nèi)存單元中。

A:錯(cuò)B:對

答案:錯(cuò)“inti,k,*p=&i;”中定義的“*p=&i;”等價(jià)于“int*p;p=&i;”。

A:對B:錯(cuò)

答案:對

第十二章單元測試

假設(shè)scanf語句執(zhí)行時(shí)輸入ABCDE<回車>,能使puts(s)語句正確輸出ABCDE字符串的程序段是__。

A:chars[5]={'A','B','C','D','E'};puts(s);B:char*s;scanf("%s",s);puts(s);C:chars[5]={"ABCDE"};puts(s);D:char*s;s="ABCDE";puts(s);

答案:char*s;s="ABCDE";puts(s);下面程序的運(yùn)行結(jié)果是()。

#include<stdio.h>intmain(void){

intx[5]={2,4,6,8,10},*p,**pp;

p=x;

pp=&p;

printf(“%d”,*(p++));

printf(”%d”,**pp);

return0;}

A:24B:44C:22D:46

答案:24根據(jù)聲明inta[10],*p=a;,下列表達(dá)式錯(cuò)誤的是()。

A:a++B:a[9]C:p[5]D:*p++

答案:a++若有定義“inta[10]={1,2,3,4,5,6,7,8,9,10},*p;”,則下列語句正確的是()。

A:for(p=a;p<(a+10);++a)B:for(p=a;a<(p+10);a++)C:for(p=a;p<(a+10);p++)D:for(p=a,a=a+10;p<a;p++)

答案:for(p=a;p<(a+10);p++)若有定義“inta[10],*p=a;”,則p+5表示()。

A:a[4]的地址B:a[6]的值C:a[5]的值D:a[5]的地址

答案:a[5]的地址若有定義chara[]="Iamaboy",*b="Iamaboy";,則下列敘述錯(cuò)誤的是()。

A:b中存放的地址就是數(shù)組a的首地址B:b中存放的地址值可以改變C:a+3表示的是字符m的地址D:b指向其他字符串時(shí),字符串的長度不受限制

答案:b中存放的地址就是數(shù)組a的首地址若有語句inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a,則()不是對a數(shù)組元素的正確引用(0<=i<=10)。

A:p[i]B:a[p-a]C:*(&a[i])D:*(*(a+i))

答案:*(*(a+i))若有定義“inta[5],*p=a;”,能正確引用a數(shù)組元素的是()。

A:*(p+5)B:*(a+2)C:&a[5]D:a+2

答案:*(a+2)設(shè)有定義語句“floats[10],*p1=s,*p2=s+5;”,下列表達(dá)式錯(cuò)誤的是()。

A:p2--B:p1-p2C:p1<=p2D:p1=0xffff

答案:p1=0xffff以下程序段的輸出結(jié)果是()。

char*p[]={"ABC","DEF","GHI"};

intj;

puts(p[1]);

A:ABCB:BC:CD:DEF

答案:DEF用指針變量可以指向一維數(shù)組中的元素,也可以指向多維數(shù)組中的元素。

A:錯(cuò)B:對

答案:對數(shù)組名代表數(shù)組的起始地址。

A:對B:錯(cuò)

答案:對有如下說明:int

a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;則數(shù)值為9的表達(dá)式是*(p+8)。

A:對B:錯(cuò)

答案:對

第十三章單元測試

以下程序運(yùn)行后的輸出結(jié)果是____。

#include<stdio.h>structs{

intx;

inty;}data[2]={10,100,20,200};intmain(){

structs*p=data+1;

printf("%d",p->x);

return0;}

A:10B:21C:20D:11

答案:20有如下定義:

structStudent{

charname[10];

intage;

chargender;}std[3],*p=std;則以下各輸入語句中錯(cuò)誤的是:

A:scanf("%s",&);B:scanf("%c",&std[0].gender);C:scanf("%c",&(p->gender));D:scanf("%d",&(*p).age);

答案:scanf("%s",&);有如下定義:struct

date{intyear;intmonth;

intday;};struct

{charname[20];charsex;structdatebirthday;}person;下面正確的賦值語句是()。

A:person.year=1980;B:person.birthday.year=1980;C:birthday.year=1980

;D:year=1980

;

答案:person.birthday.year=1980;共用體變量在程序執(zhí)行期間()。

A:部分成員一直駐留在內(nèi)存中B:所有成員一直駐留在內(nèi)存中C:沒有成員一直駐留在內(nèi)存中D:只有一個(gè)成員一直駐留在內(nèi)存中

答案:部分成員一直駐留在內(nèi)存中設(shè)有以下定義:structsk{inta;floatb;}data;int*p;若要使p指向data中的a域,正確的賦值語句是()。

A:p=&a;B:p=&data.a;C:*p=data.a;D:p=data.a;

答案:p=&data.a;對于結(jié)構(gòu)體變量的引用,下列敘述正確的是()。

A:如果成員本身就是一個(gè)結(jié)構(gòu)體,只能對最低級的成員進(jìn)行賦值等引用和運(yùn)算。B:對結(jié)構(gòu)體成員可以進(jìn)行各種運(yùn)算,其中“.”優(yōu)先級最低。C:兩個(gè)同一類型的結(jié)構(gòu)體變量之間不能整體賦值。D:只能引用結(jié)構(gòu)體變量成員的地址,不能引用結(jié)構(gòu)體變量的地址。

答案:如果成員本身就是一個(gè)結(jié)構(gòu)體,只能對最低級的成員進(jìn)行賦值等引用和運(yùn)算。以下敘述錯(cuò)誤的是()。

A:可以通過typedef增加新的類型B:可以用typedef將已存在的類型用一個(gè)新的名字代表C:用typedef定義新類型后,原有類型名仍有效D:用typedef可以為各種類型起別名,但不能為變量起別名

答案:可以通過typedef增加新的類型在一個(gè)單鏈表head中,若要在指針p所指結(jié)點(diǎn)后插入一個(gè)q指針?biāo)附Y(jié)點(diǎn),則執(zhí)行()。

A:q->next=p->next;p=q;B:p->next=q->next;q->next=p;C:q->next=p->next;p->next=q;D:p->next=q->next;p->next

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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

提交評論