河南工業(yè)大學(xué)C語言題庫_第1頁
河南工業(yè)大學(xué)C語言題庫_第2頁
河南工業(yè)大學(xué)C語言題庫_第3頁
河南工業(yè)大學(xué)C語言題庫_第4頁
河南工業(yè)大學(xué)C語言題庫_第5頁
已閱讀5頁,還剩70頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

該變量已正確定義為整型,則表達(dá)式n=i=2,++i,i++[<3>Jo

已知字母A的ASCH值為65,下列程序運(yùn)行后的輸出結(jié)果是[v67g>J《批注:應(yīng)為G》

main()

{chara,b;

a='A'+'5'-3;b=a+6-2;

printf("%d%c",a,b);

)

2下列isprime函數(shù)的功能是判斷形參a是否為素?cái)?shù),是素?cái)?shù),函數(shù)返回1,否則返回0。請

填空。

intisprime(inta)

{inti;

for(i=2;i<=a/2;i++)

if(a%i==0)[<retum(0)>];

[<retum(l)>];

}

3設(shè)有定義:floatx=123.4567;,則執(zhí)行下列語句后的輸出結(jié)果是《123.460000>]

printf(H%f\nn,(int)(x*100+0.5)/100.0);

若有定義:inta=4,b=5,c=6;接著順序執(zhí)行下列語句后,變量b中的值是

c=(a-=(b-5));

c=(a%3)+(b=l);

4若a的值為1,則表達(dá)式!all++a的值是

5卜列程序的功能是:求出數(shù)組x中各相臨兩個(gè)兀素的和依次存放到數(shù)組a中,然后輸出。

請?zhí)羁铡?/p>

main()

{intx[10],a[9],i;

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

scanf(”%d”,&x[i]);

for([<i=1>];i<10;i++)

a[i-l]=x[i]+[<x[i-l]>];

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

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

printf("\nM);

6設(shè)有定義語句:inta[][3]={{0},{1},{3}},則數(shù)組元素a[l][2]^[<0>]

7下列程序中的數(shù)組a包括10個(gè)整數(shù)元素,從a中第二個(gè)元素起,分別將后項(xiàng)減前項(xiàng)之差

存入數(shù)組b,并按每行4個(gè)輸出,請?zhí)羁铡?/p>

main()

{inta[10],b[10],i;

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

scanf(u%du,&a[i]);

for(i=l;i<10;i++)

[<b[i-l]=a[i]-a[i-l]>];

for(i=l;i<10;i++)

{printf("%dn,b[i-l]);

if(i%4==0)printf(',\nM);

)

8下面程序?qū)⒍S數(shù)組a的行和列互換后存放到一個(gè)二維數(shù)組b中,請?zhí)羁铡?/p>

main()

{inta⑵[3]={{1,2,3},{4,5}},b⑶⑵,i,j;

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

(

for(j=0;j<3;j++)

[<b[j][i]=a[i]fj]>]

)

)

)

###

9下列敘述中錯誤的是()。

算法正確的程序最終一定會結(jié)束。

算法正確的程序可以有零個(gè)輸出。

算法正確的程序可以有零個(gè)輸入。

算法正確的程序?qū)τ谙嗤妮斎胍欢ㄓ邢嗤慕Y(jié)果。

-B

10~~~1

下列敘述中錯誤的是()。

C程序必須由一個(gè)或一個(gè)以上的函數(shù)組成。

函數(shù)調(diào)用可以作為一個(gè)獨(dú)立的語句存在。

若函數(shù)有返回值,必須通過return語句返回。

函數(shù)形參的值也可以傳回給對應(yīng)的實(shí)參。

-D

11C語言源程序名的后綴是()。

.exe

.c

.obj

.cp

~B

12下列敘述中錯誤的是()o

用戶定義的標(biāo)示符允許使用關(guān)鍵字。

用戶定義的標(biāo)示符應(yīng)做到“見名知意”。

用戶定義的標(biāo)示符必須以字母或下劃線開頭。

用戶定義的標(biāo)示符中大、小寫字母代表不同標(biāo)示。

~A

13下列關(guān)于函數(shù)的敘述正確的是()。

每個(gè)函數(shù)都可以被其他的函數(shù)調(diào)用(包含main函數(shù))。

每個(gè)函數(shù)都可以被單獨(dú)編譯。

每個(gè)函數(shù)都可以單獨(dú)運(yùn)行。

在一個(gè)函數(shù)內(nèi)部可以定義另一個(gè)函數(shù)。

-B

14下列不合法的用戶標(biāo)示符是()。

j2_key

_int

4d

_8_

?C

15下列定義變量的語句中錯誤的是()o

int_int;

doubleint_;

charfor;

floatus$;

?D

16按照C語言規(guī)定的用戶標(biāo)示符命名規(guī)則,不能出現(xiàn)在標(biāo)示符中的是()。

大寫字母

連字符

數(shù)字字符

下劃線

-B

17對于一個(gè)正常運(yùn)行的C程序,下列敘述正確的是()。

程序的執(zhí)行總是起止于main函數(shù)。

程序的執(zhí)行總是從第一個(gè)函數(shù)開始,結(jié)束于main函數(shù)

程序的執(zhí)行總是從main函數(shù)開始,在最后一個(gè)函數(shù)結(jié)束

程序的執(zhí)行總是從第一個(gè)函數(shù)開始,在最后一個(gè)函數(shù)結(jié)束

~A

18下列敘述正確的是()。

C語言程序從源程序中第一個(gè)函數(shù)開始執(zhí)行

可以在程序中由用戶指定一個(gè)函數(shù)作為主函數(shù),程序?qū)拇碎_始執(zhí)行

C語言規(guī)定必須用main作為主函數(shù)名,程序從此開始執(zhí)行,在次結(jié)束

main可作為用戶標(biāo)示符,可以命名任意一個(gè)函數(shù)作為主函數(shù)

-C

下列敘述正確的是()o

C程序中的注釋只能出現(xiàn)在程序的開始位置

C程序書寫格式嚴(yán)格,要求一行只能寫一個(gè)語句

C程序書寫格式自由,一行可以寫多條語句

用c語言編寫的程序只能放在一個(gè)程序文件中

-C

下列不合法的數(shù)值常量是()。

011

lei

8.0e0.5

Oxabc

~C

可在C程序中用作用戶標(biāo)識符的一組是()。

and_2007

datey-m-d

hidr.tom

casebigl

?A

下列關(guān)于long、int和short類型數(shù)據(jù)占用內(nèi)存大小的敘述正確的是()。

均占4個(gè)字節(jié)

根據(jù)數(shù)據(jù)的大小來決定所占內(nèi)存的字節(jié)數(shù)

由用戶自己定義

由C語言編譯系統(tǒng)決定

-D

設(shè)變量已正確定義并賦值,以下正確的表達(dá)式是()。

x=y*5=x+z

int(15.8%3)

x=y+z+3,++y

x=25%5.0

~C

設(shè)有定義:intk=l;floatf=7;則下列選項(xiàng)中錯誤的表達(dá)式是()。

k=k>=k

-k++

k%int(f)

k>=f>=m

?C

表達(dá)式36-5/2+L2+5%2的值是()。

4.3

