河南中醫(yī)藥大學(xué)計(jì)算機(jī)C語(yǔ)言期末復(fù)習(xí)題(含六卷)含答案_第1頁(yè)
河南中醫(yī)藥大學(xué)計(jì)算機(jī)C語(yǔ)言期末復(fù)習(xí)題(含六卷)含答案_第2頁(yè)
河南中醫(yī)藥大學(xué)計(jì)算機(jī)C語(yǔ)言期末復(fù)習(xí)題(含六卷)含答案_第3頁(yè)
河南中醫(yī)藥大學(xué)計(jì)算機(jī)C語(yǔ)言期末復(fù)習(xí)題(含六卷)含答案_第4頁(yè)
河南中醫(yī)藥大學(xué)計(jì)算機(jī)C語(yǔ)言期末復(fù)習(xí)題(含六卷)含答案_第5頁(yè)
已閱讀5頁(yè),還剩57頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

河南中醫(yī)藥大學(xué)計(jì)算機(jī)C語(yǔ)言期末復(fù)習(xí)題(一)

考試方式:【閉卷】考試時(shí)間:【90分鐘】總分:【100分】

一、單項(xiàng)選擇題(共20題,每小題2分,共40分)

1、以下標(biāo)識(shí)符中,不合法的是O

A、4d

B、_8_d

C、int

D、key

【答案】A

2、下列不屬于整型變量的類(lèi)型是。

A、byte

B、short

C、float

D、long

【答案】c

3、if語(yǔ)句的基本形式為:if(表達(dá)式)語(yǔ)句,其中"表達(dá)式"=

A、可以是任意合法的表達(dá)式

B、必須是邏輯表達(dá)式

C、必須是邏輯表達(dá)式或關(guān)系表達(dá)式

D、必須是關(guān)系表達(dá)式

【答案】A

【解析】本題考查if表達(dá)式。if(表達(dá)式)中的表達(dá)式可以為任何合法的表達(dá)

式,一般情況下為邏輯、條件表達(dá)式,需要注意的是,當(dāng)?shù)忍?hào)(==)誤寫(xiě)為賦值

號(hào)(二)時(shí)不會(huì)報(bào)錯(cuò)的,但是其值恒為1。

4、下面程序的輸出結(jié)果是.

main()

inti,k=0,a=0,b=0;

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

k++;

if(k%2==0)

a=a+k;

continue;

b=b+k;

a二a+k;

printf(nk=%da=%db=%d\nn,k,a,b);

)

A、k=5a=10b=4

B、k=3a=6b=4

C、k=4a=10b=3

D、k=4a=10b=4

【答案】D

5、下列不正確的定義是o

A、int*p=&i,i;

B、int*p,i;

C、inti,*p=&i;

D、inti,*p;

【答案】A

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

表達(dá)式是O

A、a&&,b

B、a<=b

C、a||b+c&&b~c

D、!(<a<B)&&!C|11)

【答案】D

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

#include<stdio.h>

main()

