C語(yǔ)言程序設(shè)計(jì)_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì)_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì)_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì)_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩97頁(yè)未讀 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡(jiǎn)介

1:下面程序()。(每行程序前面的數(shù)字表示行號(hào))。

1main()

2(

3inta[3]={3*0};

4inti;

5for(i=0;i<3;i++)scanf("%d”,&a[i]);

6for(i=l;i<3;i++)a[0]=a[0]+a[i];

7printf("%d\n",a[0]);

8)

E1.第3行有錯(cuò)誤

C2.第7行有錯(cuò)誤

匚3.第5行有錯(cuò)誤

匕4.沒(méi)有錯(cuò)誤

2:C語(yǔ)言中while和do-while循環(huán)的主要區(qū)別是().

@1.do-while的循環(huán)體至少無(wú)條件執(zhí)行一次

C2.while的循環(huán)控制條件比的循環(huán)控制條件嚴(yán)格

C3.do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)

°4.do-while的循環(huán)體不能是復(fù)合語(yǔ)句

3:設(shè)變量a是整型,f是實(shí)型,i是雙精度型,則表達(dá)式10+<a,+i*f

值的數(shù)據(jù)類型為()。

1.int

2.float

3.double

C4.不確定

4:在“文件包含”預(yù)處理語(yǔ)句的使用形式中,當(dāng)#include后面的

文件名用括起時(shí),尋找被包含文件的方式是()。

C1.直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄

E2.先在源程序所在目錄搜索,再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索

C3.僅僅搜索源程序所在目錄

C4.僅僅搜索在前目錄

5:下面有關(guān)for循環(huán)的正確描述是()

匚1.for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況

匚2.for循環(huán)是先執(zhí)行循環(huán)體語(yǔ)句,后判定表達(dá)式

匚3.在for循環(huán)中,不能用break語(yǔ)句跳出循環(huán)體

E4.for循環(huán)體語(yǔ)句中,可以包含多條語(yǔ)句,但要用花括號(hào)括起來(lái)

6:以下C程序正確的運(yùn)行結(jié)果是().

main()