4.8

3.3

3.8

~D

下列敘述中錯誤的是()o

C程序中的#m111(1?fll#define行均不是C語句

除逗號運(yùn)算符外,賦值運(yùn)算符的優(yōu)先級最低

C程序中,j++;是賦值語句

C程序中,+、-、*、%是算術(shù)運(yùn)算符,可用于整型數(shù)和實(shí)型數(shù)的運(yùn)算

?D

下列選項(xiàng)中,當(dāng)x為大于1的奇數(shù)時(shí),值為0的表達(dá)式是()。

x%2==l

x/2

x%2!=0

x%2==0

~D

下列敘述中錯誤的是()o

C語句必須以分號結(jié)束

復(fù)合語句在語法上被看作一條語句

空語句出現(xiàn)在任何位置都不會影響程序運(yùn)行

賦值表達(dá)式加上分號就構(gòu)成賦值語句

?C

下列正確定義且賦初值的語句是()。

intnl=n2=10;

charc=32;

floatf=f+1.1;

doublex=12.3E2.5

?B

若變量已正確定義并賦值,下列合法的語句是()o

x=y==5

x=n%2.5

x+n=i

x=5=l+4

?A

以下定義正確的是()o

inta=b=O;

charA=65+l,b=,b';

floata=l;,b=&a,',c=&b;

doublea=0.0;b=l.l;

?B

有下列程序:

*main()