{

inta=28,b;

chars[10],*p;

p二s;

do

{

b=a%16;

if(b<10)*p=b+48;

else*p=b+55;

p++;

a二a/5;

while(a>0);

*p='\0';

puts(s);

A、10

B、C2

C、C51

D、\0

【答案】C

【解析】考查用字符指針處理字符串的方法。[解題要點(diǎn)]語(yǔ)句“p=s;”是使

指針P指向字符數(shù)組s。*p則引用了p所指位置的數(shù)組元素。[考點(diǎn)鏈接]通

過(guò)指針來(lái)引用一維數(shù)組元素。

8、以下標(biāo)識(shí)符中,不能作為合法的c用戶定義標(biāo)識(shí)符的是0

A、a3_b3

B、void

C、_123

D、IF

【答案】B

9、下列選項(xiàng)中,值為1的表達(dá)式是o

A、1-'0'

B、1-'\0'

C、T-0

D、’'0','0'

【答案】B

【解析】在C程序中,字符量可參與任何整數(shù)運(yùn)算。字符參與運(yùn)算時(shí),首先要

將字符轉(zhuǎn)換為對(duì)應(yīng)的ASCH碼值再參與整數(shù)運(yùn)算。字符對(duì)應(yīng)的ASCII碼值是

49,字符'0'對(duì)應(yīng)的ASCII碼值是48,字符''0'是字符串結(jié)束標(biāo)識(shí)符NULL,其

對(duì)應(yīng)的ASCII碼值是0。

10、已有定義:chara[]="xyz",b[]={'x','y','z'};以下敘述中正確的是

A、數(shù)組a和b的長(zhǎng)度相同

B、a數(shù)組長(zhǎng)度小于b數(shù)組長(zhǎng)度

C、a數(shù)組長(zhǎng)度大于b數(shù)組長(zhǎng)度

D、上述說(shuō)法都不對(duì)

【答案】C

11、c語(yǔ)言中,函數(shù)值類(lèi)型的定義可以缺省,此時(shí)函數(shù)值的隱含類(lèi)型是

A、void

B、int

C、float

D、double

【答案】B

12、根據(jù)數(shù)制的基本概念,下列各進(jìn)制的整數(shù)中,值最大的一個(gè)是o

A、十六進(jìn)制數(shù)10

B、十進(jìn)制數(shù)10

C、八進(jìn)制數(shù)10

D、二進(jìn)制數(shù)10

【答案】A

【解析】分別將四個(gè)數(shù)轉(zhuǎn)換為十進(jìn)制為16,10,8,2。

13、在執(zhí)行intarr[][3]={1,2,3,4,5,6},語(yǔ)句后,arr[l][0]的值為

A、4

B、1

C、2

D、5

【答案】D

【解析】該二維數(shù)組表示的是2行3列的一個(gè)二維數(shù)組,arr[l][0]表示的是第

2行第1列上的元素,即4。

14、有以下定義和語(yǔ)句

structworkers

(

intnum;

charname[20];

charc;

srruct

(

intday;

intmonth;

intyear;

)

s;

);

structworkersw,*pw;

pw=&w能給w中year成員賦1980的語(yǔ)句是。

A、*pw.year=1980;

B、w.year=1980;

C、pw->year=1980;

D、w.s.year=1980;

【答案】D

15、若運(yùn)行時(shí)給變量x輸入12,則以下程序的運(yùn)行結(jié)果是。

main()

{

intx,y;

scanf(n%dn,&x);

y=x>12?x+10:x-12;

printf(n%d\nn,y);

)

A、3

B、22

C、1

D、0

【答案】D

16、判斷關(guān)鍵字*_________不是關(guān)鍵字。

A、int

B、extern

C、break

D、main

【答案】c

17、下列選項(xiàng)中不屬于c語(yǔ)言的數(shù)據(jù)類(lèi)型是o

A、復(fù)數(shù)型

B、邏輯型

C、雙精度型

D、集合型

【答案】A

【解析】在C語(yǔ)言中,數(shù)據(jù)類(lèi)型可分為基本數(shù)據(jù)類(lèi)型、構(gòu)造數(shù)據(jù)類(lèi)型、指針類(lèi)

型、空類(lèi)型4大類(lèi),其中基本類(lèi)型;字符型、整型、實(shí)型(單精度型和雙精度

型)、枚舉類(lèi)型。構(gòu)造類(lèi)型:數(shù)組、結(jié)構(gòu)體、公用體。選項(xiàng)B中的邏輯型和C中

雙精度類(lèi)型都屬于基本數(shù)據(jù)類(lèi)型,選項(xiàng)D集合類(lèi)型屬于構(gòu)造類(lèi)型;而選項(xiàng)A復(fù)

數(shù)型不是C語(yǔ)言的數(shù)據(jù)類(lèi)型。

18、以下語(yǔ)句段執(zhí)行后的輸出結(jié)果是

#include<stdio.h>

main()

intk=3;

if(k)printf("###")elseprintf("&&&&");

A、###

B、&&&&

C、###&&&&

D、有語(yǔ)法錯(cuò)誤,不能執(zhí)行

【答案】D

【解析】在C語(yǔ)言中語(yǔ)句結(jié)束時(shí)應(yīng)該以分號(hào)結(jié)尾,程序中的第1個(gè)

printf("期愣')輸出語(yǔ)句后面少了一個(gè)分號(hào)(;),因此執(zhí)行程序時(shí)會(huì)出錯(cuò)。

19、定義如下變量和數(shù)組:inti;intx[3][3]={1,2,3,4,5,6,7,8,9}則下

面語(yǔ)句的輸出結(jié)果是ofor(i=0;i<3;i++)printf("%d",x[i][2-

1]);

A、258

B、147

C、357

D、369

【答案】A

20、以下對(duì)枚舉類(lèi)型名的定義中正確的是。

A、enuma={sum,mon,tue);

B、enuma{sum=9,mon=-l,tue);

enuma={sum,mon,tuej;

D、enumatrnsumH,mon!i,nt.uen1);

【答案】B

二、填空題(共10題,每小題2分,共20分)

1、數(shù)學(xué)表達(dá)式100<a或者a<-20改寫(xiě)為c語(yǔ)言表達(dá)式是注:表達(dá)

式要在英文半角狀態(tài)下按原表達(dá)式順序書(shū)寫(xiě),且表達(dá)式中不要留空格。

【答案】100<alla<-20#a<-2011100<a#a>10011a<-20#a<-2011a>

100#100<all-20>a#-20>ain00<a#a>10011-20>a#-20>alla>100

2、在c語(yǔ)言中,將字符串中大寫(xiě)字母轉(zhuǎn)換成小寫(xiě)字母的函數(shù)是。

【答案】strlwr#strlwr()#strlwr(字符串)

3、設(shè)有"intx=2,y"說(shuō)明,則逗號(hào)表達(dá)式"y=x+5,x+y"的值是

【答案】9

4、在c語(yǔ)言中,正確的標(biāo)識(shí)符是由組成的,且由開(kāi)頭的。

【答案】['字母、數(shù)字、下劃線','以字母、下劃線']

5、結(jié)構(gòu)化程序三種結(jié)構(gòu)為o

【答案】選擇,順序,循環(huán)

6、以下程序的輸出結(jié)果為o

main()

{

charm,n;

m=getchar();

/*(輸入d)*/n=m-34;

printf("%c",n);

)

【答案】b

7、C語(yǔ)言中,一個(gè)函數(shù)一般由兩個(gè)部分組成,它們是——和函數(shù)體。

【答案】函數(shù)首部

8、設(shè)inta[10],*p=a;

則對(duì)a[2]的正確引用是p[2]和*(p[1])o

【答案】+2

9、有以下程序

ftinclude<stdio.h>

main()

{

inta[3][3]={{1,2,3},{4,5,6},{7,8,9)};

intb[3]={0},i;

for(i=0;i<3;i++)b[i]=a[i][2]+a[2][i];

for(i=0;i<3;i++)printf("%d";

printf("\n");

}

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

【答案】[,101418']

10、以下程序功能是:借助指針變量找出數(shù)組元素中的最大值及其元素的下標(biāo)

值。請(qǐng)?zhí)羁铡?/p>

ttinclude<stdio.h>

main()

(

inta[10],*p,*s;

for(p=a;p-a<10;p++)scanf(n%dn,p);

for(p=a,s=a;p-a<10;p++)if(*p〉*s)s=;

printf("index=%d\n”,s"a);

【答案】P

三、編程題(共3題,共40分)

1、編程序求「80所有整數(shù)的平方和并輸出結(jié)果。(本題10分)

【答案】main()

(__

inti,x;

longsum=0;

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

{

x=i*i;

sum=sum+x;

printf("%ld",sum);

}

2、編寫(xiě)程序,讀一個(gè)在字母C和X之間的字符,打印出該字母在中間的相鄰五

個(gè)字母。如輸入F,則輸出DEFGH。(本題14分)

【答案】Winclude<stdio.h>

main()

I—

charch,cha;

printf("請(qǐng)輸入一個(gè)字母(C到X之間):");

scanf("%c”,&ch);

if((ch<'C)||(ch>'X'))

printf("輸入錯(cuò)誤!\n");

else

for(cha=ch-2;cha<=ch+2;cha++)

printf("%c”,cha);

printf("\n");

3、建立一個(gè)鏈表每個(gè)結(jié)點(diǎn)包括學(xué)號(hào)、姓名、性別、年齡、地址。輸入一個(gè)學(xué)號(hào)

打印該學(xué)號(hào)的學(xué)生的所有信息。如無(wú)此學(xué)號(hào),則輸出“沒(méi)有找到",使用結(jié)構(gòu)體

實(shí)現(xiàn)(本題16分)

【答案】#include<stdlib.h>

#include<stdio.h>

structnode{

longNo;

charName[10];

charsex;

intage;

structnode*next;

);

node*createlink()

structnode*h,*p,*q;

longnum;

h=(structnode*)malloc(sizeof(structnode));

p=q:=h;

printf("請(qǐng)輸入學(xué)生學(xué)號(hào)(輸入0退出輸入)!\n”);

scanf(n%ldn,&num);

while(num!=0)

p=(structnode*)malloc(sizeof(structnode));

p->No=num;

printf("請(qǐng)輸入學(xué)生姓名,\n");

scanf(n%s;p->Name);

printf("請(qǐng)輸入學(xué)生年齡和性別,\n“);

scanf(n%d,%cn,&p->age,&p->sex);

q->next=p;

q=P;

printf(〃請(qǐng)輸入學(xué)生學(xué)號(hào)(輸入0退出輸入)!\n“);

scanf(n%ldn,&num);

p->next=NULL;

returnh;

voidfind(structnode*phead,longnum)

structnode*p;

■if(phead->next==NULL).

printf("沒(méi)有找到.\n");

■return;

p=phead->next;

while(p!=NULL&&p->No!=num)

p=p->next;

if(p==NULL)

printf("沒(méi)有找到.\n");

return;

else

printf("學(xué)生的姓名,%s,年齡,%d,性

別,%cK,p->Name,p->age,p->sex);

|

|i_ntmain()

longnum;

structnode*phead;

phead=createlink();

printf("請(qǐng)輸入要查找的學(xué)生的學(xué)號(hào):\n”);

scanf(n%ldn,&num);

find(phead,num);

河南中醫(yī)藥大學(xué)計(jì)算機(jī)C語(yǔ)言期末復(fù)習(xí)題(二)

考試方式:【閉卷】考試時(shí)間:【90分鐘】總分:【100分】

一、單項(xiàng)選擇題(共20題,每小題2分,共40分)

1、以下選項(xiàng)中不合法的標(biāo)識(shí)是O

A、&a

B、FOR

C、print

D、_00

【答案】A

2、若定義inta=10,則表達(dá)式a+=a=aa*=a的值是。

A、0

B、-180

C、-100

D、-90

【答案】B

【解析】算術(shù)運(yùn)算符的運(yùn)算規(guī)則是:從右到左的原則。所以表達(dá)式中先計(jì)算

a=a-a*a的值是-90,再計(jì)算a=a+a的值是T80。

3、結(jié)構(gòu)化程序設(shè)計(jì)所規(guī)定的三種基本控制結(jié)構(gòu)是()。

A、輸入、處理、輸出

B、樹(shù)形、網(wǎng)形、環(huán)形

C、順序、選擇、循環(huán)

D、主程序、子程序、函數(shù)

【答案】C

4、下面說(shuō)法正確的是o

A、結(jié)構(gòu)化程序的基本結(jié)構(gòu)有三種,分別是循環(huán)結(jié)構(gòu)、選擇結(jié)構(gòu)和順序結(jié)構(gòu)

B、計(jì)算機(jī)只能執(zhí)行順序結(jié)構(gòu)的C語(yǔ)言源程序

C、循環(huán)結(jié)構(gòu)無(wú)法使用N-S流程圖描述

D、一般稱含有20條以內(nèi)語(yǔ)句的算法為簡(jiǎn)單算法,超過(guò)20條則不可能是

簡(jiǎn)單算法

【答案】A

【解析】結(jié)構(gòu)化程序的基本結(jié)構(gòu)為循環(huán)結(jié)構(gòu)、選擇結(jié)構(gòu)和順序結(jié)構(gòu),選項(xiàng)A正

確;計(jì)算機(jī)可以執(zhí)行循環(huán)結(jié)構(gòu)、選擇結(jié)構(gòu)和順序結(jié)構(gòu)的C語(yǔ)言程序,選項(xiàng)B錯(cuò)

誤;循環(huán)結(jié)構(gòu)可以使用-S流程圖描述,選項(xiàng)C錯(cuò)誤;算法復(fù)雜度是指算法在編寫(xiě)

成可執(zhí)行程序后,運(yùn)行時(shí)所需要的時(shí)間資源和內(nèi)存資源,并不是指算法語(yǔ)句的多

少,選項(xiàng)D錯(cuò)誤;本題答案為Ao

5、若調(diào)用一個(gè)函數(shù),且此函數(shù)中沒(méi)有return語(yǔ)句,則正確的說(shuō)法是該函數(shù)

A、沒(méi)有返回值

B、返回若干個(gè)系統(tǒng)默認(rèn)值

C、有返回值,但返回一個(gè)不確定的值

D、能返回一個(gè)用戶所希望的函數(shù)值

【答案】C

【解析】本題考查return語(yǔ)句的意義和用法。在C語(yǔ)言函數(shù)調(diào)用中,如果被調(diào)

用函數(shù)中沒(méi)有retnrn語(yǔ)句,并不帶回一個(gè)確定的、用戶所希望得到的函數(shù)值,

而是帶回的是一個(gè)不確定的值。

6、若有定義:inta=l,b=2,c=3,d=4,m=2,n=2;則執(zhí)行(m=a>b)&&(n=c>d)后n

的值是o

A、4

B、3

C、2

D、1

【答案】C

【解析】對(duì)于表達(dá)式:(m=a>b)&&(n=c>d),首先執(zhí)行m=a>b,由于ab的值

分別為:1,2,所以a>b的值為0,m的值為0,又由于邏輯與運(yùn)算符&&有短路原

則,第一個(gè)表達(dá)式的值為假,所以整個(gè)表達(dá)式的值已經(jīng)確定為假,第二個(gè)表達(dá)式不

會(huì)被執(zhí)行,n的值依然是2,本題答案:C

7.inti,j,a[2][3];按照數(shù)組a的元素在內(nèi)存的排列次序,不能將數(shù)

1,2,3,4,5,6存入a數(shù)組的是。

A、for(i=0;i<2;i++)for(j=0;j<3;j++)a[i][j]=i*3+j+l;

B、for(i=0;i<3;i++)for(j=0;j<2;j++)a[j][i]=j*3+i+l;

C、for(i=0;i<6;i++)a[i/3][i%3]=i+l;

D、for(i=l;i<=6;i++)a[i][i]=i;

【答案】D

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

A、_3

B、#3

C、&3

D、-3

【答案】A

9、有以下程序:

main()

charstr[]=nxyzn,*ps=str;

while(*ps)ps++;

for(ps—;ps-str>=o;ps一)puts(ps);

)

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

A、yz

xyz

B、z

yz

C、z

yz

xyz

D、x

xy

xyz

【答案】C

【解析】執(zhí)行while循環(huán),使指針變量ps指向字符串“xyz”的字符串結(jié)束標(biāo)

志,然后執(zhí)行for循環(huán),先執(zhí)行ps--,使ps指向字符'z',故puts(ps)輸出

結(jié)果為z;再次執(zhí)行ps一,使ps指向字符'y',故puts(ps)輸出結(jié)果為yz;

再次執(zhí)行ps一,使ps指向字符'x',故puts(ps)輸出結(jié)果為xyz,退出循

環(huán)。所以,C選項(xiàng)為所選。

10、以下對(duì)二維數(shù)組a進(jìn)行正確初始化的是o

A、inta[2][3]={{1,2},{3,4},{5,6}};

B、inta[][3]={1,2,3,4,5,6};

C、inta[2][]={1,2,3,4,5,6};

D、inta[2][]={{1,2},{3,4}};

【答案】B

n、算法一般都可以用哪幾種控制結(jié)構(gòu)組合而成()

A、循環(huán)、分支、遞歸

B、順序、循環(huán)、嵌套

C、循環(huán)、遞歸、選擇

D、順序、選擇、循環(huán)

【答案】D

【解析】算法一般由順序、選擇、循環(huán)控制結(jié)構(gòu)組合而成。

12、以下敘述中正確的是—

A、C程序中的注釋只能出現(xiàn)在程序的開(kāi)始位珞和語(yǔ)句的后面

B、C程序書(shū)寫(xiě)格式嚴(yán)格,要求一行內(nèi)只能寫(xiě)一個(gè)語(yǔ)句

C、C程序書(shū)寫(xiě)格式自由,一個(gè)語(yǔ)句可以寫(xiě)在多行上

D、用C語(yǔ)言編寫(xiě)的程序只能放在一個(gè)程序文件中

【答案】C

13、以下關(guān)于數(shù)組的描述正確的是。

A、數(shù)組的大小是固定的,但可以有不同的類(lèi)型的數(shù)組元素。

B、數(shù)組的大小是可變的,但所有數(shù)組元素的類(lèi)型必須相同。

C、數(shù)組的大小是固定的,但所有數(shù)組元素的類(lèi)型必須相同。

D、數(shù)組的大小是可變的,但可以有不同的類(lèi)型的數(shù)組元素。

【答案】C

14、設(shè)有如下說(shuō)明

typedefstructst

(

longa;

intb;

charc[2];

)

new;

則下面敘述中正確的是0

A、以上的說(shuō)明形式非法

B、ST是一個(gè)結(jié)構(gòu)體類(lèi)型

C、NEW是一個(gè)結(jié)構(gòu)體類(lèi)型

D、NEW是一個(gè)結(jié)構(gòu)體變量

【答案】C

【解析】typedef關(guān)鍵字用于聲明一個(gè)新的類(lèi)型名代替已有的類(lèi)型名。本題中

如果沒(méi)有用typedef進(jìn)行定義的話,則structST為結(jié)構(gòu)體類(lèi)型,現(xiàn)在用

typedef定義后,相當(dāng)于用NEW代表了structST這一結(jié)構(gòu)體類(lèi)型,故NEW

為結(jié)構(gòu)體類(lèi)型。

15、有以下程序

main()

(

chara,b,c,*d;

a='\';

b='\xbc';

c='\0xab';

d="\0127";

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

)

編譯時(shí)出現(xiàn)錯(cuò)誤,以下敘述中正確的是O

A、程序中只有a='\';語(yǔ)句不正確

B、b='\xbc';語(yǔ)句不正確

C、d="\0127";語(yǔ)句不正確

D、a='\';和c='\Oxab';語(yǔ)句都不正確

【答案】D

【解析】C語(yǔ)言規(guī)定,轉(zhuǎn)義字符常量是轉(zhuǎn)義字符(反斜線字符)后跟一個(gè)特定的

字符,來(lái)代表某一個(gè)特定的sen碼字符。反斜線后的十六進(jìn)制數(shù)只可由小寫(xiě)字

母x開(kāi)頭,不允許用大寫(xiě)字母X,也不能用Ox。

16、有如下程序

SdefineN4

SdefineMN+2

^defineNUM2*M+1

main()

{

inti;

for(i=l;i<=NUM;i++)printf(n%d\nn,i);

該程序中的for循環(huán)執(zhí)行的次數(shù)是。

A、14

B、n

C、10

D、13

【答案】B

17、若有下列說(shuō)明和語(yǔ)句,則對(duì)結(jié)構(gòu)體變量st中成員i的引用方式不正確的是

structstu

{

inti;

intname;

}st,*p;

p=&st;

A、si

B、*i

C、(*.i

D、p->i

【答案】B

【解析】本題主要考查結(jié)構(gòu)指針:p=&st,訪問(wèn)結(jié)構(gòu)體的成員,可以通過(guò)結(jié)構(gòu)變

量訪問(wèn),即st.i,也可以用等價(jià)的指針形式即(*p).i和p->i。

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

#include<stdio.h>

main()

intcount,i=0;

for(count=l;count<=4;count++)

i+=2;

printf("%d",i);

A、20

B、246

C、2468

D、2222

【答案】C

19、如有定義語(yǔ)句inta[]={1,8,2,8,3,8,4,8,5,8);則數(shù)組a的大小是

A、10

B、11

C、8

D、不定

【答案】A

20、下列描述說(shuō)明正確的是。

A、定義結(jié)構(gòu)體時(shí),它的每個(gè)成員的數(shù)據(jù)類(lèi)型可以不同

B、不同結(jié)構(gòu)體的成員名不能相同

C、結(jié)構(gòu)體定義時(shí),其成員的數(shù)據(jù)類(lèi)型不能是結(jié)構(gòu)體本身

D、結(jié)構(gòu)體定義時(shí)各成員項(xiàng)之間可用分號(hào)也可用逗號(hào)隔開(kāi)

【答案】A

二、填空題(共10題,每小題2分,共20分)

1、C語(yǔ)言約定用作為字符串的結(jié)束標(biāo)志。

【答案】'\0'#\0

2、以下程序?qū)斎雰蓚€(gè)整數(shù),按從大到小的順序輸出。請(qǐng)?jiān)凇獌?nèi)填入正確的

內(nèi)容。

voidmain()

intx,y,z;

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

if()

{

z=x;

printf("%d,%d",x,y);

)

【答案】x<y|

x=y;

y=z;

【解析】其中這里用到了交換變量的方法,如果交換2個(gè)變量,則增加一個(gè)臨

時(shí)變量,然后讓三個(gè)變量在賦值語(yǔ)句中的位置形成一個(gè)環(huán),如a=b;b=c;

c=a。如果是n個(gè)變量交換,同樣是讓他們位置形成一個(gè)環(huán)。如al=a2;

a2二a3;3,3—*an—1=an;an=al0

3、表達(dá)式a=3*5,a*4的值是。

【答案】['60']

4、C語(yǔ)言源程序經(jīng)過(guò)編譯后,生成文件的后綴名是—o

【答案】.c

5、僅由順序、選擇(分支)和重復(fù)(循環(huán))結(jié)構(gòu)構(gòu)成的程序是程序。

【答案】[‘結(jié)構(gòu)化']

6、下列程序段的運(yùn)行結(jié)果是o

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

p=a;

printf("%d",*(p=p+2));

【答案】3

7、在c語(yǔ)言中,在調(diào)用一個(gè)函數(shù)的過(guò)程中又出現(xiàn)——或間接地調(diào)用該函

數(shù)本身,這一現(xiàn)象稱為函數(shù)的遞歸調(diào)用。

【答案】直接

8、指針是存放的變量。

【答案】地址

9、若運(yùn)行以下程序時(shí),從鍵盤(pán)輸入adescriptor/,則下面程序的運(yùn)行結(jié)果是

ttinclude<stdio.h>

voidmain()

{

charc;

intv0=0,vl=0,v2=0;

do

{

switch(c=getchar())

(

case'a':

case'a':

case'e':

case'e':

case‘i二’:

,二'

casei:

case'o':

case'o':

case'u':

case'u':vl+=l;

default:

vO+=l;

v2+=l;

while(c!='n\');

printf(nvO=%d,vl=%d,v2=%d\nn,vO,vl,v2);

)

【答案】v0=12|vl=4|v2=12

【解析】getchar函數(shù)取字符直到回車(chē)為此,且將回車(chē)算在內(nèi),

“while(c!=''n');”在switch(c二getchar。)之后才判斷回車(chē),所以回車(chē)也

算在v0v2內(nèi);case后面沒(méi)跟break,如果一個(gè)case匹配后,后面的case不

再判斷,直接執(zhí)行,直到遇到break;它這里的case遇到AEIOU的不管大小寫(xiě)

都遞增vl,vl就是元音字母的個(gè)數(shù),ADescriptor中一共有4個(gè)case中的字

符;因?yàn)橹皼](méi)有break,所有字符都會(huì)執(zhí)行到default的語(yǔ)句,vO和v2就

是所有字符的個(gè)數(shù)。

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

該程序的功能是O

main()

{

intx=10,y=20,t=0;

if(x!=y)t=x;

x=y;

y=t;

printf(n%d,%d\nn,x,y);

)

【答案】「20,10','變量的交換']

三、編程題(共3題,共40分)

1、編寫(xiě)程序:求1T00之間的奇數(shù)和及偶數(shù)的和。(本題10分)

【答案】#include<stdio.h>

main()

(

intsuml=0,sum2=0,a,b;

for(a=l;a<=100;a++)if(a%2==0)suml+=a;

elsesum2+=a;

printf("%d,%d",suml,sum2);

}

2、編寫(xiě)程序,從輸入的一行字符串中抽取一部分(從第n個(gè)字符開(kāi)始,抽取m

個(gè)字符)構(gòu)成一個(gè)新的字符串,并輸出。其中n〉0且n<=字符串的長(zhǎng)度,否則

打印“起始位置n越界”

要求:n和m都由用戶輸入。

如果抽取的字符串長(zhǎng)度不夠,則按照實(shí)際長(zhǎng)度抽取,例如,字符串為

“abcde”,若n=2,m=3,則抽取結(jié)果為"bed";若n=3,m=5,則抽取結(jié)果為

“cde";若n=0,m=4則輸出:起始位置0越界;若n=6,m=2則輸出:起

始位置6越界(本題14分)

【答案】Winclude<stdio.h>

ttinclude<string.h>

intmain()

intn,m,i;

unsignedlong1;

chars[80];

gets(s);

scanf("%d%d",&n,&m);

l=strlen(s);

if(n+m-l>l){

m=l+l-n;

IZ

if(n>0&&n<=l){

for(i=n-l;i<n+m-l;i++){

printf("%c",s[i]);

}else{

printf("起始位置%d越界",n);

|

return0;

3、有以下學(xué)生信息,使用結(jié)構(gòu)體數(shù)組存儲(chǔ)這些信息

structstudent{

intnum;〃學(xué)號(hào)

intcomputer;〃計(jì)算機(jī)成績(jī)

}s[5]={{101,75},{103,80},{104,85},{106,90}};

再輸入一條新記錄,插入到結(jié)構(gòu)體數(shù)組中,讓5條記錄按計(jì)算機(jī)成績(jī)升序有

序。

【輸入形式】2個(gè)數(shù)據(jù)都使用空格分隔

【輸出形式】分五行輸出數(shù)據(jù),每行數(shù)據(jù)均使用空格分隔

【輸入樣例】10288

【輸出樣例】每行數(shù)據(jù)均使用一個(gè)空格分隔,分五行輸出

10175

10380

10485

10288

10690(本題16分)

【答案】Winclude<stdio.h>

Sinclude<stdlib.h>

structstudent

intnum;〃學(xué)號(hào)

intcomputer;〃計(jì)算機(jī)成績(jī)

}s[5]={{101,75},{103,80},{104,85},{106,90}},tamp;

intmain()

|「

inti,j;

scanf("%d%d",&s[4].num,&s[4].computer);

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

for(j=0;j<5-i;j++)

(

if(s[j].computer>s[j+1].computer)

(

tamp=s[j];

s[j]=s[j+l];

s[j+l]=tamp;

}

}

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

printf("%d%d\n",s[j].num,s[j].computer);

河南中醫(yī)藥大學(xué)計(jì)算機(jī)C語(yǔ)言期末復(fù)習(xí)題(三)

考試方式:【閉卷】考試時(shí)間:【90分鐘】總分:【100分】

一、單項(xiàng)選擇題(共20題,每小題2分,共40分)

1、表示存儲(chǔ)器的容量時(shí),lmb的準(zhǔn)確含義是。

A、1米

B、1024字節(jié)

C、1024K字

D、1.000字節(jié)

【答案】C

2、若a=l,b=2則a|b的值是()。

A、0

B、1

C、2

D、3

【答案】D

3、在c語(yǔ)言中,if語(yǔ)句后的一對(duì)原括號(hào)中,用以決定分支的流程的表達(dá)式

A、只能用邏輯表達(dá)式

B、只能用關(guān)系表達(dá)式

C、只能用邏輯表達(dá)式或關(guān)系表達(dá)式

D、可用任意表達(dá)式

【答案】D

4、在下列選項(xiàng)中,沒(méi)有構(gòu)成死循環(huán)的程序段是—

A、inti=100;

for(;;){

i=i%10+l;

if(i>10)

break;

B、while(1);

C、intk=0;

do

++k;

while(k<=10);

D、ints=12;

while(s);

——s;

【答案】c

【解析】本題考查死循環(huán)的知識(shí)。選項(xiàng)A)中,for循環(huán)沒(méi)有任何控制語(yǔ)句就會(huì)

一直執(zhí)行下去,所以不可能通過(guò)控制表達(dá)式的值結(jié)束循環(huán)。循環(huán)體內(nèi),

i=i%10+l這個(gè)表達(dá)式的值永遠(yuǎn)小于10,所以永遠(yuǎn)不會(huì)跳出循環(huán),是死循環(huán);選

項(xiàng)B)中,while中表達(dá)式永遠(yuǎn)是非0,不會(huì)結(jié)束循環(huán);選項(xiàng)C)中,當(dāng)k>10

時(shí),結(jié)束循環(huán);選項(xiàng)D)中,while(s);后面沒(méi)有任何表達(dá)式而是直接加了一個(gè)

分號(hào),會(huì)一直執(zhí)行,形成死循環(huán)。

5、設(shè)有語(yǔ)句:x=inputbox("輸入數(shù)值","0","示例")程序運(yùn)行后,如果從鍵盤(pán)

上輸入數(shù)值10并按回車(chē)鍵,則下列敘述中正確的是。

A、變量x的值是數(shù)值10

B、在InputBox對(duì)話框標(biāo)題欄中顯示的是"示例"

C、0是默認(rèn)值

D、變量x的值是字符串“10”

【答案】D

【解析】InputBox函數(shù)返回的字符串值必須賦予一個(gè)變量才能被保留,它一次

只能輸入一個(gè)值。變量x的值為“10”。

6、設(shè)有charstr[10],下列語(yǔ)句正確的是。

A、scanf("%s",&str);

B、printf("%c",str);

C、printf("%s",str[0]);

D、printf("%s",str);

【答案】D

7、若有數(shù)組名作為函數(shù)調(diào)用的實(shí)參,傳遞給形參的是o

A、數(shù)組的首地址

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

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

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

【答案】A

8、下面程序段的功能是

#include<stdio.h>

main()

{

charsi;

sl=putc(getc(stdin),stdout);

A、從鍵盤(pán)輸入一個(gè)字符給字符變量si

B、從鍵盤(pán)輸入一個(gè)字符,然后再輸出到屏幕

C、從鍵盤(pán)輸入一個(gè)字符,然后在輸出到屏幕的同時(shí)賦給變量si

D、在屏幕上輸出stdout的值

【答案】C

9、設(shè)有兩個(gè)字符串p和q,其中q是p的子串,把q在p中首次出現(xiàn)的位置作為

子串q在p中位置的算法稱為()。

A、求子串

B、匹配

C、連接

D、求串長(zhǎng)

【答案】B

【解析】本題考查對(duì)字符串進(jìn)行處理的算法。

求子串是在一個(gè)主字符串中按一定的規(guī)則取出任意個(gè)連續(xù)的字符得到一個(gè)新

串。

匹配是指求一個(gè)字符串是另一個(gè)字符串的子串,并返回子串首次出現(xiàn)的位

置。

連接是指把一個(gè)字符串的內(nèi)容連接到另一個(gè)足夠大的字符串的末尾。

求串長(zhǎng)就是統(tǒng)計(jì)字符串中有效字符的個(gè)數(shù)。

10、二維數(shù)組的元素是4個(gè)字符(每個(gè)字符占一個(gè)存儲(chǔ)單元)組成的串,

行下標(biāo)i范圍從0到4,列下標(biāo),i的范圍從0到5。m按行存儲(chǔ)時(shí)元素m[3,5]的

起始地址與m按列存儲(chǔ)時(shí)元素()的起始地址相同。

A、M[2,4)

B、M[3,4)

C、M[3,5]

D、M[4,4)

【答案】B

【解析】M按行存儲(chǔ)時(shí)元素M[3,5]位于第4行第6歹ij(下標(biāo)從0開(kāi)始),也就是

處在第3X6+6=24個(gè)存儲(chǔ)位置,設(shè)與它存儲(chǔ)的起始位置相同的,按列存儲(chǔ)時(shí)的

元素行下標(biāo)為x,列下標(biāo)為y,則有yX5+x+l=24,解得x=3,y=4,即選項(xiàng)B是

正確答案。

11、c語(yǔ)言程序中,若對(duì)函數(shù)類(lèi)型未加顯式說(shuō)明,則函數(shù)的隱含說(shuō)明類(lèi)型為

A、void

B、double

C、int

D、char

【答案】C

12、下列選項(xiàng)中不是字符常量的是。

A,'W

B、'\x2a'

C>'a'

D、"\0"

【答案】D

【解析】C語(yǔ)言規(guī)定,一個(gè)字符常量代表ASCH碼字符集里的一個(gè)字符,在程

序中用單引號(hào)括起來(lái),以便區(qū)分。“\v”'表示的是豎向跳格;"'\x2a'”表

示的是兩位+六進(jìn)制數(shù);“'a'”表示的是字符a對(duì)應(yīng)的ASCII碼值。

13、下列字符數(shù)組初始化語(yǔ)句中,不正確的是o

A、charc[]='goodmorning';

B、chare[20]="goodmorning":

C、charc[]=('a','b','c','d');

D、charc[]={"ffgoodmorning^^);

【答案】A

14、設(shè)有下面的定義:

structst

(

inta;

floatb;

}d;

int*p;

要使p指向結(jié)構(gòu)變量d中的a成員,正確的賦值語(yǔ)句是―-

A、*p=d.a;

B、p=&a;

C、p=d.a;

D、p=&d.a;

【答案】D

【解析】本題主要考查按結(jié)構(gòu)數(shù)組元素方式引用結(jié)構(gòu)成員。結(jié)構(gòu)體變量的成員

引用方法有3種:①結(jié)構(gòu)體變量名,成員名;②指針變量名->成員名;③(*指

針變量名).成員名。因?yàn)镻是指針變量,所以應(yīng)該將地址值賦給p。

15、有以下程序段intm=0,n=0;

charc=,a*;

scanf("%d%c%d",&m,&c,&n);

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

若從鍵盤(pán)上輸入:20b20/,則輸出結(jié)果是o

A、20,B,20

B、20,b,20

C、20,b,0

D、20,B,0

【答案】A

16、從循環(huán)體內(nèi)某一層跳出,繼續(xù)執(zhí)行循環(huán)外的語(yǔ)句是:o

A、break語(yǔ)句

B、return語(yǔ)句

C、continue語(yǔ)句

D、空語(yǔ)句。

【答案】A

17、若有下面的說(shuō)明和定義:

structtest

(

intml;

charm2;

floatm3;

unionuu

{

charul[5];

intu2[2];

)

ua;

)

myaa;

則sizeof(structtest)的值是o

A、20

B、16

C、14

D、9

【答案】A

【解析】共用體uu占8個(gè)字節(jié);因?yàn)榻Y(jié)構(gòu)體在內(nèi)存中占位符的存在,所以結(jié)構(gòu)

體test中成員m2占4個(gè)字節(jié);結(jié)構(gòu)體test占用內(nèi)存的大小是sizeof(int)+

sizeof(char)+3+sizeof(float)+sizeof(ua)=20o

18、執(zhí)行下列語(yǔ)句后,a和b的值分別為()。

inta,b;

a=l+,a,;

b=2+7%-4-,A,;

A、-63,-64

B、98,-60

C、1,-60

D、79,78

【答案】B

19、若有定義語(yǔ)句:doublex[5]={1.0,2.0,3.0,4.0,5.0},*p=x;

則錯(cuò)誤引用X數(shù)組元素的是o

A、*p

B、x[5]

C、*(p+1)

D、*x

【答案】B

20、若有以下定義的語(yǔ)句

structstudent

{

intage;

intnum;

};

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

main()

(

structstudent*p;

p=stu;

}則以下不正確的引用是o

A、(p++)->num

B、p++

C、(*p).num

D、p=&stu.age

【答案】D

【解析】考查對(duì)結(jié)構(gòu)體成員的引用方法。[解題要點(diǎn)]結(jié)構(gòu)體成員的引用可以

用“結(jié)構(gòu)體變量名,成員名”或者“結(jié)構(gòu)體變量指針->成員名”兩種方式來(lái)引

用。[考點(diǎn)鏈接]結(jié)構(gòu)體類(lèi)型的變量、數(shù)組和指針變量的定義。

二、填空題(共10題,每小題2分,共20分)

1、已知a=5,則表達(dá)式"a+=a-=3"的值是

【答案】4

2、關(guān)系表達(dá)式x+y〉5的相反表達(dá)式為

【答案】x+y!>5

3、定義一個(gè)指針數(shù)組p,它有4個(gè)元素,每個(gè)指針指向一個(gè)整型數(shù)據(jù),定義語(yǔ)

句為。

【答案】int*p[4];

4、在C語(yǔ)言中的實(shí)型變量分為兩種類(lèi)型,它們是—和浮點(diǎn)型。

【答案】整形

5、結(jié)構(gòu)化程序設(shè)計(jì)的3種基本結(jié)構(gòu)是:順序結(jié)構(gòu)、選擇結(jié)構(gòu)、結(jié)構(gòu),這三

種基本結(jié)構(gòu)構(gòu)成了復(fù)雜的c語(yǔ)言程序。

【答案】循環(huán)#重復(fù)

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

main()

{

inta[2][3]={{l,2,3},{4,5,6}},intb⑶⑵,i,j;

printf("arraya:\n");

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

(

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

{

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

b[j][i]=a[i][j];

}

printf("\n");

}

printf("arrayb:\n");

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

(

for(j=0;j<=l;j++)printf("%5d",b[i][j]);

printf("\n");

【答案】arraya:123456arrayb:142536

7、對(duì)于文件末尾檢測(cè)函數(shù)feof(),如果文件指針未到文件末尾,則函數(shù)返回值

是_______。

【答案】0#零

8、以下函數(shù)值的類(lèi)型是【1】。

fun(floatx)

(

floaty;

y=3*x-4;

returny;

)

【答案】int

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

main()

{

intk,s,a[3][3]={1,2,3,4,5,6,7,8,9};

s=0;

for(k=0;k<3;k++)s=s+a[k][k];

printf(n%d,n,s);

)

【答案】15#15,#15,

10、下面程序的運(yùn)行結(jié)果是O

#include<stdio.h>

main()

{

inti,t,sum=0;

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

(

sum+=t;

++i;

if(i%3==0)t=-i;

elset二i;

printf("sum=%cT,sum);

【答案】sum=19

三、編程題(共3題,共40分)

1、輸入3個(gè)學(xué)生4門(mén)課的成績(jī){(60,70,65,75),

(75,80,75,90),(95,75,90,65)},計(jì)算每個(gè)學(xué)生的總分和平均成績(jī)并輸出,結(jié)果

保留一位小數(shù)。(本題10分)

【答案】ttinclude

voidmain()

(

inta[3][4]={{60,70,65,75},{75,80,75,90},{95,75,90,65}};

inti,j;

floataverage,sum=0.0;

printf("三個(gè)學(xué)生的總分和平均成績(jī)依次為:\n");

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

{

sum=0.0;

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

sum=sum+a[i][j];

average=sum/4;

printf("%.2f,2f\n",sum,average);

2、編寫(xiě)一個(gè)函數(shù),從傳人的m個(gè)字符中找出最長(zhǎng)的一個(gè)字符串,并通過(guò)形參指針

max傳回該串地址(用****作為結(jié)束輸入的標(biāo)志)。注意:部分源程序給出如

下。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)

中填人所編寫(xiě)的若干語(yǔ)句。試題程序:

char*proc(char(*a)[81],intnum)

{

)

voidmain()

{

charss[10][81],*max;

intn,i=0;

printf("輸入若干個(gè)字符串:");

gets(ss[i]);

puts(ss[i]);

while(!strcmp(ss[i],"****")==0)

i++;

gets(ssei]);

puts(ss[i]);

)

n二i;

max=proe(ss,n);

printf(n\nmax=%s\nn,max);

)(本題14分)

【答案】char*proc(char(*a)[81],intm)

(

char*max;

inti=0:max=a[0]:for(i=0;i<m;i++)if(strlen(max)<

strlen(a[i]))〃找出最長(zhǎng)的字符串max=a[i];

returnmax;

〃返回最長(zhǎng)字符串的地址

)

3、統(tǒng)計(jì)結(jié)構(gòu)體數(shù)組中性別(sex)為M的變量的個(gè)數(shù)。

要求:

①數(shù)組元素依次賦初值為:{1,"Andy",'M'}、{2,"Mike",'F'

{3,"Rose",'M'}。

②結(jié)構(gòu)體定義如下:structStudent{intnum;charname[30];charsex;

(本題16分)

【答案】#include<stdio.h>

structStudent{

intnum;

charname[30];

charsex;

);

intFun(structStudent*s,intn)

L

intnum=0;

inti;

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

if(s[i].sex=='M')

num++;

intmain()

I

structStudents[3]={

1,"Andy",'M',2,"Mike",'F',3,"Rose",'M'

);

printf(n%dn,Fun(s,3));

return0;

河南中醫(yī)藥大學(xué)計(jì)算機(jī)C語(yǔ)言期末復(fù)習(xí)題(四)

考試方式:【閉卷】考試時(shí)間:【90分鐘】總分:【100分】

一、單項(xiàng)選擇題(共20題,每小題2分,共40分)

1、C源程序中不能表示的數(shù)制是O

A、二進(jìn)制

B、八進(jìn)制

C、十進(jìn)制

D、十六進(jìn)制

【答案】A

2、若已定義x和y為double類(lèi)型,則表達(dá)式x=l;y=(x+3)/2的值是

A、1

B、2

C、2.00000

D、2.50000

【答案】C

【解析】()的優(yōu)先級(jí)較高,先計(jì)算x+3,結(jié)果為4.0,再4.0/2結(jié)果為2.0。

3、switch語(yǔ)句不能用于下列哪種數(shù)據(jù)類(lèi)型()

A、double

B、byte

C、short

D、char

【答案】A

【解析】swish語(yǔ)句中表達(dá)式expression只能返回這幾種類(lèi)型的值:int、

byte>short和char。如果比較的數(shù)據(jù)類(lèi)型是double型,則不能使用switch

結(jié)構(gòu)。

4、下列關(guān)于宏操作的敘述錯(cuò)誤的是o

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

B、while的循環(huán)控制條件比do-while的循環(huán)控制條件更嚴(yán)格

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

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

【答案】A

【解析】VisualFoxPro中,支持兩種類(lèi)型的菜單,分別是條形菜單和彈出式

菜單。菜單系統(tǒng)一般是一個(gè)下拉式菜單,它是由一個(gè)條形菜單和一個(gè)彈出式菜

單所組成的。

5、若有charsi[]="abc",s2[20],*t=s2;gets(t);則下列語(yǔ)句中能夠?qū)崿F(xiàn)當(dāng)字

符串si大于字符串s2時(shí),輸出s2的語(yǔ)句是()。

A、if(strcmp(si,si)>0)puts(s2);

B、if(strcmp(s2,si)>0)puts(s2);

C、if(strcmp(s2,t)>0)puts(s2);

D、if(strcmp(si,t)>0)puts(s2);

【答案】D

6、在c語(yǔ)言中,下面合法的長(zhǎng)整型數(shù)是°

A、0L

B、4962710

C、0.054838743

D、2.1869el0

【答案】A

7、在c語(yǔ)言中,設(shè)有數(shù)組定義:chararray[]="china";則數(shù)組array所占用的

空間為o

A、5個(gè)字節(jié)

B、6個(gè)字節(jié)

C、10個(gè)字節(jié)

D、12個(gè)字節(jié)

【答案】B

【解析】字符數(shù)組是每個(gè)元素存放一個(gè)字符型數(shù)據(jù)的數(shù)組。C語(yǔ)言中約定用\0

作為字符串的結(jié)束標(biāo)志,它占內(nèi)存空間,但不計(jì)入字符串的長(zhǎng)度。對(duì)數(shù)組

array賦初值chararray□="China”,此時(shí)系統(tǒng)自動(dòng)在末尾加入一個(gè)'\

0',此時(shí)數(shù)組array的長(zhǎng)度為6,所占用的空間為6個(gè)字節(jié),即char

array[]="China”等價(jià)于char

array[]={,'h','i','n','a',''0'}。若定義char

array[]={'C','h','i','n','a',},此時(shí)數(shù)組array的長(zhǎng)度為5個(gè)

字節(jié)。

8、c語(yǔ)言的注釋定界符是o

A、{}

B、[]

C、\**\

D、/**/

【答案】D

9、char*s="\t\\name\\address\n";指針s所指字符串的長(zhǎng)度為:。

A、說(shuō)明不合法

B、19

C、18

D、15

【答案】D

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

A、只有元素a[0][0]可得到初值0

B、此說(shuō)明語(yǔ)句不正確

C

溫馨提示

  • 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)論