{inty=2456;

printf("y=%3o\n”,y);

printf("y=%8o\n”,y);

printf(“y=%#8o|n",y);

1.y=2456

2456

y=########2456

C2.y=4630

y=4630

y=########4630

C3.y=2456

y=2456

y=02456

E4.y=4630

y=4630

y=04630

7:有以下定義和語(yǔ)句,則以下引用形式不合法的是()。

Structs

{intil;

structs*i2,iO;

);

staticstructs

a[3]={2,&a[l],J\0',4,%a[2],&a[0],6,'\0'

*ptr;

ptr=a;

°1.ptr->i1++

匚2.*ptr->i2

3.++ptr->iO

4.ptr->il

8:在C語(yǔ)言中,char型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是()。

1.補(bǔ)碼

2.反碼

3.源碼

4.ASCII碼

9:設(shè)有以下說(shuō)明語(yǔ)句

structstu

{inta;

floatb;

}stutype;

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

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

匚2.structstu是用戶定義的結(jié)構(gòu)體類型

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

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

10:若調(diào)用fputc函數(shù)輸出字符成功,則其返回值是()。

1.EOF

C2.1

3.0

E4.輸出的字符

1:對(duì)于for(表達(dá)式1;;表達(dá)式3)可理解為()

匚1.for(表達(dá)式1;1;表達(dá)式3)

區(qū)2.for(表達(dá)式1:1;表達(dá)式3)

匚3.for(表達(dá)式1;表達(dá)式1;表達(dá)式3)

匚4.for(表達(dá)式1;表達(dá)式3;表達(dá)式3)

2:以下正確的說(shuō)法是().

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

合語(yǔ)句中有效

匚2.在該函數(shù)中有效

C3.在本程序范圍內(nèi)均有效

匚4.非法變量

3:有如下程序,若要求al、a2、cl、c2的值分別為10、20、A、B,

正確的數(shù)據(jù)輸入是().

main()

intal,a2;

charcl,c2;

scanf("%d%d”,&al,&a2);

scanf("%c%c”,&cl,&c2):

1.1020AB<CR>

C2.1020<CR>AB<CR>

C3.1020ABC<CR>

E4.1020AB<CR>

4:設(shè)有以下語(yǔ)句:

structst

{intn;

structst*next;

};

staticstructsta[3]

={5,&a[l],7,&a⑵,9,'\0'},*p;

p=&a=[0];

則以下表達(dá)式的值為6的是()o

01.p++->n

C2.p->n++

匕3.(*P).n++

4.++p->r)

5:下面四個(gè)選項(xiàng)中,均是合法整形常量的選項(xiàng)是().

1.

160

-Oxffff

Oil

匚2.-Oxcdf

01a

Oxe

C3.-01

986,012

0668

匚4.~0x48a

2e5

Ox

6;若要用fopen函數(shù)打開(kāi)一個(gè)新的二進(jìn)制文件,該文件要既能讀也

能寫,則文件方式字符串應(yīng)是()。

“ab+”

K2.“wb+”

“rb+”

C4.“ab”

7:以下不正確的說(shuō)法為().

匕1.在不同的函數(shù)中可以使用相同名字的變量

C2.形式參數(shù)是局部變量

C3.在函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效

國(guó)4.在函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效

8:以下在任何情況下計(jì)算平方數(shù)時(shí)都不會(huì)引起二義性的宏定義是

()。

l.#definePOWER(x)x*x

匚2.#definePOWER(x)(x)*(x)

C3.#definePOWER(x)(x*x)

E4.#definePOWER(x)((x)*(x))

9:若有以下宏定義:

ttdefineN2

ttdefineY(n)((N+1)*n)

則執(zhí)行語(yǔ)句z=2*(N+Y(5));后的結(jié)果是()o

C1.語(yǔ)句有錯(cuò)誤

E2,z=34

C3.z=70

C4.z無(wú)定值

10:下面四個(gè)選項(xiàng)中,均是不合法浮點(diǎn)數(shù)的選項(xiàng)是().

C1.160.

0.12

e3

E2.123

2e4.2

.e5

C3.18

123e4

0.0

C4.-e3

0.234

le3

1:已知函數(shù)的調(diào)用形式:fread(buffer,size,count,fp);其中

buffer代表的是()o

C1.一個(gè)整形變量,代表要讀入的數(shù)據(jù)項(xiàng)總數(shù)

匚2?一個(gè)文件指針,指向要讀的文件

E3.一個(gè)指針,指向要讀入數(shù)據(jù)的存放地址

C4.一個(gè)存儲(chǔ)區(qū),存放要讀的數(shù)據(jù)項(xiàng)

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

typedefunion{longa[2];

intb[4];

charc[8];

)TY

TYour;

main()

{printf(<<%d\nw,sizeof(our));

匚1.32

C2.16

K3.8

匚4.24

3:

已有程序和輸入數(shù)據(jù)的形式,程序中輸入語(yǔ)句的正確形式應(yīng)當(dāng)為

()o(注:?表示空格,<CR>表示回車)

main()

{inta;floatf;

printf("\nlnputnumber:");

輸入語(yǔ)句

printf(a=%d\n”,f,a);

)

Inputnumber:4.5??2<CR>

匚1.scanf(,&a,&f);

C2.scanf(,&f,&a);

C3.scanf(,&a,&f);

E4.scanf(,&f,&a);

4:根據(jù)下面的定義,能打印出字母M的語(yǔ)句是().

Structperson{charname[9];

intage;

);

structpersonclass[10]={"John”,17,

"Paul”,19,

“Mary”,18,

“adam”,16

);

Cl.printf(w%c\nM,class[3].name);

2.printf("%c\n",class[3].name[1]);

3.printf(w%c\nw,class[2].name[1]);

4.printf(a%c\nw,class[2].name[0]);

5:設(shè)有以下結(jié)構(gòu)體類型:structst{charname[8];intnum;

floats[4];}student[50];并且結(jié)構(gòu)體數(shù)組student中的元素都

已有值,若要將這些元素寫到硬盤文件fp中,以下不正確的形式

是()。

L1.fwrite(student,sizeof(structst),50,fp);

C2.fwrite(student,50*sizeof(structst),1,fp);

@3.fwrite(student,25*sizeof(structst),25,fp);

°4.for(i=0;i<50;i++)

fwrite(student+i,sizeof(structst),1,fp);

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

^defineMAX(A,B)(A)>(B)?(A):(B)

#definePARTY(Y)printf(rtY=%d\t",Y)

MainO

{inta=l,b=2,c=3,d=4,t;

T=MAX(a+b,c+d);

PRINT(t);

)

1.Y=3

2.存在語(yǔ)法錯(cuò)誤

3.Y=7

4.Y=0

7:下面程序的運(yùn)行結(jié)果是().

main()

structcmplx{intx;

inty;

}cnum[2]={l,3,2,7};

printf(“%d\n”,cnum[0].y/cnum[O].x*cnum[l].x);

)

1.0

2.1

3.3

4.6

8:下面四個(gè)選項(xiàng)中,均是正確的數(shù)值常量或字符常量的選項(xiàng)是().

1.

0.0

0x8f

8.9e

,&'

C2."a"

3.9E-2.5

lei

C3.

'3)

Oil

OxFFOO

Oa

E4,+001

Oxabcd

2e2

9:以下不正確的語(yǔ)句(設(shè)有int>山是()o

匚l.P*=3;

匚2.p/—q;

C3.p十=3;

@4.p&&=q;

10:若有以下說(shuō)明和語(yǔ)句,則對(duì)中域的正確引用方式是()o

Structpupil

{charname[20;

intsex;

}pup,*p;

p=&pup;

1.p.pup.sex

2.p->pup.sex

3.(*p),pup.sex

4.(*p).sex

1:對(duì)以下說(shuō)明語(yǔ)句的正確理解是()。

inta[10]={6,7,8,9,10);

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

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

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

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

2:C語(yǔ)言中while和do-while循環(huán)的主要區(qū)別是().

@1.do-while的循環(huán)體至少無(wú)條件執(zhí)行」一次

匚2.while的循環(huán)控制條件比的循環(huán)控制條件嚴(yán)格

匚3.do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)

匚4.do-while的循環(huán)體不能是復(fù)合語(yǔ)句

3:已有變量定義和函數(shù)調(diào)用語(yǔ)句:inta=25;print_value(&a);

下面函數(shù)的正確輸出結(jié)果是()。

voidprint_value(int*t)

{print("%d\n",++*x);}

C1.23

2.24

匚3.25

區(qū)4.26

4:以下使i的運(yùn)算結(jié)果為4的表達(dá)式是()。

°1.inti=0,j=0;

(i=3,(j十十)十i);

匚2.inti=l,j=0;

j=i=((i=3)*2);

C3.inti=0,j=l;

(j==l)?(i=l);(i=3);

付4.inti=l,j—1;

i+=j十=2;

5:在C語(yǔ)言中,int、char和short三種類型數(shù)據(jù)在內(nèi)存中所占用

的字節(jié)數(shù)()。

匚1.由用戶自己定義

匚2.均為2個(gè)字節(jié)

匚3.是任意的

E4.有所用的機(jī)器的機(jī)器字長(zhǎng)決定

6:表達(dá)式為X13的值是().

61.OxFFEC

匚2.0xFF71

3.0xFF68

4.0xFF17

7:若有說(shuō)明:int*p,m=5,n;以下正確的程序段是()。

°1.p=&n;

scanf("%d”,&p);

C2.p=&n;

scanf(,*p);

C3.scanf(u%dv,&n);

*p二n;

@4.p=&n;

*p=m

8:在C語(yǔ)言中,一位數(shù)組的定義方式為:類型說(shuō)明符數(shù)組名()o

匕L[常量表達(dá)]

匚2.整型表達(dá)式

匚3.[整型常量]或[整型表達(dá)式]

E4.[整型常量]

9:設(shè)pl和p2是指向同一個(gè)字符串的指針變量,c為字符變量,則

以下不能正確執(zhí)行的賦值語(yǔ)句是()。

C1.c=*pl+p2;

@2,p2=c

C3.pl=p2

匚4.c=*pl*(*p2);

10:以下對(duì)二維整形數(shù)組a的正確說(shuō)明是()。

1.inta[3][];

C2.floata(3,4);

付3.doublea[l][4];

C4.floata(3)(4);

1:sizeof(float)M()。

C1.一個(gè)雙精度型表達(dá)式

E2.一個(gè)整型表達(dá)式

C3.一種函數(shù)調(diào)用

C4.一個(gè)不合法的表達(dá)式

2:

閱讀以下程序,當(dāng)輸入數(shù)據(jù)的形式為:25,13,10<CR>,正確的輸

出結(jié)果為()。

main()

{intx,y,z;

scanf(“%d%d%d",&x,&y,&z);

printf("x+y+z=%d\n”,x+y+z);

)

匚1.x+y+z=48

匚2.x+y+z=35

3.x+z=35

E4.不確定值

3:在位運(yùn)算中,操作數(shù)每右移一位,其結(jié)果相當(dāng)于().

1.操作數(shù)乘以2

2.操作數(shù)除以2

3.操作數(shù)除以4

4.操作數(shù)乘以4

4:下面對(duì)typedef的敘述中不正確的是().

匚1.用typedef可以定義各種類型名,但不能用來(lái)定義變量

E2.用typedef可以增加新類型

C3.用typedef只是將已存在的類型用一個(gè)新的標(biāo)識(shí)符來(lái)代表

匚4.使用typedef有利于程序的通用和移植

5:在C語(yǔ)言中,int、char和short三種類型數(shù)據(jù)在內(nèi)存中所占用

的字節(jié)數(shù)()。

CL由用戶自己定義

C2.均為2個(gè)字節(jié)

C3.是任意的

E4.有所用的機(jī)器的機(jī)器字長(zhǎng)決定

6:

以下程序的正確運(yùn)行結(jié)果是(D).

ftdefineMAX10

inta[MAX],I;

main()

{printf("\n");subl();sub3(a);sub2();sub3(a);

)

sub2()

{inta[MAX],I,max;

max=5;

for(1=0;I<max;I++)a[I]=I;

)

subl()

{for(I=0;I<MAX;I++)a[j]=I+l;

)

sub3(inta[])

{intI;

for(I=0;I<MAX;I++)printf((iW,a[I]);

printf("\n");

)

C1.024681012141618

01234

C2.01234

024681012141618

3.0123456789

01234

E4.024681012141618

024681012141618

7:C語(yǔ)言共用體型變量在程序運(yùn)行期間()

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

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

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

4.沒(méi)有成員駐留在內(nèi)存中

8:下列運(yùn)算符中優(yōu)先級(jí)最高的是().

C1.v

E2.十

C3.%

C4.!=

9:編輯程序的功能是()。

1.建立并修改程序

C2.將c源程序編譯成目標(biāo)程序

C3.調(diào)試程序

C4.命令計(jì)算機(jī)執(zhí)行指定的操作

10:設(shè)有程序段

t=0

while(printf())

{t++;

if(t<3)bread;

下面描述正確的是().

匚1.其中循環(huán)控制表達(dá)式與o等價(jià)

E2.其中循環(huán)控制表達(dá)式與'0'等價(jià)

C3.其中循環(huán)控制表達(dá)式是不合法的

1:以下正確的c語(yǔ)言標(biāo)識(shí)符是()o

C1.%x

C2.a+b

E3.al23

4.test!

2:若有說(shuō)明:inta[3][4];則數(shù)組a中各元素()。

C1.可在程序的運(yùn)行階段得到初值0

E2.可在程序的編譯階段得到初值0

C3.不能得到確定的初值

C4.可在程序的編譯或運(yùn)行階段得到初值0

3:下面四個(gè)選項(xiàng)中,均是正確的數(shù)值常量或字符常量的選項(xiàng)是().

0.0

0x8f

8.9e

,&'

C2."a"

3.9E-2.5

lei

C3.

'3'

Oil

OxFFOO

Oa

E4.+001

Oxabcd

2e2

50.

4:對(duì)for(表達(dá)式1;;表達(dá)式3)可以理解為().

Cl.for(表達(dá)式1;0;表達(dá)式3)

E2.for(表達(dá)式1;1;表達(dá)式3)

C3.for(表達(dá)式1;表達(dá)式1;表達(dá)式3)

°4.for(表達(dá)式1;表達(dá)式3;表達(dá)式3)

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

for(x=3,x<6;x++)printf((x%2)?(),x);

1,**3

##4

**5

C2.##3

**4

##5

C3.##3

**4##5

E4.**3##4

6:在16位IBM-PC機(jī)上使用C語(yǔ)言,若有如下定義:

uniondata

{inti;

charch;

doublef;

}b;

則共用體變量占用內(nèi)存的字節(jié)數(shù)是().

Ci.i

C2.2

E3.8

C4.11

7:編輯程序的功能是()。

@L建立并修改程序

C2.將c源程序編譯成目標(biāo)程序

匚3.調(diào)試程序

4.命令計(jì)算機(jī)執(zhí)行指定的操作

8:下面四個(gè)選項(xiàng)中,均是不合法轉(zhuǎn)義字符的選項(xiàng)是().

C1.

,\,,,

'\xf,

E2.J\ioir

'\,

'\a,

C3.

‘\oir

'\}‘

J4.'\abc

'xlf'

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

#include“stdio.h”

mainO

{structdata

{intyear,month,day;

}today;

printf("%d\n",sizeof(structdata));

)

1.6

2.8

#include<stdio.h>

mainO

{intk=4,m=l,p;

p=func(k,m)jprintf("%d,”,p);

p=func(k,m);printf(a%d\nw,p);

)

func(inta,intb)

{staticintm=O,i=2;

i+=m+l;

m=i+a+b;

return(m);

)

E1.8,17

C2.8,16

3.8,20

4.8,8

1:若以下變量均是整形,且num=sum=7;則計(jì)算表達(dá)式sUM=num++,

sUM++,++num后sum的值為().

E1.7

C2.8

C3.9

C4.10

2:sizeof(float)是()。

C1.一個(gè)雙精度型表達(dá)式

@2.一個(gè)整型表達(dá)式

匚3.一種函數(shù)調(diào)用

匚4.一個(gè)不合法的表達(dá)式

3:下面四個(gè)選項(xiàng)中,均是非法常量的選項(xiàng)是()。

K1.

'as'

-Offf

\0xa'

C2.<\\,

''01'

12,456

匚3.-0x18

01177

Oxf

4.Oxabc

'\O'

"a”

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

#include<stdio.h>

mainO

{intk=4,m=l,p;

p=func(k,m)jprintf(“%d,”,p);

p=func(k,m)jprintf("%d\n",p);

func(inta,intb)

{staticintm=O,i=2;

i+=m+l;

m=i+a+b;

return(m);

1.8,17

2.8,16

3.8,20

4.8,8

5:以下不正確的說(shuō)法為().

C1.在不同的函數(shù)中可以使用相同名字的變量

匕2.形式參數(shù)是局部變量

匚3.在函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效

E4.在函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效

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

#include“stdio.h"

ftdefineFUDGE(y)2.84+y

ttdefinePR(a)printf(rt%dw,(int)(a))

^definePRINT1(a)PR(a);putchar()

main()

{intx=2;

PRINT1(FUDGE(5)*X);

匚1.11

E2.12

3.13

C4.15

7:C語(yǔ)言用()表示邏輯“真”值。

C1.true

2.t或y

E3.非零整數(shù)值

匚4.整數(shù)0

8:若有說(shuō)明:inta[][4]={0,0};則下面正確的敘述是()。

C1.數(shù)組a中每個(gè)元素均可得到初值0

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

C3.因?yàn)槎S數(shù)組a中第二維大小的值除以初值個(gè)數(shù)的商為1,故數(shù)組a

的行數(shù)為1

E4.只有元素a0][0]和可得到初值0,其余元素均得不到初值0

9;若有說(shuō)明:inta[3][4]={0};則下面正確的敘述是().

1.只有元素a[0][0]可得到初值0

2.此說(shuō)明語(yǔ)句不正確

3.數(shù)組a中各元素都可得到初值,但其值不一定為0

4.數(shù)組a中每個(gè)元素均可得到初值0

10:為了避免嵌套的if-else語(yǔ)句的二義性,c語(yǔ)言規(guī)定else總是

與()組成配對(duì)關(guān)系。

C1.縮排位置相同的if

C2.在其之前末配對(duì)的if

E3.在其之前未配對(duì)的最近的if

°4.同一行上的if

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

c1.宏替換不占用運(yùn)行時(shí)間

C2.宏名無(wú)類型

C3.宏替換知識(shí)字符替換

E4.宏名必須用大寫字母表示

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

Structstu

{intx;

int*y;

)*P;

intdt[4]={10,20,30,40};

structstu

a[4]={50,&dt[0],60,

70,&dt[2],80,&dt[3]

);

main()

{p=a;

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

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

printf("%d\n”,++(*p->y));

)

1.10,20,20

C2.50,60,21

E3.51,60,21

C4.60,70,31

3:下面四個(gè)選項(xiàng)中,均是不合法浮點(diǎn)數(shù)的選項(xiàng)是().

C1.160.

0.12

e3

E2.123

2e4.2

.e5

C3.18

123e4

0.0

C4.-e3

0.234

le3

4:已知x=43,ch='A',y=0;則表達(dá)式(x>=y6&&ch('B'&&!

Y)的在值是().

Ci.o

匕2.語(yǔ)法錯(cuò)

E3.1

C4.“假”

5:設(shè)有以下說(shuō)明語(yǔ)句

structstu

{inta;

floatb;

}stutype;

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

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

匚2.structstu是用戶定義的結(jié)構(gòu)體類型

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

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

6:以下對(duì)C語(yǔ)言中共用體類型數(shù)據(jù)的敘述正確的是()。

CL可以對(duì)共用體變量名直接賦值

C2.一個(gè)共用體變量中可以同時(shí)存放其所有成員

E3.一個(gè)共用體變量中不可能同時(shí)存放其所有成員

C4.共用體類型定義中不能出現(xiàn)結(jié)構(gòu)體類型的成員

7:下面程序的運(yùn)行結(jié)果是().

#include<stdio.h>

main()

{inti,b,k=0;

for(i=l;i〈=5;i++)

{b=i%2;

while(b--->=0)k++;

)

printf("%d,%d",k,b);

)

C1.3,-1

C2.8,-1

C3.3,0

E4.8,-2

8:設(shè)x、y和z是int型變量,且x=3,y=4,z=5,則下面表達(dá)

式中值為0的是().

C1」X,&&'y'

C2.x<=y

C3.xIIy+z&&y-z

@4.!((x<y)&&!zII1)

9:已知學(xué)生記錄描述為

structstudent

{intno;

charname[20];

charset;

struct

{intyear;

intmonth;

intday;

}birth;

);

structstudents;

設(shè)變量s中的“生日”應(yīng)是“1984年11月H日”,下列對(duì)生日的

正確賦值方式是().

C1.year=1984;

month=ll;

day=ll;

C2.birth.year=1984;

birth.month=ll;

birth.day=l1;

C3.s.year=1984;

s.month=ll;

s.day=11;

@4.s.birth.year=1984;

s.birth.month=ll;

s.birth.day=l1;

10:對(duì)for(表達(dá)式1;;表達(dá)式3)可以理解為().

C1.for(表達(dá)式1;0;表達(dá)式3)

E2.for(表達(dá)式1;1;表達(dá)式3)

C3.for(表達(dá)式1;表達(dá)式1;表達(dá)式3)

°4.for(表達(dá)式1;表達(dá)式3;表達(dá)式3)

1:已知x=43,ch='A',y=0;則表達(dá)式(x>=y6&&ch('B'&&!

Y)的在值是().

1.0

C2.語(yǔ)法錯(cuò)

E3.1

匕4.“假”

2:函數(shù)rewind的作用是().

1.使位置指針重新返回文件的開(kāi)頭

2.將位置指針指向文件中所要求的特定位置

3.使位置指針指向文件的末尾

4.使位置指針自動(dòng)移動(dòng)到下一個(gè)字符位置

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

C1.宏替換不占用運(yùn)行時(shí)間

匚2.宏名無(wú)類型

C3.宏替換知識(shí)字符替換

E4.宏名必須用大寫字母表示

4:若以下變量均是整形,且num=sum=7;則計(jì)算表達(dá)式sUM=num++,

sUM++,++num后sum的值為().

E1.7

C2.8

C3.9

匚4.10

5:若希望當(dāng)A的值為奇數(shù)時(shí),表達(dá)式的值為“真”,A的值為偶數(shù)

時(shí),表達(dá)式的值為“假”。則以下不能滿足要求的表達(dá)式是().

匚1.A%2==1

匚2.!(入%2==0)

E3.!(A%2)

匚4.A%2

6:已有定義intk=2;int*ptrl,*ptr2;且ptrl和ptr2均已指向

變量k,下面不能正確執(zhí)行的賦值語(yǔ)句是()。

°1.k=*ptrl+*ptr2;

2.ptr2=k;

C3.pl=*p2;

C4.*pl=p2;

7:C語(yǔ)言派程序的基本單位是()。

匕1.過(guò)程

E2.函數(shù)

C3.子程序

C4.標(biāo)識(shí)符

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

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

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

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

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

9:若有以下宏定義:

#defineN2

ttdefineY(n)((N+l)*n)

則執(zhí)行語(yǔ)句z=2*(N+Y(5));后的結(jié)果是()o

C1.語(yǔ)句有錯(cuò)誤

E2,z=34

C3.z=70

°4.z無(wú)定值

10:利用fseek函數(shù)的正確調(diào)用形式是().

匚1.改變文件的位置指針

匚2.文件的順序讀寫

匚3.文件的隨機(jī)讀寫

E4.以上答案均正確

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

C1.整型常量

C2.整型表達(dá)式

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

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

2:設(shè)n=10,i=4、則賦值運(yùn)算n%=i+l執(zhí)行后,n的值是().

1.0

C2.3

匚3.2

C4.1

3:對(duì)以下說(shuō)明語(yǔ)句的正確理解是()。

inta[10]={6,7,8,9,10);

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

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

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

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

4:在“文件包含”預(yù)處理語(yǔ)句的使用形式中,當(dāng)#5011(16后面的

文件名用括起時(shí),尋找被包含文件的方式是()。

C1.直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄

E2.先在源程序所在目錄搜索,再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索

C3.僅僅搜索源程序所在目錄

匕4.僅僅搜索在前目錄

5:C語(yǔ)言結(jié)構(gòu)體類型變量在程序執(zhí)行期間().

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

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

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

C4.沒(méi)有成員駐留在內(nèi)存中

6:C語(yǔ)言規(guī)定,數(shù)組名做實(shí)參時(shí),它和對(duì)應(yīng)形參之間的數(shù)據(jù)傳遞方

式是:

口1.用戶指定傳遞方式

C2.無(wú)傳遞

C3.單向值傳遞

E4.地址傳遞

7:以下正確的說(shuō)法是().

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

合語(yǔ)句中有效

C2.在該函數(shù)中有效

C3.在本程序范圍內(nèi)均有效

C4.非法變量

8:判斷char型變量ch是否為大寫字母的正確表達(dá)式是().

'A'<=ch<='r

C2.(cb>=‘A,)&(chV='Z')

E3.(ch>='A,)&&(chV='T)

C4.('A'<=ch)AND('Z'>=ch)

9:編輯程序的功能是()o

1.建立并修改程序

C2.將c源程序編譯成目標(biāo)程序

C3.調(diào)試程序

匕4.命令計(jì)算機(jī)執(zhí)行指定的操作

10:以下對(duì)C語(yǔ)言中共用體類型數(shù)據(jù)的敘述正確的是()。

C1.可以對(duì)共用體變量名直接賦值

C2.一個(gè)共用體變量中可以同時(shí)存放其所有成員

E3.一個(gè)共用體變量中不可能同時(shí)存放其所有成員

C4.共用體類型定義中不能出現(xiàn)結(jié)構(gòu)體類型的成員

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

#include"stdio.h"

main()

{union{longa;

intb;

charc;

}m;

printf("%d\n",sizeof(m));

)

C1.2

E2.4

C3.6

4.8

2:若要利用下面的程序片段使指針變量p指向一個(gè)存儲(chǔ)整型變量的

存儲(chǔ)單元,貝H]中應(yīng)填入的內(nèi)容是()0

Int*p;

P=[]malloc(sizeof(int));

°1.int

C2.int*

C3.(*int)

@4.(int*)

3:系統(tǒng)的標(biāo)準(zhǔn)輸入文件是指()。

E1.鍵盤

C2.顯示器

匚3.軟盤

匚4.硬盤

4:函數(shù)ftell(fp)的作用是().

1.得到流式文件的當(dāng)前位置

C2.移動(dòng)流式文件的位置指針

C3.初始化流式文件的位置指針

C4.以上答案均正確

5:以下for循環(huán)的執(zhí)行次數(shù)是().

for(x=0,y=0;(y=123)&&(x<4);x++);

1.是無(wú)限循環(huán)

C2.循環(huán)次數(shù)不定

@3.執(zhí)行4次

匚4.執(zhí)行3次

6:以下不能對(duì)二維整形數(shù)組a進(jìn)行正確初始化的語(yǔ)句是()。

L1.inta[2][3]={0};

C2.inta[][3]={{l,2},{0}};

E3.inta[2][3]={{1,2},{3,4},{5,6});

C4.inta[][3]={l,2,3,4,5,6};

7:若有宏定義如下:

#defineX5

#defineYX+l

#defineZY*X/2

則執(zhí)行以下printf語(yǔ)句后,輸出結(jié)果是()。

Inta;a=Y;

Printf(“%d\n”,Z);

Printf("%d\n",一a);

7

6

2.12

6

3.12

5

E4.7

5

8:若x,y均定義為int型,z定義為double型,以下不合法的scanf

函數(shù)調(diào)用語(yǔ)句是().

C1.scanf(rt%d%dlx,%lev,&x,&y,&z);

°2.scanf(a%2d*%d%lfw,&x,&.y,&z);

C3.scanf(,&x,&Y);

@4.scanf(rt%x%o%6.2f“,&x,&y,&z);

9:選擇出合法的if語(yǔ)句(設(shè)intx,y;)()0

E1.if(x!=y)if(x>y)printf("x>y\n");

elseprinf("xVy\n");elseprintf(MX==y'n");

C2.if(xi=y)

if(x>y)printf(wx>y\n")

elseprintf("xVy'n");

elseprintfx==y'n");

C3.if(x!=y)if(x>y)Printf(wx>y\n”);

elseprintf("xVy\n")

elseprintf("x==y'n");

匚4.if(x!=y)

lf(x>y)Printf("x>y\n");

elseprintf(vxVy'n")

elsePrintfx==y\n");

10:請(qǐng)讀程序片段:

intx=20;

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

上面程序片段的輸出結(jié)果是().

C1.02

C2.?20

E3.-21

C4.-11

1:若有以下說(shuō)明和語(yǔ)句,則下面表達(dá)式中值為1002的是()o

Structstudent

{intage;

intnum;

);

structstudentstu[3]={{1001,20},{1002,19},{1003,21);

structstudent*p;

p=stu;

C1.(p++)?>num

匚2.(p++)?>age

匚3.(*p).num

付4.(*++p).age

2:以下不正確的語(yǔ)句(設(shè)有int小力是()o

1.P*=3;

2.p/=q;

匚3.p十=3;

付4.p&&=q;

3:若有以下定義和說(shuō)明:

#include"stdio.h"

structstd

{charnum[6];

charname[8];

floatmark[4];

}a[30];

FILE*fp;

設(shè)文件中以二進(jìn)制形式存有10個(gè)班的學(xué)生數(shù)據(jù),且已正

確打開(kāi),文件指針定

位于文件開(kāi)頭。若要從文件中讀出30個(gè)學(xué)生的數(shù)據(jù)放入

a數(shù)組中,以下不能

此功能的語(yǔ)句是()。

匚1.for(i=0;i<30;i++)

fread(&a[i],sizeof(structstd),IL,fp);

C2.for(i=0;i<30;i++,i++)

fread(a+i,sizeof(structstd),IL,fp);

C3.fread(a,sizeof(structstd),30L,fp);

@4.for(i=0;i<30;i++)

fread(a[i],sizeof(structstd),IL,fp);

4:設(shè)有以下說(shuō)明,則下面不正確的敘述是()。

Uniondata

{inti;

charc;

floatf;

}un;

CLun所占的內(nèi)存長(zhǎng)度等于成員f的長(zhǎng)度

C2.un的地址和它的各成員地址都是同一地址

E3.un可以作為函數(shù)參數(shù)

C4.不能對(duì)un賦值,但可以在定義un時(shí)對(duì)它初始化

5:函數(shù)rewind的作用是().

E1.使位置指針重新返回文件的開(kāi)頭

匚2.將位置指針指向文件中所要求的特定位置

C3.使位置指針指向文件的末尾

C4.使位置指針自動(dòng)移動(dòng)到下一個(gè)字符位置

6:設(shè)有說(shuō)明:charw;intx;floaty;doublez;則表達(dá)式w*x+z-y

值的數(shù)據(jù)類型為()。

C1.float

C2.char

3.itn

4.double.

7:選擇出合法的if語(yǔ)句(設(shè)intx,y;)()。

E,z

1.if(x!=y)if(x>y)Printf(x>y\n");

elseprinfxVy\n");elseprintf("X==y\n");

C2.if(xi=y)

if(x>y)printf(Mx>八n")

elseprintfxVy'n");

elseprintfx==y'n”);

C3.if(x!=y)if(x>y)Printf(wx>y\n");

elseprintf(nxVy'n")

elseprintf("x==y'n");

C4.if(x!=y)

If(x>y)Printf(vx>y\nv;

elseprintf("xVy\n")

elsePrintf("x==y'n");

8:若調(diào)用fputc函數(shù)輸出字符成功,則其返回值是()。

C1.E0F

C2.1

C3.0

E4.輸出的字符

9:若以下變量均是整形,且num=sum=7;則計(jì)算表達(dá)式sUM=num++,

sUM++,++num后sum的值為().

E1.7

匚2.8

3.9

4.10

10:以下不正確的C語(yǔ)言標(biāo)識(shí)符是()o

1.ABC

2.abc

3.abe

4.ab.c

1:設(shè)有以下說(shuō)明:

structpacked

{unsignedone:1;

unsignedtwo:2;

unsignedthree:3;

unsignedfour:4;

}data;

則以下位段數(shù)據(jù)的引用中不能得到正確數(shù)值的是()

@1.data,one=4

C2.data.two=3

C3.data,three=2

C4.data.four=l

2:已知字母A的ASCII碼為十進(jìn)制數(shù)65,且c2為字符型,則執(zhí)行

語(yǔ)句c2='A'+'6'-'3';后,c2的值為().

l.D

C2.68

匚3.不確定的值

C4.C

3:當(dāng)說(shuō)明一個(gè)共用體變量時(shí)系統(tǒng)分配給它的內(nèi)存是()O

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

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

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

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

4:下面四個(gè)選項(xiàng)中,均是正確的八進(jìn)制數(shù)或十六進(jìn)制數(shù)的選項(xiàng)是

().

□1.

-10

0x8f

-011

C2.Oabc

-017

Oxc

E3.0010

-0x11

Oxfl

C4.0al2

-0x123

-Oxa

5:若有以下程序段:

inta[]={4,0,2,3,1},I,j,t;

for(I=li<5;I++)

{t=a[I];j=I-l;

while(j>=0&&t>a[j])

{a[j+I]=a[j];j—;}

則該程序段的功能是()。

匕L對(duì)數(shù)組a進(jìn)行插入排序(升序)

E2.對(duì)數(shù)組a進(jìn)行插入排序(降序)

匚3.對(duì)數(shù)組a進(jìn)行選擇排序(升序)

匚4.對(duì)數(shù)組a進(jìn)行選擇排序(降序)

6:判斷char型變量ch是否為大寫字母的正確表達(dá)式是().

□1.'A'<=ch<=,V

匚2.(cb>=,A')&(chV=,V)

E3.(ch>=,A')&&(chV='V)

C4.('A'<=ch)AND('Z'>=ch)

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

#defineMAX(A,B)(A)>(B)?(A):(B)

#definePARTY(Y)printf(“Y=%d\t",Y)

Main()

{inta=l,b=2,c=3,d=4,t;

T=MAX(a+b,c+d);

PRINT(t);

)

匚1.Y=3

C2.存在語(yǔ)法錯(cuò)誤

63,Y=7

匚4.Y=O

8:若有以下定義和語(yǔ)句;

structstudent

{intage;

intnum;

);

structstudentstu

[3]={{1001,20},{1002,19},{1003,21}};

main()

{structstudent*p;

p=stu;

則以下不正確的引用是()o

C1.(P++)?》num

匚2.p++

3.(*p).num

4.p=&stu.age

9:設(shè)變量a是整型,f是實(shí)型,i是雙精度型,則表達(dá)式10+'a'+i*f

值的數(shù)據(jù)類型為()。

C2.float

3.double

C4.不確定

10:以下不是C語(yǔ)言的特點(diǎn)的是()

ei.c語(yǔ)言簡(jiǎn)潔、緊湊

E2.能夠編制出功能復(fù)雜的程序

C3.C語(yǔ)言可以直接對(duì)硬件進(jìn)行操作

C4.C語(yǔ)言移植性好

1:以下正確的說(shuō)法是().

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

合語(yǔ)句中有效

2.在該函數(shù)中有效

C3.在本程序范圍內(nèi)均有效

C4.非法變量

2:下面四個(gè)選項(xiàng)中,均是正確的數(shù)值常量或字符常量的選項(xiàng)是().

C1.

0.0

0x8f

8.9e

C2."a"

3.9E-2.5

lei

e3.

'3'

Oil

OxFFOO

0a

E4,+001

Oxabcd

2e2

50.

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

char*s="abcde”

s+=2;printf("%d",s);

C1.cde

匚2.字符'

E3.字符'c'的地址

匚4.無(wú)確定的輸出結(jié)果

4:閱讀以下程序及對(duì)程序功能的描述,其中正確的描述是()。

#include<stdio.h>

main()

(

file*in,*out;

charch,infile[10],outfile[10];

scanf(a%sw,infile);

printf("Entertheinfilename:\n");

scanf("%s”,outfile);

if(in=fopen(infile,wr"))==NULL)

printf("cannotopeninfile\nw);

exit(0);

)

if((out=fopen(outfile,ww"))==NULL)

(

Printf("cannotopenoutfile\nw);

Exit(0);

)

while(!Feof(in)fputc(fgetc(in),out);

fclose(in);

fclose(out);

1.程序完成將磁盤文件的信息在屏幕上顯示的功能

2.程序完成將兩個(gè)磁盤文件和二為一的功能

3.程序完成將一個(gè)磁盤文件復(fù)制到另一個(gè)磁盤文件中

4.程序完成將兩個(gè)磁盤文件合并且在屏幕上輸出

5:以下scanf函數(shù)調(diào)用語(yǔ)句中對(duì)結(jié)構(gòu)體變量成員的不正確引用是

()。

Stuctpupil

{charname[20];

intage;

intsex;

}pup[5,]*p;

p=pup;

1.scanf(,pup[0].name);

2.scanf(""%d),&pup[0].age;

3.scanf(<<%dw,&(p0sex));

4.scanf("%d”,P->age);

6:若希望當(dāng)A的值為奇數(shù)時(shí),表達(dá)式的值為“真”,A的值為偶數(shù)

時(shí),表達(dá)式的值為“假”。則以下不能滿足要求的表達(dá)式是().

1.A%2==1

匚2.!(入%2==0)

E3.!(A%2)

匚4.A%2

7:以下正確的描述是()。

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

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

3.凡是C源程序中行首以標(biāo)識(shí)的控制行都是預(yù)處理指令

4.C語(yǔ)言的編譯預(yù)處理就是對(duì)源程序進(jìn)行初步的語(yǔ)法檢查

8:fscanf函數(shù)的正確調(diào)用形式是()。

C1.fscanf(fp,格式字符串,輸出表列);

C2.fscanf(格式字符串,輸出表列,fp);

C3.fscanf(格式字符串,文件指針,輸出表列);

E4.fscanf(文件指針,格式字符串,輸入表列);

9:請(qǐng)讀程序

#include<stdio.h>

ttdefineMUL(x,y)(x)*y

mainO

{inta=3,b=4,c;

c=MUL(a++,b++);

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

上面程序的輸出結(jié)果是()。

E1.12

C2.15

匚3.20

C4.16

10:設(shè)有下面的程序段:

chats[]="china”;char*p;p=s;

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

CLs和p完全相同

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

溫馨提示

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

評(píng)論

0/150

提交評(píng)論