*{charal=,M,,a2='m';

*printf(,,%c\n",(al,a2));

*}

下列敘述正確的是()o

程序輸出M

程序輸出m

格式說明符不足,編譯出錯

程序運(yùn)行時(shí)產(chǎn)生出錯信息

-B

有下列程序:

*main()

*{intx,y,z;

*x=y=1;

*z=x++,y++,++y;

*printf("%d,%d,%d\n",x,y,z);

*}

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

2,3,3

2,3,2

2,3,1

2,2,1

~C

設(shè)有定義:intk=0;下列選項(xiàng)的4個(gè)表達(dá)式中與其他3個(gè)表達(dá)式的值不同的是()。

k++

k=k+l

++k

k+1

?A

在C語言中,以下說法不正確的是()o

在C程序中,整數(shù)和實(shí)數(shù)都能被準(zhǔn)確無誤的表示出來

在C程序中,任何一個(gè)變量名都代表存儲器的一個(gè)位置

靜態(tài)變量的生存周期與整個(gè)程序的運(yùn)行期相同

C語言中,任何變量都必須先聲明才能進(jìn)行引用

~A

若有以下定義和語句:

*inta=010,b=Ox10,c=10;

*printf(',%d,%d,%d\n,',a,b,c);

*則輸出結(jié)果是()o

8,10,10

10,10,10

8,8,10

8,16,10

~D

設(shè)C語言中,float類型數(shù)據(jù)占4個(gè)字節(jié),則double類型數(shù)據(jù)占()個(gè)字節(jié)。

1

2

8

4

~C

以下正確的實(shí)型常量()o《批注:B是正確答案嗎?》

E3.4

-12345

2.2e0.8

4

~B

設(shè)int類型的數(shù)據(jù)長度為2個(gè)字節(jié),則unsignedint類型數(shù)據(jù)的取值范圍是()。

0-255

0-65535

-32768?32767

-256?255

~B

設(shè)a和b均為int型變量,且a=6,b=l1,則能使值為3的表達(dá)式是()。

b%(a%4)

b%(a-a%5)

b%a-a%5

(b%a)-(a%4)

~D

已定義變量a為整型,則不能正確表示9vavl4的表達(dá)式是()。

!(9<a&&a<14)

a==10lla==lllla==12lla==13

a>9&&a<14

!(a<=9)&&!(a>=14)

?A

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

*#include<stdio.h>

*main()

*{inta=3,b=4,c=8,d=4,m=1,n=3;

*printf(',%d\n',,(m=a>b)&&(n=c>d))

*}

0

1

2

3

?A

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

(x>=1)&&(x<=10)&&(x>=100)&&(x<=110)

(x>=l)ll(x<=l0)ll(x>=100)ll(x<=110)

(x>=1)&&(x<=10)ll(x>=100)&&(x<=110)

(x>=l)ll(x<=10)&&(x>=100)ll(x<=ll0)

~C

若有定義:inla=4,b=5;floalx=3.4,y=2.1;則下面表達(dá)式的值為()。

*(float)(a+b)/2+(int)x%(int)y

5.5

55

5.500000

55.00000

~C

若a為int型變量,則執(zhí)行以下語句后,a的值為()。

*a=5;a+=a-=a*a;

25

-40

40

-14

?B

若已定義x和y為整型變量,且x=7,則表達(dá)式y(tǒng)=2.3+x/2的值是()。

6

5

5.0

6.0

?B

有以下程序:

*main()

*{inty=l,x=2,z=3;

*primf("%d,%d\n”,(++x,y++),z+2);

*}

*執(zhí)行后的輸出結(jié)果是()o

3,5

2,5

3,3

1,5

~D

以下程序的輸出結(jié)果是()。

*main()

*{inta=l,b=2;

*printf("%d,%d\n”,—a,++b);

*}

1,2

1,3

0,2

0,3

?D

C語言程序的執(zhí)行是()。

從程序的主函數(shù)開始,到程序的主函數(shù)結(jié)束

從程序的主函數(shù)開始,到程序的最后一個(gè)函數(shù)結(jié)束

從程序的第一個(gè)函數(shù)開始,到程序的最后一個(gè)函數(shù)結(jié)束

從程序的第一個(gè)函數(shù)開始,到程序的主函數(shù)結(jié)束

-A

下面說法正確的是()。

{一個(gè)C程序可以有多個(gè)函數(shù)}《批注:也是對的》

一個(gè)C語言的函數(shù)中只允許有一對花括號

C語言一個(gè)語句可以寫在一行內(nèi),也可以寫在多行內(nèi)

在對C程序進(jìn)行編譯時(shí),可以發(fā)現(xiàn)注釋行中的拼寫錯誤

-C

以下說法正確的是()。《批注:應(yīng)為“不正確的是"》

C程序是以函數(shù)為基本單位的,整個(gè)程序由函數(shù)組成

C語言程序的一條語句可以寫在不同的行上

C程序的注釋行對程序運(yùn)行不起作用,所以注釋應(yīng)該盡可能少寫

C程序的每個(gè)語句都以分號結(jié)束

?C

以下標(biāo)示符不是關(guān)鍵字的是()o

break

char

Switch

return

~C

若要求定義具有10個(gè)int型元素的一維數(shù)組a,則下列定義語句中錯誤的是()。

#defineN10

*inta[N]

#definen5

*inta[2*n]

inta[5+5]

intn=10,a[n]

~D

下設(shè)有如下程序段

*chars[20J=',Beijing',,*p;

*p=s;

*則執(zhí)行p=s;語句后,以下敘述正確的是().

可以ni*p表示s(o]

S數(shù)組中元素的個(gè)數(shù)和P所指字符串長度相等

S和P都是指針變量

數(shù)組S中的內(nèi)容和指針變量P中的內(nèi)容相同

~A

下列數(shù)組定義中錯誤的是()?

intx[J[3]={0};

intx⑵網(wǎng)={{1,2},{3,4},{5,6}};

intxlJ[3]={{l,2,3},{4,5,6});

intx[2][3]={1,2,34,5,6);

-B

有以卜程序:

*main()

*{inti,t[][3]={9,8,7,6,5,4,3,2,l};

*for(i=0;i<3;i++)printf("%d",tf2-i][i]);

*程序執(zhí)行后的輸出結(jié)果是()o

753

357

369

751

~B

若有定義語句:inta[3][6];,按內(nèi)存中的存放順序,a數(shù)組的第10元素是().

a[0][4]

a[l][3]

a(0][3]

a[l][4]

~B

以下錯誤的定義語句是()o

intX[][3]={{0},{1},{1,2,3}};

intX[4][3]={{1,2,3},{1,2,3},{1,2,3});

intx[4][]={{l,2,3},{l,2,3},{l,2,3});

intx[][3]={l,2,3,4);

~C

以下不正確的定義語句是()o

doublex[5]={1.0,2.0,3.040,5.0};

inty[5]={0,l,2,3,4,5});

charc[]={'r;2','3';4';5'};

charc2[]={'a','b','c');

~B

若有以下定義,則正確引用數(shù)組元素的是()。

*inta[5],*p=a;

*&a[5]

*a+2

*(p+5)

*(a+2)

~D

若有說明:inta[][3]={0,0};則不正確的敘述是()。

數(shù)組a的每個(gè)元素的初值都是0

數(shù)組a的第一維大小為1

數(shù)組a的行數(shù)為1

只有元素a[0][0]和初值為0,其余元素得不到初值0

-D

F列二維數(shù)組初始化語句中,不正確的是()。

intb[][2]={1,2,3,4,5,67);

intb[3][5]={0A0};

intb[][4]={{l,2},{3,4,5},{6});

intb[3][2]={(l,2),(3,4),(5,6)};

?D

有以下程序:

*main()

*{intaa[5][5]={{l,2,3,4},{5,6,l,8},{5,9,10,2},{l,2,5,6});

*ints=O,i;

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

*s+=aa[i][2];

printf("%dn,s);

*}

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

26

19

10

20

?B

###

若已知:a=l,b=2,則表達(dá)式:!(avb)的值為[v0>]0

若s是int型變量,且s=8,則s%3+(s+l)%3表達(dá)式的值為

若x和n均是int型變量,且x=12,n=5,則執(zhí)行y=x%=(n%=2)表達(dá)式后y的值為

###

以卜.說法中正確的是()。

C語言程序的執(zhí)行都是從程序的第一個(gè)函數(shù)開始

在C語言程序中,要調(diào)用的函數(shù)必須在main。函數(shù)中聲明

任何C語言程序的執(zhí)行都是從main。函數(shù)開始

C語言程序中的main。函數(shù)必須放在程序的最前面

?C

以下合法的標(biāo)識符是()o

123

#256

a.55

abhjl_2_3

?D

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

#include<stdio.h>

*main()

*{inta=3,b=4,c=8,d=4,m=l,n=3;

*printf(n%d\nH,(m=a>b)&&(n=c>d));

*}

0

1

2

3

?A

有定義語句:intb;charc[10];,則正確的輸入語句是()。

scanf(,,%d%s',,&b,&c);

scanf(H%d%s",&b,c);

scanf("%d%s,',b,c);

scanf("%d%sn,b,&c);

?B

有下列程序:

*main()

*{intm,n,p;

*scanf("m=%dn=%dp=%d",&m,&n,&p);

*printf(n%d%d%d",m,n,p);

*}

*若想從鍵盤上輸入數(shù)據(jù),使變量m的值為123,n的值為456,p的值為789,則正確的輸

入是()o

m=123n=456p=789

m=123n=456p=789

m=123,n=456,p=789

123456789

~A

要求當(dāng)A的值為奇數(shù)時(shí),表達(dá)式的值為“假。A的值為偶數(shù)時(shí),表達(dá)式的值為“真則

以下能滿足要求的是()o

A%2==1

!(A%2==0)

!(A%2)

A%2

?C

當(dāng)把四個(gè)表達(dá)式用作if語句的控制表達(dá)式時(shí),有一個(gè)選項(xiàng)與其他三個(gè)選項(xiàng)含義不同,這個(gè)

選項(xiàng)是()。

k%2

k%2=l

(k%2)!=0

!k%2==l

?A《批注:應(yīng)為D》

下列不能正確計(jì)算代數(shù)式(l/3)sin2(l/2)值的C語言表達(dá)式是()。

l/3*sin("2)*sin(l⑵

sin(0.5)*sin(0.5)/3

pow(sin(0.5),2)/3

l/3.0*pow(sin(1.0/2),2)

?A

在printf的格式字符中,e格式字符的作用是()。

以十六進(jìn)制無符號形式輸出整數(shù)

以帶符號的十進(jìn)制形式輸出整數(shù)

以指數(shù)形式輸出實(shí)數(shù)

以字符形式輸出,且只輸出一個(gè)字符

~C

若要從鍵盤讀入含有空格字符的字符串,應(yīng)使用函數(shù)()o

getc()

gets()

getchar()

scanf()

?B

當(dāng)a=4,b=5,c=7,d=6時(shí),執(zhí)行下面一段程序:

*if(a<b)

*if(c<d)x=1;

*else

*if(a<c)

*if(b<c)x=2;

*elsex=3;

*elsex=4;

*elsex=5;

*執(zhí)行后,x的值為()o

1

2

3

4

?B

下面4個(gè)關(guān)于C語言的結(jié)論中錯誤的是(

可以用do...while語句實(shí)現(xiàn)的循環(huán)一定可以用while語句實(shí)現(xiàn)

可以用for語句實(shí)現(xiàn)的循環(huán)一定可以用while語句實(shí)現(xiàn)

可以用while語句實(shí)現(xiàn)的循環(huán)一定可以用for語句實(shí)現(xiàn)

do...while語句與while語句的區(qū)別是關(guān)鍵字“while”Hi現(xiàn)的位置不同

?D

關(guān)于字符常量,以下敘述正確的是()。

空格不是一個(gè)字符常量

字符常量能包含大于一個(gè)的字符

單引號中的大寫字母和小寫字母代表的是相同的字符常量

所有的字符常量都可以作為整型量來處理

?D

有以下函數(shù)定義:

*intfun(doublea,doubleb)

*{returna*b;}

*若以下選項(xiàng)中所有變量都已經(jīng)定義并賦值,錯誤的函數(shù)調(diào)用是()。

if(fun(x,y)){……}

z=fun(fun(x,y),fun(x,y));

z=fun(fun(x,y)x,y);

fun(x,y);

~C

執(zhí)行以下語句段后,xy的值是()o

*int*pt,xy;

*xy=200;

*pt=&xy;

*xy=*pt+30;

200

170

260

230

?D

下面各語句行中,能正確進(jìn)行賦值字符串操作的是()。

chars[5]={,a,;b7c7d,;e,};

char*s;gets(s);

char*s;s="ABCDEF”;

chars[5];scanf("%s",&s);

?B《批注:B、C選項(xiàng)均可》

以F有關(guān)宏的不正確的是()。

宏名無類型

宏定義不做語法檢查

宏名必須用大寫字母表示

雙引號中出現(xiàn)的宏名不進(jìn)行替換

?c

下面說法正確的是()。

一個(gè)C程序可以有多個(gè)主函數(shù)

一個(gè)C語言的函數(shù)中只允許有一對花括號

C程序的書寫格式是自由的,一個(gè)語句可以寫在一行上,也可以寫在多行內(nèi)

在對C程序進(jìn)行編譯時(shí),可以發(fā)現(xiàn)注釋行中的拼寫錯誤

~c

若a為int型變量,則執(zhí)行以下語句后,a的值為()。

*a=5;

*a+=a-=a*a;

25

-40

40

-14

~B

能正確表示邏輯關(guān)系“a>=5或a<=0”的C語言表達(dá)式是()。

a>=5ora<=0

a>=0IIa<=5

a>=5&&a<=0

a>=5IIa<=0

?D

以下能正確表示x在?5到5(含?5和5)內(nèi),值為“真”的表達(dá)式是()o

(x>=-5)&&(x<=5)

!(x>=-5llx<=5)

x<5&&x>-5

(x<-5)ll(x<5)

?A

以下關(guān)于運(yùn)算符優(yōu)先順序描述中正確的是()。

算術(shù)運(yùn)算符〈關(guān)系運(yùn)算符〈賦值運(yùn)算符〈邏輯運(yùn)算符

賦值運(yùn)算符〈邏輯運(yùn)算符〈關(guān)系運(yùn)算符〈算術(shù)運(yùn)算符

邏輯運(yùn)算符(關(guān)系運(yùn)算符V算術(shù)運(yùn)算符〈賦值運(yùn)算符

關(guān)系運(yùn)算符〈算術(shù)運(yùn)算符〈賦值運(yùn)算符〈邏輯運(yùn)算符

-B

以下合法的C語言賦值語句是()o

a=b=l

a=inta+b

a=2,b=3

i++;

~D

若i、j已定義成int型,則以下程序段中內(nèi)循環(huán)體的總執(zhí)行次數(shù)是()?

*for(i=6;i>0;i")

*for(j=0;j<4;j++){...}

20

24

25

30

?B

以下選項(xiàng)中非法的字符常量是()。

'W

,\o2or

'\xAA'

'0'

~B

如果在一個(gè)函數(shù)的復(fù)合語句中定義了一個(gè)變量,則該變量()。

在該復(fù)合語句中有效,在該復(fù)合語句外無效

在該函數(shù)內(nèi)都有效

在本程序的原文件范圍內(nèi)均有效

此定義方法錯誤,其變量為非法變量

~A

以下不正確的定義語句是()o

doublex[5]={1.0,2.0,3.0,4.0,5.0};

inty[5]={0,l,2,3,4,5);

charcl[]={,r;2,;3,;475,);

charc2[]={,a';b,;c'};

~B

C語言中,凡未指定存儲類別的局部變量的隱含存儲類別是()。

自動(auto)

靜態(tài)(static)

外部(extern)

寄存器(register)

~A

如果要打開一個(gè)已經(jīng)存在的非空文件“FILE”并進(jìn)行修改,正確的語句是()。

fp=fopen(,'FILE,,;,rH);

fp=fopen("FILE",ua+n);

fp=fopen(nFILEn,Hw+u);

fp=fopen("FILE"/r+n);

?D

###

下列程序中,fun()函數(shù)的功能是計(jì)算x八2-2x+6,主函數(shù)中將調(diào)用fun()函數(shù)計(jì)算:

yl=(x+8)A2-2(x+8)+6

y2=sinA2(x)-2sin(x)+6

清填空。

#include"math.h"

doublefun(doublex){retum(x*x-2*x+6);}

main()

{doublex,yl,y2;

printf("Enterx:n);

scanf(n%lf",&x);

yl=fun([<x+8>]);

y2=fun([<sin(x)>]);

printf(nyl=%lf,y2=%lf\n",yl,y2);

)

有下列程序:

intsub(intn){retum(n/10+n%10);}

main()

{intx,y;

scanf("%d'\&x);

y=sub(sub(sub(x)));

printf(n%d\nn,y);

)

若運(yùn)行時(shí)輸入:1234<CR>,程序的輸出結(jié)果是

###

在C語言中,函數(shù)返回值的類型最終取決于()。

函數(shù)定義時(shí)在函數(shù)首部所說明的函數(shù)類型

return語句中表達(dá)式值的類型

調(diào)用函數(shù)時(shí)主調(diào)函數(shù)所傳遞的實(shí)參類型

函數(shù)定義時(shí)形參的類型

?A

若各選項(xiàng)中所用變量已正確定義,fun()函數(shù)中通過return語句返回一個(gè)函數(shù)值,下列選項(xiàng)中

錯誤的程序是()。

main()

{x=fun(2,10);}

floatfun(inta,intb){}

floatfun(inta,intb){}

main()

{x=fun(i,j);}

floatfun(int,int);

main()

{x=fun(2,10);}

floatfun(inta,intb){}

main()

{floatfun(inti,intj);

x=fun(i,j);)

floatfun(inta,intb){}

~A

若函數(shù)調(diào)用時(shí)的實(shí)參為變量時(shí),下列關(guān)于函數(shù)形參和實(shí)參的敘述中正確的是()。

函數(shù)的實(shí)參和其對應(yīng)的形參共占同一個(gè)存儲單元

形參只是形式上的存在,不占用具體的存儲單元

同名的實(shí)參和形參占同■個(gè)存儲單元

函數(shù)的形參和實(shí)參分別占用不同的存儲單元

~D

在一個(gè)C源程序文件中所定義的全局變量,其作用域?yàn)?)。

所在文件的全部范圍

所在程序的全部范圍

所在函數(shù)的全部范圍

由具體定義位置和extern說明來決定范圍

-D

C語言規(guī)定,函數(shù)返回值的類型是()。

由調(diào)用該函數(shù)時(shí)的主調(diào)函數(shù)類型所決定

由return語句中的表達(dá)式類型所決定

由調(diào)用該函數(shù)時(shí)系統(tǒng)臨時(shí)決定

由定義該函數(shù)時(shí)所指定的數(shù)值類型決定

-D

-----6

以下敘述中,錯誤的是()。

在同一個(gè)C程序文件中,不同函數(shù)中可以使用名字相同的變量

在main。函數(shù)體內(nèi)定義的變量是全局變量

形參是局部變量,函數(shù)調(diào)用完成即失去意義

若同一文件中全局和局部變量同名,則全局變量在局部變量作用范圍內(nèi)不起作用

-B

以下函數(shù)值的類型是

fun(doublex)

{floaty;

y=3*x-4;

returny;

)

int

不確定

void

float

~A

有以下程序:

intfl(doublea)

{returna*a;}

intf2(intx,inty)

{doublea,b;

a=fl(x);

b=fl(y);

returna+b;

)

main()

{doublew;

w=f2(2.1,4.0);

變量w的值是()。

20.21

20

20.0

0.0

~C

調(diào)用函數(shù)時(shí),當(dāng)實(shí)參和形參都是簡單變量時(shí),它們之間數(shù)據(jù)傳遞的過程是()。

實(shí)參將其值傳遞給形參,調(diào)用結(jié)束時(shí)形參再將其值回傳給實(shí)參

實(shí)參將其地址傳遞給形參,調(diào)用結(jié)束時(shí)形參再將其地址回傳給實(shí)參

實(shí)參將其地址傳遞給形參,并釋放原先占用的存儲單元

實(shí)參將其值傳遞給形參,調(diào)用結(jié)束時(shí)形參并不將其值回傳給實(shí)參

?D

下面說法不正確的是()。

調(diào)用函數(shù)時(shí),實(shí)參可以是表達(dá)式

調(diào)用函數(shù)時(shí),實(shí)參和形參可以共用內(nèi)存單元

調(diào)用函數(shù)時(shí),將實(shí)參的值復(fù)制給形參,使實(shí)參變量和形參變量在數(shù)值上相等

調(diào)用函數(shù)時(shí),實(shí)參與形參的類型必須一致

?B

下面函數(shù)調(diào)用語句含有實(shí)參的個(gè)數(shù)為()。

func((exp1,exp2),(exp3,exp4,exp5));

1

2

3

5

?B

在C語言中,函數(shù)調(diào)用時(shí)()。

實(shí)參和形參各占獨(dú)立的存儲單元

實(shí)參和形參共用存儲單元

由系統(tǒng)自動確定實(shí)參和形參是否共用存儲單元

由用戶指定實(shí)參和形參是否共用存儲單元

-A

C語言規(guī)定,程序中各函數(shù)之間()。

既允許直接遞歸調(diào)用也允許間接遞歸調(diào)用

既不允許直接遞歸調(diào)用也不允許間接遞歸調(diào)用

允許直接遞歸調(diào)用不允許間接遞歸調(diào)用

不允許直接遞歸調(diào)用允許間接遞歸調(diào)用

-A

下列能正確定義?維數(shù)組的選項(xiàng)是()。

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

chara[]={0,1,2,3,4,5);

chara={'A',B,'C'};

inta[5]="0123";

~B

下列敘述中錯誤的是

對于double類型數(shù)組,不可以直接用數(shù)組名對數(shù)組進(jìn)行整體輸入或輸出

數(shù)組名代表的是數(shù)組所占存儲區(qū)的首地址,其值不可改變

在程序執(zhí)行中,數(shù)組元素的下標(biāo)超出所定義的下標(biāo)范圍時(shí),系統(tǒng)將給出“下標(biāo)越界”的出錯

信息

可以通過賦初值的方式確定數(shù)組元素的個(gè)數(shù)

-C

有下列程序:

#include<string.h>

main()

{charp[]={'a','b';c'),q[l0J={'a','b','c');

printf("%d%d\n",strlen(p),strlen(q));

)

下列敘述中正確的是()。

在給p和q數(shù)組賦初值時(shí),系統(tǒng)會自動添加字符串結(jié)束符,故輸出的長度都為3

由于p數(shù)組中沒有字符串結(jié)束符,長度不能確定,但q數(shù)組中字符串長度為3

由于q數(shù)組中沒有字符串結(jié)束符,長度不能確定,但p數(shù)組中字符串長度為3

由于p和q數(shù)組中都沒有字符串結(jié)束符,故長度都不能確定

?A

若要求從鍵盤讀入含有空格字符的字符串,應(yīng)使用函數(shù)()。

getc()

gets()

getchar()

scanf()

?B

當(dāng)用戶要求輸入的字符串中含有空格時(shí),應(yīng)使用的輸入函數(shù)是()。

scanf()

getchar()

gets()

getc()

~C

當(dāng)有定義語句:char若要從終端給s輸入5個(gè)字符,錯誤的輸入語句是()。

gets(&s[O]);

scanf("%s",s+l);

gets(s);

scanf("%s",s[l]);

~D

當(dāng)以下敘述中錯誤的是()。

gets函數(shù)用于從終端讀入字符串

getchar函數(shù)用于從磁盤文件讀入字符

fputs函數(shù)用于把字符串輸出到文件

fwrite函數(shù)用于以二進(jìn)制形式輸出數(shù)據(jù)到文件

-B

下列關(guān)于字符串的敘述中正確的是()。

C語言中有字符串類型的常量和變量

兩個(gè)字符串中的字符個(gè)數(shù)相同時(shí)才能進(jìn)行字符串大小的比較

可以用關(guān)系運(yùn)算符對字符串的大小進(jìn)行比較

空串一定比空格打頭的字符串小

-D

下面能正確進(jìn)行字符串賦值的是()。

chars[5]={"ABCDE");

chars[5]={'A',B,'C','D',E};

char*s;s="ABCDE";

char*s;printf("%s",s);

~C

字符串"\\\"ABCDEFV\\"的長度是()。

15

10

7

8

?B

----8

下面各語句行中,能正確進(jìn)行賦值字符串操作的是()。

chars[5]={,a,,,b,,,c,;d';e,};

char*s;gets(s);

char*s;*s=nABCDEFn;

chars[5];scanf(n%s'\&s);

?B

設(shè)」執(zhí)行預(yù)編譯命々#includevstring.h>,以下程序段的輸出結(jié)果是()。

chars[]=Mabcdefgu;

printf("%d\n",strlen(s));

7

8

9

10

~A

若已包括頭文件vstring.h>且已有定義charsl[18],s2={HABCDE")^inti,現(xiàn)要將字符串

“ABCDE”賦給si,下述語句錯誤的是()。

strcpy(sl,s2);

strcpy(sl;,ABCDEM);

sl=nABCDEn;

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

sl[i]=s2[ij;

~C

###

*以下程序的輸出結(jié)果是

*#include<stdio.h>

*main()

*{

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

*p=a;p++;

*printf("%d",*p);

*}

*以下程序的輸出結(jié)果是[<35>],

*#include<stdio.h>

*voidswap(int*a,int*b)

*{

int*t;

t=a;a=b;b=t;

*}

*main()

*{

*inti=3,j=5,*p=&i,*q=&j;

*swap(p,q);printf(n%d%d",*p,*q);

*}

*下面程序段的運(yùn)行結(jié)果是[<68>]。

*charstr[]="ABCD",*p=str;

*printf(1,%d\n,,,*(p+3));

###

設(shè)已有定義:floatx;,則下列對指針變量p進(jìn)行定義且賦初值的語句中正確的是()。

float*p=1024;

int*p=(float)x;

floatp=&x;

float*p=&x;

~D

設(shè)有定義語句int(*f)(int);,則以下敘述正確的是()。

f是基類型為血的指針變量

f是指向函數(shù)的指針變量,該函數(shù)具有一個(gè)int類型的形態(tài)

f是指向int類型一維數(shù)組的指針變量

f是函數(shù)名,該函數(shù)的返回值是其類型為int類型的地址

-B

設(shè)有定義:intnl=0,n2,*p=&n2,*q=&nl;,以下賦值語句中與n2=nl;語句等價(jià)的是()<,

*p=*q

p=q

*p=&n1;

p=*q

-A

在16位編譯系統(tǒng)上,若有定義inta[]={10,20,30},*p=&a;,當(dāng)執(zhí)行p++;后,下列說法錯誤的

是()。

p向高地址移了一個(gè)字節(jié)

p向高地址移了一個(gè)存儲單元

p向高地址移了兩個(gè)字節(jié)

p與n+1等價(jià)

?A

若有定義語句:intk⑵[3],*pk[3];,則下列語句中正確的是()。

pk=k;

pk[0]=&k[l][2];

pk=k[O];

pk[l]=k;

?B

若有定義:char(*p)[6];則標(biāo)識符p()。

是一個(gè)指向字符型變量的指針

是一個(gè)指針數(shù)組名

是一個(gè)指針變量,它指向一個(gè)含有6個(gè)字符型元素的一維數(shù)組

定義不合法

~C

下面程序段的運(yùn)行結(jié)果是()0

#include<stdio.h>

voidmain()

{charstr[]=,,abc,'?*p=str;

printf(n%d\nn,*(p+3));

}

67

0

字符C的地址

字符c

?B

???7

若有以下定義,則對a數(shù)組元素的正確引用是()。

inta[5],*p=a;

*&a[5]

*a+l

*(P+5)

*(a+2)

~D

###

~~~3

C語言中用[<非0>]表示邏輯"真",用[<0>]表示邏輯值"假"。

~~~3

C語言中邏輯運(yùn)算符[<!>]的優(yōu)先級高于算術(shù)運(yùn)算符。

~~~3

當(dāng)a=l,b=2,c=3時(shí),以下if語句執(zhí)行后,a、b、c中的值分別為[v3>]、[<2>]>[<2>]o

if(a>c)

b=a;a=c;c=b;

~~~3

以F程序段的輸出結(jié)果是[<死循環(huán)>]

intk,n,m;

n=10;m=l;k=l;

while(k<=n)m*=2;

printf(n%d\n';m);

~—3

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

main()

(

intx=2;

while(x-);

printf("%d\n”,x);

)

~~~3

以下程序段:

s=1.0;

for(k=l;k<=n;k++)

s=s+1.0/(k*(k+l))

printf(M%f\nu,s);

請?zhí)羁?,使下面的程序段的功能完全與之等同。

s=0.0

[<d=1.0>]

k=0;

do

(

s=s+d;

[<k++>J

d=1.0/(k*(k+l));

)

while[<k<=n>]

printf(,,%f\n',,s);

-----3

以F程序功能是:從鍵盤上輸入若干個(gè)學(xué)生的成績,統(tǒng)計(jì)并輸出最高成績和最低成績,當(dāng)輸

入負(fù)數(shù)時(shí)結(jié)束輸入。請?zhí)羁铡?/p>

main()

(

floatx,amax,amin;

scanf("%『,&x);

amax=x;

amin=x;

while[<x>=0>J

if(x>amax)amax=x;

if[<x<amin>]amin=x;

scanf(n%r,&x);

printf(',\namax=%f\namin=%f\n',,amax,amin);

~—5

若有定義inta[3][5];則排列在數(shù)組中的第九個(gè)元素是⑶>]

----5

strlen(nHowareyou\n")的值是[vl2>]

~—5

C語言中字符串結(jié)束的標(biāo)志是

----5

寫出一個(gè)名為s的單精度實(shí)型一維數(shù)組,長度是6,所有元素初值均為0,其數(shù)組定義語句

是[<floats[6]={0};>]

~~~5

5職11甲(70\¥”,,口0\¥")的值是[<32或者>0>]

C語言程序執(zhí)行的開始處是《main函數(shù)>]

C程序中的?個(gè)函數(shù)由兩部分組成,即[〈聲明部分>]和[(執(zhí)行部分>]

為了保證被調(diào)用函數(shù)不返回任何值,其函數(shù)定義的類型應(yīng)為[vvoid>]

下面pi函數(shù)的功能是,根據(jù)以下公式返回滿足精度e要求的n的值。請?zhí)羁?。n

/2=1+1/3+(1/3)*(2/5)+(1/3)*(2/5)*(3/7)+(1/3)*(2/5)*(3/7)*(4/9)+...

doublepi(doubleeps)

{doubles=0.0,t=1.0;

intn;

for([<n=1>];t>eps;n++)

s+=t;

t=n*t/(2*n+l);

)

return(2.0*[<s>]);

)

以下函數(shù)用以求x的y次方。請?zhí)羁铡?/p>

doublefun(doublex,inty)

(

inti;doublez;

for(i=1;i[?=y>];i++)

z=[<Z*x>];

returnz;

)

以下程序的功能是計(jì)算s=0!+l!+2!+3!+...+n!。請?zhí)羁铡?/p>

longf(intn)

{inti;longs;

s=[<lL>];

for(i=l;i<=n;i++)s=[<S*i>];

returns;

)

main()

(

longs;intk,n;

scanf(n%d'\&n);

s=[<0>];

for(k=0;k<=n;k++)s=s+[<f(k)>];

printf(”%ld\n”,s);

}

###

~~~3

下列運(yùn)算符中優(yōu)先級最高的運(yùn)算符是0。

!

%

&&

?A

?*-3

下列運(yùn)算符中優(yōu)先級最低的運(yùn)算符是()。

II

!二

<=

+

?A

----3

為表示關(guān)系x2y2z,應(yīng)使用的C語言表達(dá)式是()。

(x>=y)&&(y>=z)

(x>=y)AND(y>=z)

(x>=y>=z)

(x>=y)&(y>=z)

?A

~~~3

設(shè)a、b和c都是int型變量,且a=3,b=4,c=5;則以下的表達(dá)式中,值為0的表達(dá)式是0。

a&&b

a<=b

allb+c&&b-c

!(a<b)&&!clll

?D

若有ints[4]={1,234};則s[s[0]+2*s⑵?s[3]]的值是0。

1

2

3

4

?D

~—5

對數(shù)組的描述正確的是()。

數(shù)組?旦定義去大小是固定的,但數(shù)組元素的類型可以不同

數(shù)組一旦定義去大小是固定的,但數(shù)組元素的類型必須相同

數(shù)組一旦定義去大小是可變的,但數(shù)組元素的類型可以不同

數(shù)組一旦定義去大小是可變的,但數(shù)組元素的類型必須相同

-B

~~~5

對字符串“Boy”進(jìn)行完整賦值的操作是0

chars[3]={,B;,o';y,}

chars[]=,,BoyM

chars[3]={"Boyn)

chars[3];s=nBoy"

?B

~~~5

在C語言中引用數(shù)組元素時(shí),其數(shù)組下標(biāo)的數(shù)組類型允許是()

整型常量

整型表達(dá)式

整型常量或整型表達(dá)式

任何類型的表達(dá)式

-C

~~~5

對以下說明語句的正確理解是()

*inta[10]={6,7,8,9,10}

將5個(gè)初值依次賦給a[l]至a[5]

將5個(gè)初值依次賦給a[0]至a[4]

將5個(gè)初值依次賦給a[6]至a[10]

因?yàn)閿?shù)組長度與初值的個(gè)數(shù)不相同,所以此語句不正確

-B

~~~5

以下程序段給數(shù)組所有元素輸入數(shù)據(jù),應(yīng)在下劃線處填入的是()

*main()

*{

*inta[10],i=0;

*while(i<10)scanf(n%d'\);

*}

a+(i++)

&a(i+l)

a+i

&a[++i]

~D

—-5

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

*main()

*{

:inta[]={2,4,6,8},y=l,x,*p;

p=&a[l];

*for(x=0;x<3;x++)y+=*(p+x);

*printf(H%d\nH,y);

*}

17

18

19

20

~C

下述函數(shù)定義形式正確的是0

intf(intx;inty)

intf(intx,y)

intf(intx,inty)

intf(x,y:y)

~C

關(guān)于函數(shù)參數(shù),說法正確的是o

實(shí)參與其對應(yīng)的形參各自占用獨(dú)立的內(nèi)存單元

實(shí)參與其對應(yīng)的形參共同占用一個(gè)內(nèi)存單元

只有當(dāng)實(shí)參和形參同名時(shí)才占用同一個(gè)內(nèi)存單元

形參是虛擬的,不占用內(nèi)存單元

-A

用數(shù)組名作為函數(shù)的實(shí)參時(shí),傳遞給形參的是()

數(shù)組的首地址

數(shù)組的第一個(gè)元素

數(shù)組中的全部元素

數(shù)組的元素個(gè)數(shù)

-A

復(fù)合語句中定義的變量的作用范圍是()

整個(gè)源文件

整個(gè)函數(shù)

整個(gè)程序

所定義的復(fù)合語句

-D

一個(gè)函數(shù)的返回值由()確定

return語句中的表達(dá)式

調(diào)用函數(shù)的類型

系統(tǒng)默認(rèn)的類型

被調(diào)用函數(shù)的類型

-D

以下說法正確的是()

C語言程序總是從第一個(gè)定義的函數(shù)開始執(zhí)行

在C語言程序設(shè)計(jì)中,要調(diào)用的函數(shù)必須在main函數(shù)中定義

C語言程序總是從main函數(shù)開始執(zhí)行

C語言程序中的main函數(shù)必須放在程序的開始部分

-C

以下函數(shù)的類型是()

*fff(floatx)

*{

*printf('M,,x*x);

*}

與參數(shù)x的類型相同

void類型

int類型

無法確定

?C

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

*fun(inta,intb)

*{intc;

*c=a+b;

*retutnc;

*}

*main()

*{intx=6,y=7,z=8,r;

*r=func((x—,y++,x+y),z-);

*printf(M%d\nM,r);

*}

11

20

21

31

~C

----10

當(dāng)說明一個(gè)結(jié)構(gòu)體變量時(shí),系統(tǒng)分配給它的內(nèi)存是()

各成員所需內(nèi)存總量的總和

結(jié)構(gòu)中第一個(gè)成員所需內(nèi)存量

成員中占內(nèi)存量最大者所需的容量

結(jié)構(gòu)中最后一個(gè)成員所需內(nèi)存量

~A

----10

設(shè)有以下說明語句:

*structstu

*{inta;

*floatb;

*}stutype;

*則下面敘述不正確的是()

strut是結(jié)構(gòu)體類型的關(guān)鍵字

strutstu是用戶定義的結(jié)構(gòu)體類型

stutype是用戶定義的結(jié)構(gòu)體類型名

a和b都是結(jié)構(gòu)體成員名

-C

*10

C語言結(jié)構(gòu)體類型變量在執(zhí)行期間()

所有成員一直駐留在內(nèi)存中

只有一個(gè)成員駐留在內(nèi)存中

部分成員駐留在內(nèi)存中

沒有成員駐留在內(nèi)存中

?A

----11

若想對文本文件只進(jìn)行讀操作,打開此文件的方式為()

T

ua"

“計(jì)”

?A

如果要打開C盤file文件夾下的abc.dat文件,fopen函數(shù)中第一個(gè)參數(shù)應(yīng)為0

c:file\abc.dat

c:\file\abc.dat

°c:\file\abc.dat”

uc:\\file\\abc.dat"

~D

用fopen函數(shù)打開文件,操作完畢后用()函數(shù)關(guān)閉它

fopen

open

fclose

close

?C

以下可作為函數(shù)fopen中第一個(gè)參數(shù)的正確格式是()

c:user\test.txt

c:\user\test.txt

“c:\user\test.txt”

"c:\\user\\test.txt"

~D

若執(zhí)行fopen函數(shù)時(shí)發(fā)生錯誤,則函數(shù)的返回值是()

地址值

0

1

EOF

?B

若要用fopen函數(shù)打開一個(gè)新的二進(jìn)制文件,該文件要既能讀也能寫,則文件方式字符串應(yīng)

是()

uab++"

“wb+”

“rb+”

uabn

?B

若以“a+”方式打開一個(gè)已存在的文件,則以下敘述正確的是()

文件打開時(shí),原有文件內(nèi)容不被刪除,位置指針移到文件末尾,可作添加和讀操作

文件打開時(shí),原有文件內(nèi)容不被刪除,位置指針移到文件開頭,可作重寫和讀操作

文件打開時(shí),原有文件內(nèi)容不被刪除,只可作寫操作

以上各種說法皆不正確

~A

###

下列程序的功能時(shí):給r輸入數(shù)據(jù)后計(jì)算半徑為r的圓面積s。程序在編譯時(shí)出錯。

main()

{intr;floats;

scanf("%d”,&r);

s=pi*r*r;

printf(Ms=%f\n",s);

出錯的原因是()。

注釋語句書寫位置錯誤

存放圓半徑的變量r不應(yīng)該定義為整型

輸出語句中格式描述符號非法

計(jì)算圓面積的賦值語句中使用了非法變量

-D

以下敘述錯誤的是

在程序中凡是以開始的語句行都是預(yù)處理命令行

預(yù)處理命令行的最后不能以分號表示結(jié)束

#defineMAX是合法的宏定義命令行

C程序?qū)︻A(yù)處理命令行的處理是在程序執(zhí)行的過程中進(jìn)行的

-C

下列敘述中正確的是()。

預(yù)處理命令行必須位于源文件的開頭

在源文件的?行上可以有多條預(yù)處理命令

宏名必須用大寫字母表示

宏替換不占用程序的運(yùn)行空間

-D

若程序中有宏定義行:#defineN100,則下列敘述中正確的是()。

宏定義中定義了標(biāo)識符N的值為整數(shù)100

在編譯程序?qū)源程序進(jìn)行預(yù)處理時(shí)用100替換標(biāo)識符N

對C源程序進(jìn)行編譯時(shí)用100替換標(biāo)識符N

在運(yùn)行時(shí)用100替換標(biāo)識符N

-B

程序

#include<stdio.h>

#defineM5

#defineNM+M

main()

{intk;

k=N*N*5;

printf("%d\n",k);

的輸出結(jié)果是()。

100

50

55

45

~C

下列敘述中正確的是()。

預(yù)處理命令行必須位于C源程序的起始位置

在C語言中,預(yù)處理命令行都以#開頭

每個(gè)C程序必須在開頭包含預(yù)處理命令行:#include<stdio.h>

C語言的預(yù)處理不能實(shí)現(xiàn)宏定義和條件編譯的功能

-B

C語言的編譯系統(tǒng)對宏命令的處理是()。

在系統(tǒng)對源程序進(jìn)行編譯前

和其他語句的編譯同時(shí)進(jìn)行

在程序連接時(shí)進(jìn)行

在程序運(yùn)行時(shí)進(jìn)行

~A

以下敘述中不正確的是()。

預(yù)處理命令行都必須以“#”號開始,結(jié)尾不加分號

在程序中凡是以“#”開始的語句行都是預(yù)處理命令行

C程序在執(zhí)行過程中對預(yù)處理命令進(jìn)行處理

預(yù)處理命令可以放在程序的任何位置

-C

下面敘述中正確的是()。

C語言中預(yù)處理是指完成宏替換和文件包含指定的文件的調(diào)用

預(yù)處理命令只能位于C源程序文件的首部

預(yù)處理命令可以放在程序中的任何位置

預(yù)處理命令結(jié)尾需要加分號

-C

以下有關(guān)宏替換的敘述不正確的是()。

使用宏定義可以嵌套

宏定義僅僅是符號替換

雙引號中出現(xiàn)的宏名不替換

宏名必須用大寫字母表示

-D

在“文件包含”預(yù)處理語句的使用形式中,當(dāng)#include后面的文件名用尖括號(。)括起時(shí),

尋找被包含文件的方式是(

僅僅搜索當(dāng)前目錄

僅僅搜索源程序所在目錄

在標(biāo)準(zhǔn)目錄下查找指定文件

先在源程序所在目錄搜索,如沒找到,再按系統(tǒng)指定的標(biāo)準(zhǔn)目錄查找

-C

~~~10

下列對結(jié)構(gòu)體類型變量td的定義中,錯誤的是()。

typedefstructaastructaa

{intn;{intn;

floatm;floatm;

}AA;}td;

AAtd;

structstruct

{intn;{intn;

floatm;floatm;

}aa;}td;

structaatd;

~C

~~~10

下列敘述錯誤的是()。

可以通過typedef增加新的類型

可以用typedef將已存在的類型用一個(gè)新的名字來代表

用typedef定義新的類型名后,原有的類型名仍有效

用typedef可以為各種類型起別名,但不能為變量起別名

-A

----10

設(shè)有以下語句:

typedefstructTT

{charc;inta[4];}CIN;

則下列敘述中正確的是()。

可以用TT定義結(jié)構(gòu)體變量

TT是struct類型的變量

可以用CIN定義結(jié)構(gòu)體變量

CIN是structTT類型的變量

-C

**-10

下列關(guān)于typedef的敘述錯誤的是()。

用lypedef可以增加新的類型

typedef只是將已存在的類型用一個(gè)新的名字來代表

用typedef可以為各種類型說明一個(gè)新名,但不能用來為變量說明一個(gè)新名

用typedef為類型說明一個(gè)新名,通??梢栽黾映绦虻目勺x性

?A

~~~10

有以卜結(jié)構(gòu)體類型說明和變量定義中正確的是()。

typedefstructstructREC

{intn;charc;}REC;{intn;charc;};

RECtl,t2;RECtl,t2;

typedefstructREC;struct

{intn=0;charc=A';}tl,t2;{intn;charc;}REC;

RECtl,t2;

?A

—-10

定義以下結(jié)構(gòu)體數(shù)組:

structst

{charname[15];

intage;

}a[l0]={“ZHAO”,14JWANG”,15;'LIU",16,"ZHANG”,17};

執(zhí)行語句printf("%d,%ca2].age,*(a[3].name+2)))的輸出結(jié)果為()。

15,A

16,H

16,A

17,H

~C

設(shè)fp為指向某二進(jìn)制文件的指針,且已讀到此文件末尾,則函數(shù)feof(fp)的返回值為()。

EOF

非。值

0

NULL

?B

讀取二進(jìn)制文件的函數(shù)調(diào)用形式為:fread(buffer,size,count,fp);,其中buffer代表的是()。

一個(gè)文件指針,指向待讀取的文件

一個(gè)整型變量,代表待讀取的數(shù)據(jù)的字節(jié)數(shù)

一個(gè)內(nèi)存塊的首地址,代表讀入數(shù)據(jù)存放的地址

一個(gè)內(nèi)存塊的字節(jié)數(shù)

~C

如果需要打開一個(gè)已經(jīng)存在的非空文件“FILE”并進(jìn)行修改,正確的語句是()。

fp=fopenC,F(xiàn)ILEn,"rH);

fp=fopen(“FILE“Ja+”);

fp=fopen(HFILE","w+u);

fp=fopen(“FILE",“r+”);

?D

若以“a+”方式打開一個(gè)已存在的文件,則以下敘述正確的是()。

文件打開時(shí),原有文件內(nèi)容不被刪除,位置指針移到文件末尾,可作添加或讀操作

文件打開時(shí),原有文件內(nèi)容不被刪除,只能進(jìn)行讀操作

文件打開時(shí),原有文件內(nèi)容被刪除,只能進(jìn)行寫操作

以上各種說法都不正確

~A

使用fgets(str,n,p)函數(shù)從文件中讀入一個(gè)字符串,以下敘述錯誤的是()。

字符串讀入后會自動加入‘\0'

fp是指向該文件的文件型指針

fgets函數(shù)將從文件中最多讀入n-1個(gè)字符

fgets函數(shù)將從文件中最多讀入n個(gè)字符

?D

###

----3

下列程序運(yùn)行后的輸出結(jié)果是[V10200>]。

main()

{inta,b,c;

a=10;b=20;c=(a%b<l)ll(a/b>1);

printf(H%d%d%d\n",a,b,c);

)

~~~3

下列程序用于判斷a、b、c能否構(gòu)成三角形,若能輸出YES,否則輸出NO。請?zhí)羁铡?/p>

main()

{floata,b,c;

scanf("&f&f&f;&a,&b,&c);

if([<(a+b>c)&&(a+c>b)&&(b+c>a)>])printf(nYES\nn);

elseprintf("NO");

)

~~~3

已有定義:charc二";inta=l,b;執(zhí)行b!=c&&a;Jnb的值為[v0>]。

~~~3

下列程序的輸出結(jié)果是[vl〉]。

main()

{inta=l,b=2,c=3;

if(c=a)printf(n%d\n",c);

elseprintf(M%d\n",b);

)

}

----3

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

main()

{intx,a=l,b=2,c=3,d=4;

x=(a<b)?a:b;x=(x<c)?x:c;x=(d>x)?x:d;

printf("%d\n”,x);

)

~~~3

下列程序的輸出結(jié)果是[<0235>]

main()

{intk=5,n=0;

do

{switch(k)

{caseI:case3:n+=l;k-;break;

default:n=O;k—;

case2:case4:n+=2;k—;break;

)

printf(n%du,n);

}while(k>0&&n<5);

)

~~~3

下列程序的輸出結(jié)果是[<25>]

main()

{inti;

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

{if((i*i>=20)&&(i*i<=100))

break;

}

printf("%d\nu,i*i);

I

~~~3

下列程序的輸出結(jié)果是[<2,2,0>]

main()

{inta=-5,b=l,c=l;

intx=0,y=2,z=0;

if(c>0)x=x+y;

if(a<=0)

{if(b

溫馨提示

  • 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

提交評論