湖北經(jīng)濟(jì)學(xué)院C語(yǔ)言程序設(shè)計(jì)題庫(kù)(八卷)及答案_第1頁(yè)
湖北經(jīng)濟(jì)學(xué)院C語(yǔ)言程序設(shè)計(jì)題庫(kù)(八卷)及答案_第2頁(yè)
湖北經(jīng)濟(jì)學(xué)院C語(yǔ)言程序設(shè)計(jì)題庫(kù)(八卷)及答案_第3頁(yè)
湖北經(jīng)濟(jì)學(xué)院C語(yǔ)言程序設(shè)計(jì)題庫(kù)(八卷)及答案_第4頁(yè)
湖北經(jīng)濟(jì)學(xué)院C語(yǔ)言程序設(shè)計(jì)題庫(kù)(八卷)及答案_第5頁(yè)
已閱讀5頁(yè),還剩154頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

湖北經(jīng)濟(jì)學(xué)院C語(yǔ)言程序設(shè)計(jì)題庫(kù)(一)

總分:150分考試時(shí)間:120分鐘

注意事項(xiàng):

>題目包括五大部分,單項(xiàng)選擇題,判斷題,填空題,程序分析題,編程題,請(qǐng)按要求在

規(guī)定時(shí)間內(nèi)作答。

>考試中途不能無(wú)端離場(chǎng),否則視為放棄。考試過(guò)程中如遇問(wèn)題請(qǐng)及時(shí)向監(jiān)考老師反饋。

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

L程序必須在有限的步驟、有限的時(shí)間內(nèi)執(zhí)行完畢,指的是算法的()特點(diǎn)

A、確定性

B、有窮性

C、可行性

D、輸入

【答案】B

2、已知year為整型變量,不能使表達(dá)式

(year%4==0&&year%100!=o)||year%400==0的值為"真"的數(shù)據(jù)>_____。

A、1990

B、1992

C、1996

D、2000

【答案】A

3、以下不正確的語(yǔ)句(設(shè)有intp,q)是________

A、p*=3;

B、p/二q;

C、p+=3;

D、p&&=q;

【答案】D

4、設(shè)a、b、c、d、m、n均為int型變量,且a=5、b=6、c=7、d=8、

m=2、n=3則邏輯表達(dá)式(m二a>b)&&(n=c>d)運(yùn)算后,n的值為,

A、0

B、1

C、2

D、3

【答案】D

5、有以下程序:

#include<stdio.h>

main(){

intc;

while((c=getchar())!=#\n')

switch(c-'3'){

case0:casel:putchar(c+4);

case2:putchar(c+4);

break;

case3:putchar(c+3);

case4:putchar(c+3);

break;

)

printf("\n");

)

從第一列開(kāi)始輸入數(shù)據(jù)(<cr>代表f回車(chē)符):3845<cr>,則程序輸出結(jié)果為

A、77889

B、77868

C、776810

D、77886610

【答案】A

【解析】題中while循環(huán)的條件是:當(dāng)從鍵盤(pán)讀入的字符不是‘\N時(shí),執(zhí)行

while循環(huán)。輸入第一個(gè)字符3時(shí):執(zhí)行case0,什么也不輸出;case1,輸

出7;case2,輸出7;遇到break語(yǔ)句,跳出switch語(yǔ)句。輸入第二個(gè)字符

8時(shí):C-'3'=5,不執(zhí)行任何語(yǔ)句。輸入第三個(gè)字符4時(shí):c-'3'=1,執(zhí)

行case1。輸出8;case2,輸出8;遇到break語(yǔ)句,跳出switch語(yǔ)句。輸

入第四個(gè)字符5時(shí):C-'3'=2,執(zhí)行case2,輸出9;遇到break語(yǔ)句,跳

出switch語(yǔ)句。

6、下列選項(xiàng)不屬于函數(shù)的組成部分是?

A、返回值類(lèi)型

B、函數(shù)名

C、參數(shù)列表

D、局部變量

【答案】D

7、有以下程序:

main()

(

chara,b,c,d;

scanf("%c,%G%d,%d",&a,&b,&c,&d);

M

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

若運(yùn)行時(shí)從鍵盤(pán)上輸入65,65,66<回車(chē)>,則輸出結(jié)果是。

A、6,5,A,B

B、6,5,65,66

C、656,5

D、656,6

【答案】A

【解析】char型數(shù)據(jù)類(lèi)型以%d的形式輸入時(shí),輸入的是ASCH值。65是字符

A的ASCII碼值,66是字符B的ASCII值。

8、下面程序的輸出結(jié)果是____o

main()

inta[3][4]={l,3,5,7,9,11,13,15,17,19,21,23);

int(*p)[4]=aJjzk=0;

for(i=0;i<3;i++)for(j=0;j<2;j++)k=p[i][j];

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

)

A、17

B、18

C、19

D、23

【答案】C

【解析】p是指向長(zhǎng)度為4的一維數(shù)組的指針變量,可看作是二維數(shù)組a的行

指針,可以像使用數(shù)組名一樣通過(guò)p帶數(shù)組下標(biāo)的形式來(lái)引用數(shù)組中元素,變

量k最后是元素的值。

9、若要求在if后一對(duì)圓括號(hào)中表示a不等于0的關(guān)系,則能正確表示這一關(guān)系

的表達(dá)式為

A、a<>0

B、a

C、!a

D、a=0

【答案】B

10、以下正確的字符串常量是______O

A、"\\\"

Bs'abc'

C、OlympicGames

D

【答案】D

IL以下敘述中正確的是______o

A、一條語(yǔ)句只能定義一個(gè)數(shù)組

B、每個(gè)數(shù)組包含一組具有同一類(lèi)型的變量,這些變量在內(nèi)存中占有連續(xù)的

存儲(chǔ)單元

C、數(shù)組說(shuō)明符的一對(duì)方括號(hào)中只能使用整型常量,而不能使用表達(dá)式

D、在引用數(shù)組元素時(shí),下標(biāo)表達(dá)式可以使用浮點(diǎn)數(shù)

【答案】B

【解析】A選項(xiàng)中,一條語(yǔ)句只能定義一個(gè)數(shù)組是不準(zhǔn)確的,可以通過(guò)一條語(yǔ)句

定義多個(gè)數(shù)組;C選項(xiàng)中,數(shù)組說(shuō)明符的一對(duì)方括號(hào)中可以是整型常量,可以是整

型常量表達(dá)式;D選項(xiàng)中,在引用數(shù)組元素時(shí),下標(biāo)表達(dá)式必須是整型的。因此B

選項(xiàng)正確。

12、有以下函數(shù)

intfun(char*s){

char*t=s;

while(*t++);

return(t-s)

)

該函數(shù)的功能是_____。

A、比較兩個(gè)字符串的大小

B、計(jì)算s所指字符串占用內(nèi)存字節(jié)個(gè)數(shù)

C、計(jì)算s所指字符串的長(zhǎng)度

D、將s所指字符串復(fù)制到字符串t中

【答案】C

13、a,b均為整數(shù),且b!=0,則表達(dá)式a/b*b+a%b的值是______。

A、a

B、b

C、a被b除的整數(shù)部分

D、a被b除的商的整數(shù)部分

【答案】A

14、以下敘述不正確的是______。

A、一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成

B、一個(gè)C源程序必須包含一個(gè)main函數(shù)

C、C程序的基本組成單位是函數(shù)

D、在C程序中,注釋說(shuō)明只能位于一條語(yǔ)句的后面

【答案】D

【解析】本題考杳C語(yǔ)言的基本基礎(chǔ)知識(shí)。在C程序中,注釋用符號(hào)7*〃開(kāi)

始,而以符號(hào)"*/"結(jié)束。程序的注釋可以放在程序的任何位置。通常將注釋

放在程序的開(kāi)始,以說(shuō)明本程序的功能;或者放在程序的某個(gè)語(yǔ)句后面,以對(duì)

此語(yǔ)句的功能進(jìn)行說(shuō)明。無(wú)論將注釋放有何處,在程序進(jìn)行編譯時(shí),編譯程序

不會(huì)處理注釋的內(nèi)容,且注釋內(nèi)容也不會(huì)出現(xiàn)在目標(biāo)程序中。

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

#include<stdio.h>

voidmain()

(

inta[]={5,4,3,2,

longs=0;

for(i=0;i<5;i++)s=s*10+a[i];

R

printf(s=%ld\n"/s);

)

A、s=12345

B、s=54321

C、s=54321

D、以上都不對(duì)

【答案】C

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

main()

(

intcl=2,c2=0;

while(!c2-)printf("%d%d",cl-/c2);

)

A、陷入死循環(huán)

B、不輸出任何內(nèi)容

C、輸出2-1

D、輸出20

【答案】C

17、設(shè)有如下定義

structss

(

charname[10];

intage;

charsex;

}std[3],*p=std;

下面各輸入語(yǔ)句中錯(cuò)誤的是______o

A、scanf("%d",&(*p).age);

B、scanf(H%s\&);

C、sean("%c",&std[0].sex);

D、scanf("%c",&(p->sex));

【答案】B

【解析】本題考核的知識(shí)點(diǎn)是結(jié)構(gòu)型數(shù)組的應(yīng)用。選項(xiàng)A中"&(*p).age〃代

表的是std[0]age的地址,是正確的,選項(xiàng)C也是正確的,選項(xiàng)D先用指針變

量引用結(jié)構(gòu)型的成員sex,然后取它的地址,也是正確的,選項(xiàng)B中的

"”是錯(cuò)誤的引用,因?yàn)閟td是數(shù)組名,代表的是數(shù)組的首地址,地

址沒(méi)有成員"name"。所以B選項(xiàng)為所選。

18、若下列語(yǔ)句組,則輸出結(jié)果是

intx=0;

if(x++<0)printf("%d",—x);

printf("%d\x++);

A、-1

B、1

C、-1-1

D、-10

【答案】B

19、有如下定義語(yǔ)句:inta[]={123,4,5},則對(duì)語(yǔ)句int*p=a;正確的描述是

A、語(yǔ)句int*p=a;定義不正確

B、語(yǔ)句int*p=a;初始化變量p,使其指向數(shù)組對(duì)象a的第一個(gè)元素

C、語(yǔ)句int*p=a;是據(jù)a[0]的值賦給變量p

D、語(yǔ)句int*p=a;是把a(bǔ)[l]的值賦給變量p

【答案】B

20、有以下程序

#include<studio.h>

#include<string.h>

structa

inta;

charb[10];

doublec;

);

voidf(structat);

main()

structaa={1001,"zhangda",1098.0};

f(a);

pringt("%d,%s,%6.1f\n",a.aza.b,a.c);

)

voidf(structat)

t.a=1002;

strcpy(t.b,"changrong");

t.c=1202.0;

)

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

A、1001,ZhangDa,1098.0

B、1002,ChangRong,1202.0

C、1001,ChangRong,1098.0

D、1002,ZhangDa,1202.0

【答案】A

二、判斷題(每小題2分,共20分)

()L函數(shù)調(diào)用時(shí),如果把數(shù)組名作實(shí)參,則形參數(shù)組元素的值發(fā)生變化時(shí),實(shí)參數(shù)組元素

的值同時(shí)發(fā)生變化。

【答案】正確

()2、字符數(shù)組定義后,不能用賦值語(yǔ)句將一字符串常量或字符數(shù)組直接賦給一個(gè)字符

數(shù)組。

【答案】正確

()3、putchar函數(shù)可以向終端輸出一個(gè)字符串

【答案】錯(cuò)誤

()4、內(nèi)層break語(yǔ)句可以終止嵌套的switch,使最外層的switch結(jié)束。

【答案】錯(cuò)誤

()5、函數(shù)strcmp從頭至尾頻序地將其對(duì)應(yīng)字符比較,遇到兩個(gè)字符不等時(shí),兩個(gè)字

符相減得到一個(gè)int型值,兩個(gè)字符串完全相同時(shí),則返回0。

【答案】正確

()6、用strcat(字符串L字符串2)連接兩個(gè)字符串函數(shù)時(shí),字符串1的存儲(chǔ)空間沒(méi)有限

制。

【答案】錯(cuò)誤

()7、在c語(yǔ)言中,引用數(shù)組元素時(shí),數(shù)組下標(biāo)的數(shù)據(jù)類(lèi)型只能是整型常量。()

【答案】錯(cuò)誤

()8、c程序是由函數(shù)構(gòu)成的,其中有且只有一個(gè)主函數(shù)main().

【答案】正確

()9、對(duì)于一個(gè)具體的函數(shù)來(lái)說(shuō),實(shí)參與形參不必一對(duì)應(yīng)。

【答案】錯(cuò)誤

()10、在同一源文件中,使用extern可將全局變量的作用域向上擴(kuò)展。

【答案】正確

三.填空題(每小題4分,共20分)

1、在c語(yǔ)言中,'\ri表示。

【答案】回車(chē)換行#換行

2、若變量a,b已定義為int類(lèi)型并賦值21和55,要求用printf函數(shù)以

a=21,b=55的形式輸出請(qǐng)寫(xiě)出完整的的輸出語(yǔ)句

【答案】「printf(匕=%d,b=%d”,a,b);']

3、下面程序段中循環(huán)體的執(zhí)行次數(shù)是_______

a=10;

b=0;

do

(

b+=2;

a-=2+b;

)

while(a>=0);

【答案】3次

4、局部變量的作用域是從定義的位置起,到____結(jié)束止。

【答案】函數(shù)

5、有函數(shù)調(diào)用funl(x+y,(y,z),10,fun((x,y-l)));

函數(shù)funl有【1】個(gè)參數(shù)。

【答案】4

四.程序分析題(每小題5分,共20分)

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

main()

inta[5][5]fij/n=l;

for(i=0;i<5;i++)for(j=0;j<5;j++)a[i][j]=n++;

printf("theresultis:\n");

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

for(j=0;j<=i;j++)printf("%4d"/a[i][j]);

printf("\n");

)

)

【答案】167111213161718192122232425

2、#include<stdio.h>

voidmain()

(

inta[3][3]={{lf2}/{3/4},{5,6}}JJ/s=0;

for(i=l;i<3;i++)for(j=O;j<i;j++)s+=a[i][j];

printf(H%d\n,s);

)

【答案】14

【解析】該程序即計(jì)算a[即[0]+a[2][0]+a[2][l]的值,對(duì)應(yīng)數(shù)組中的數(shù)為:

3+5+6=14。

3、有以下程序

#include<stdio.h>

main()

intm,n;

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

while(m!=n)

(

while(m>n)m=m-n;

while(m<n)n=n-m;

)

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

)

程序運(yùn)行后,當(dāng)輸入1463〈回車(chē)>時(shí),輸出結(jié)果是______o

【答案】7

4、以下程序中,select函數(shù)的功能是:在N行M列的二維數(shù)組中,選出一個(gè)最大

值作為函數(shù)值返回,并通過(guò)形參傳回此最大值所在的行下標(biāo)。請(qǐng)?zhí)羁铡?/p>

#defineN3

#defineM3select(inta[N][M],int*n)

(

inti,j,row=l,colum=l;

for(i=0;i<N;i++)for(j=0;j<M;j++)if(a[i][j]>a[row][colum])

row=i;

colum=j;

*n=;

return;

)

main()

(

inta[N][M]={9/ll/23/6,l,15,9/17/20)/max/n;

max=select(a,&n);

,

printf("max=%d/line=%d\n',max,n);

)

【答案】[Tow','a[row][colum]']

五、編程題(每小題分,共50分)

1、輸入n的值,計(jì)算并輸出l*l+2*2+3*3+4*4+5*5+...+n*n的值。要求編

寫(xiě)函數(shù)f求平方。(本題12分)

【答案】#include

voidmain()

(

intf(intx);

intn,sum;

printf("

請(qǐng)輸n值:)

scanf("%d",&n);

sum=f(n);

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

)

intf(intx)

(

intj,z=O;

for(j=l;j<=x;j++)

z=z+j*j;

returnz;

)

2、編寫(xiě)程序:鍵盤(pán)輸入一個(gè)八進(jìn)制數(shù)字,用程序轉(zhuǎn)換為十進(jìn)制(本題18

分)

【答案】#include<stdio.h>

#include<stdlib.h>

intmain()

(

intn=0,i=0;

chars[20];

prints請(qǐng)輸入一個(gè)8進(jìn)制數(shù):\n)

gets(s);

while(s[i]!='\O'){

n=n*8+s[i]-'O';

i++;

)

printf("剛輸入的8進(jìn)制數(shù)轉(zhuǎn)化為十進(jìn)制為\n%d\n”,n);

return0;

)

3、編寫(xiě)程序:利用結(jié)構(gòu)體類(lèi)型,編程計(jì)算一名同學(xué)5門(mén)課的平均分。(本題

20分)

【答案】structstudent{

charname[30];

floatscore[5];

);

intmain(intargc,constchar*argv[])

(

structstudenta={"zhangsan",20,30,40,50,60);

floatsum=0;〃定義一個(gè)5科分?jǐn)?shù)之和變量

floatAverageScore=0;〃定義一個(gè)平均分變量

for(inti=0;i<5;i++){

sum=sum+a.score[i];

AverageScore=sum/5;

)

n姓名科成績(jī)平均分是:

printf(%s\n5%.lf^",AverageScore);

return0;

)

湖北經(jīng)濟(jì)學(xué)院C語(yǔ)言程序設(shè)計(jì)題庫(kù)(二)

總分:150分考試時(shí)間:120分鐘

注意事項(xiàng):

>題目包括五大部分,單項(xiàng)選擇題,判斷題,填空題,程序分析題,編程題,請(qǐng)按要求在

規(guī)定時(shí)間內(nèi)作答。

>考試中途不能無(wú)端離場(chǎng),否則視為放棄??荚囘^(guò)程中如遇問(wèn)題請(qǐng)及時(shí)向監(jiān)考老師反饋。

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

L下列關(guān)于指針運(yùn)算的描述中,錯(cuò)誤的是_______

A、在一定條件下,兩個(gè)指針可以相加

B、在一定條件下,兩個(gè)指針可以進(jìn)行邏輯判斷

C、在一定條件下,指針可以為空值

D、在一定條件下,兩個(gè)指針可以相互賦值

【答案】A

【解析】本題考核指針的賦值和運(yùn)算。在C語(yǔ)言中,指針可以進(jìn)行賦值運(yùn)算、

算術(shù)運(yùn)算、比較運(yùn)算(邏輯判斷)。但是在任何條件下,兩個(gè)指針都不能允許相

加。因?yàn)榈刂废嗉雍罂赡軙?huì)對(duì)內(nèi)存進(jìn)行不合法的訪問(wèn)。所以選項(xiàng)A的描述是錯(cuò)

誤的。

2、以下選項(xiàng)中,合法的一組c語(yǔ)言數(shù)值常量是______。

A、028

.5e-3

-Oxf

B、12.

OXa23

4.5eO

C、.177

4cl.5

Oabc

D、0x8A

10,000

3.e5

【答案】B

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

A、0160x8f018

B、Oabc017Oxa

C、010-0x110x16

D、0al27ff-123

【答案】D

【解析】八進(jìn)制中,不可能包括8以上的數(shù)字,它的范圍只在0~7之間,以0

開(kāi)頭。同樣,十六進(jìn)制是以O(shè)x開(kāi)頭,數(shù)字在0~9和A~F之間。

4、在c的if語(yǔ)句中,可用作條件的表達(dá)式是_______。

A、關(guān)系表達(dá)式

B、邏輯表達(dá)式

C、算術(shù)表達(dá)式

D、任意表達(dá)式

【答案】D

5、若變量已正確定義,有以下程序段

inti=0;

do

printf("%d,",i);

while(i++);

printf(M%d"J)其輸出結(jié)果是_______

A、0,0

B、0,I

C.1.1

D、程序進(jìn)入無(wú)限循環(huán)

【答案】B

6、下列關(guān)于指針變量的描述,不正確的是_______

A、在沒(méi)有對(duì)指針變量賦值時(shí),指針變量的值是不確定的

B、同類(lèi)指針類(lèi)型可以進(jìn)行相減操作

C、在使用沒(méi)有賦值的指針變量時(shí),不會(huì)出現(xiàn)任何問(wèn)題

D、可以通過(guò)指針變量來(lái)取得它指向的變量值

【答案】C

【解析】沒(méi)有賦值的指針變量,可能指向任何地方,如果指向系統(tǒng),那么使用

該指針可能導(dǎo)致系統(tǒng)崩潰。

7、若變量已正確定義為int型,要給a、b、c輸人數(shù)據(jù),正確的輸入語(yǔ)句是

A、read(a,b,c);

B、scanf(n%d%d%d",a,b,c);

C、scanf("%D%D%D",&a,%b,%c);

D、scanf("%d%d%d「&a,&b,&c);

【答案】D

8、若定義staticinta[2][2]={l,2z3,4},則a數(shù)組的各數(shù)組元素分別為,

A、a[O][O]=l.a[0][l]=2xat[l][0]=3,a[l][l]=4

B、a[O][O]=l.a[0][l]=3.a[l][0]=2.a[l][l]=4

C、a[0][0]=4xa[0][l]=3xa[l][0]=2.s[l][l]=l

D、a[0][0]=4.a[0][l]=2.a[l][0]=3.a[l][l]=l

【答案】A

9、為了要計(jì)算s=10!(10的階乘),則以下對(duì)s的定義正確的是_______標(biāo)識(shí)

符由字母,數(shù)字和下劃線組成且第一個(gè)字符必須為字母或下劃線auto自動(dòng)變量

register寄存器變量extern外部變量static靜態(tài)變量

A、ints

B、unsigneds

C、shorts

D、longs

【答案】D

10、判斷字符串a(chǎn)和b是否相等,應(yīng)當(dāng)使用。

A、if(a==b)

B、if(a=b)

Cxif(strcmp(a,b))

Dxif(strcmp(a,b)==O)

【答案】D

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

main()

(

inta[6]J;

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

(

a[i]=4*(i-2*(i>3)}%5;

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

)

)

A、2323

B、1212

C、3232

D、2222

【答案】C

【解析】本題程序的功能是對(duì)數(shù)組元素賦值,難點(diǎn)是對(duì)表達(dá)式4*(i-2*(i>

3))%5的分析。

有以下函數(shù)

12xintfun(char*s)

char*t=s;

while(*t++);

return(t-s);

)

該函數(shù)的功能是______o

A、匕檄兩個(gè)字符串的大小

B、計(jì)算S所指字符串占用內(nèi)存字節(jié)的個(gè)數(shù)

C、計(jì)算S所指字符串的長(zhǎng)度

D、將S所指字符串復(fù)制到字符串t中

【答案】B

【解析】循環(huán)語(yǔ)句while(*t++);執(zhí)行完時(shí),指針變量t就指向了字符串結(jié)束符

'\0'之后的位置,所以語(yǔ)句return(t-s);返回的就是字符串s所用內(nèi)存的字

節(jié)個(gè)數(shù)。

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

A、for(表達(dá)式1;0;表達(dá)式3)

B、for(表達(dá)式1;1;表達(dá)式3)

C、for(表達(dá)式表達(dá)式3)

D、缺少一個(gè)表達(dá)式

【答案】B

14、以下關(guān)于字符串的敘述中正確的是

A、c語(yǔ)言中有字符串類(lèi)型的常量和變量

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

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

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

【答案】D

15、有以下程序:

main()

{

ints,t,a=10;

doubleb=6;

s=sizeof(a);

t=sizeof(b);

printf("%d,%d\rT,s,t);

)

在vc6平臺(tái)上編譯運(yùn)行,程序運(yùn)行后的輸出結(jié)果是______o

A、2,4

B、1,4

C、4,8

D、10,6

【答案】C

16、以下敘述中錯(cuò)誤的是______。

A、C語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言

B、結(jié)構(gòu)化程序由順序、分支、循環(huán)三種基本結(jié)構(gòu)組成

C、使用三種基本結(jié)構(gòu)構(gòu)成的程序只能解決簡(jiǎn)單問(wèn)題

D、結(jié)構(gòu)化程序設(shè)計(jì)提倡模塊化的設(shè)計(jì)方法

【答案】C

【解析】本題考查的知識(shí)點(diǎn)是:結(jié)構(gòu)化程序設(shè)計(jì)。結(jié)構(gòu)化程序由3種基本結(jié)構(gòu)

組成:順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。已經(jīng)得到證明,由3種基本結(jié)構(gòu)組成

的算法結(jié)構(gòu)可以解決任何復(fù)雜的問(wèn)題。故本題中選項(xiàng)。是錯(cuò)誤的。

17、下列描述說(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

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

main()

{

chara[10]={9,8,7,6,5,43,2,1,0}/p=a+5;

printf("%d"/*-p);

)

A、非法

B、a[4]的地址

c、5

D、3

【答案】C

19、以下能正確定義一維數(shù)組的選項(xiàng)是

A.inta[5]={

0.1,2.3.4,5);

B、chara[]={

0,1,2,3,4,5);

C、chara={,A,,B,C);

D、inta[5]=w0123”;

【答案】B

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

structtest

(

intml;

charm2;

floatm3;

unionuu

(

charul[5];

intu2[2];

)

ua;

)

myaa;

則sizeof(structtest)的值是

A、12

B、16

C、14

D、9

【答案】A

二.判斷題(每小題2分,共20分)

()1、C語(yǔ)言程序中,出現(xiàn)非法字符時(shí)會(huì)發(fā)出錯(cuò)誤信息。

【答案】正確

()2、關(guān)系表達(dá)式的值只能為1和0

【答案】正確

()3、數(shù)組名是一個(gè)指針,它可以指向數(shù)組中的任何元素。()

【答案】錯(cuò)誤

()4、若有intk=1;

while(k=l)k++;

則while循環(huán)執(zhí)行的次數(shù)是1次

【答案】錯(cuò)誤

()5、c語(yǔ)言中,字符串常量存放在字符數(shù)組中要有一個(gè)結(jié)束符,該結(jié)束符是0。

【答案】錯(cuò)誤

()6、數(shù)組名作為函數(shù)參數(shù),傳送的是地址.

【答案】正確

()7、若有定義一維數(shù)組inta[4]的首地址為0078h廁a[l]元素的首地址是

0079h(設(shè)int型數(shù)據(jù)占兩個(gè)字節(jié))。

【答案】錯(cuò)誤

()8、在標(biāo)準(zhǔn)c中,變量定義一定要出現(xiàn)在函數(shù)開(kāi)始部分

【答案】錯(cuò)誤

()9、c語(yǔ)言中簡(jiǎn)單變量作為實(shí)參時(shí),它和對(duì)應(yīng)的形參之間的數(shù)據(jù)傳遞方式是單向值傳

遞。

【答案】正確

()10、fseek函數(shù)一般用于文本文件。

【答案】錯(cuò)誤

三、填空題(每小題4分,共20分)

1、以下程序?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;

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

c=aonal=a2;

a2=a3;a3=...an-l=an;an=alo

2、在c語(yǔ)言中,用轉(zhuǎn)義字符\t表示答題提示:雙引號(hào)/單引號(hào)/反斜

線/橫向跳格/回車(chē)換行

【答案】橫向跳格

3、在循環(huán)的過(guò)程中,有時(shí)要提前中止循環(huán),通常采用()語(yǔ)句。

【答案】break

4、已知charstr□="student,,則strlen(str)的值為o

【答案】7

5、在c語(yǔ)言中,如果采用printf函數(shù)將整個(gè)字符串一次輸出,那么對(duì)應(yīng)的格式控

制符為"\

【答案】%s

四.程序分析題(每小題5分,共20分)

L輸入一個(gè)字符,如果它是大寫(xiě)字母很駐巴它變成小寫(xiě)字母,如果它是一個(gè)小寫(xiě)字

母,則把它變成大寫(xiě)字母,其它字符不變。請(qǐng)分析程序填空。

main()

charch;

scanf("%c",&ch);

if(LU1)ch=ch+32;

elseif(ch>='a'&&ch<='z')[2]

printf(n%c",ch);

【答案】【1】ch>='a'&&ch<='z,[2]ch=ch-32

2、有以下程序

#include<stdio.h>

main()

(

chara[20]="howareyou?",b[20];

scanf("%s",b);

printf("%s%s\n",a/b);

)

程序運(yùn)行時(shí)從鍵盤(pán)輸入:howareyou?〈回車(chē)〉則輸出結(jié)果為

【答案】['howareyouhow']

3、以下函數(shù)fun的功能是返回str所指字符串中以形參c中字符開(kāi)頭的后續(xù)字

符串的首地址,例如:str所指字符串為:hell。!,c中的字符為e,則函數(shù)返回字符

串:ello!的首地址。若str所指字符串為空串或不包含c中的字符,則函數(shù)返回

nullo請(qǐng)?zhí)羁铡har*fun(char*str,charc)

intn=0;

char*p=str;

if(p!=null)while(p[n]!=c&&p[n]!=>\O')n++;

if(p[n]==f\0*)returnnull;

return();

)

【答案】「p+n']

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

#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(wsum=%d",sum);

)

【答案】sum=19

五.編程題(每小題分,共50分)

1、打印出所有的“水仙花數(shù)",所謂"水仙花數(shù)”是指一個(gè)三位數(shù),其各位數(shù)

字立方和等于該數(shù)本身。例如:153是一個(gè)"水仙花數(shù)",因?yàn)?53二1的三次

方+5的三次方+3的三次方,(本題12分)

【答案】程序分析:利用for循環(huán)控制100-999個(gè)數(shù),每例分解出個(gè)位,十

位,百位。

程序源代碼:

main()

(

inti,j,k,n;

printf("'waterflower'numberis:");

for(n=100;n<1000;n++)

(

i=n/100;/*分解出百位*/

j=n/10%10;/*分解出十位*/

k=n%10;/*分解出個(gè)位*/

if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)

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

)

)

printf(n\n");

2、求1+2+3+........+100。(本題18分)

【答案】#include<stdio.h>

voidmain()

(

intizsum=0;

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

sum=sum+i;

printf("%d",sum);

)

3、給定N個(gè)職員的信息,包括姓名、基本工資、浮動(dòng)工資和支出,要求編寫(xiě)

程序順序輸出每位職員的姓名和實(shí)發(fā)工資(實(shí)發(fā)工資=基本工資+浮動(dòng)工資一支

出I

輸入格式:

輸入在一行中給出正整數(shù)N。隨后N行,每行給出一位職員的信息,格式為

“姓名基本工資浮動(dòng)工資支出",中間以空格分隔。其中"姓名"為長(zhǎng)度小

于10的不包含空白字符的非空字符串,其他輸入、輸出保證在單精度范圍

內(nèi)。

輸出格式:

按照輸入順序,每行輸出一位職員的姓名和實(shí)發(fā)工資,間隔一個(gè)空格,工資保

留2位小數(shù)。

輸入樣例:

3

zhao24040075

qian36012050

zhou56015080

輸出樣例:

zhao565.00

qian430.00

zhou630.00(本題20分)

【答案】#include<stdio.h>

structmessage

chara[9];

doublebasic;

doublefu;

doubleoutput;

};

structmessaged[100];

intmain()

(

intN;

doublef[100];

scanf("%d",&N);

for(inti=0;i<N;i++)

(

scanf("%s%lf%lf%lf",d[i].a,&d[i].basic/&d[i].fu/&d[i].output);

f[i]=d[i].basic+d[i].fu-d[i].output;

)

for(inti=0;i<N;i++)

(

printf("%s%.2f\n",d[i].aff[i]);

)

return0;

)

湖北經(jīng)濟(jì)學(xué)院C語(yǔ)言程序設(shè)計(jì)題庫(kù)(三)

總分:150分考試時(shí)間:120分鐘

注意事項(xiàng):

>題目包括五大部分,單項(xiàng)選擇題,判斷題,填空題,程序分析題,編程題,請(qǐng)按要求在

規(guī)定時(shí)間內(nèi)作答。

>考試中途不能無(wú)端離場(chǎng),否則視為放棄??荚囘^(guò)程中如遇問(wèn)題請(qǐng)及時(shí)向監(jiān)考老師反饋。

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

L在下列給出的表達(dá)式中,與while(e)中的(e)不等價(jià)的表達(dá)式是_______

A、(!E==0)

B.(E>0||E<0)

C(E==0)

D.(E!=0)

【答案】B

2、閱讀以下程序廁執(zhí)行下面語(yǔ)句后m的值是_______

intw=l,x=2,y=3,z=4,m;

m=w<x?w:x;

m=m<y?m:y;

m=m<z?m:z;

A、1

B、2

C、3

D、4

【答案】A

3、下列選項(xiàng)不是c關(guān)鍵字的是______。

A、typedef

B、void

C、bool

D、inc

【答案】D

4、設(shè)變量x和y均已正確定義并賦值。以下if語(yǔ)句中,在編譯時(shí)將產(chǎn)生錯(cuò)誤信

息的6______O

A、if(x++);

B、if(x>y&&y!=O);

C、if(x>0)x-elsey++;

D、if(y<0){;}elsex++;

【答案】C

【解析】c語(yǔ)言規(guī)定,在"if(表達(dá)式)語(yǔ)句l;else語(yǔ)句2這種形式的if語(yǔ)句

中,在每一個(gè)else前面有一個(gè)分號(hào),整個(gè)語(yǔ)句結(jié)束處有一分號(hào)。在本題的C)

選項(xiàng)中,else前面少了一個(gè)分號(hào),這樣程序在編譯時(shí),會(huì)出現(xiàn)語(yǔ)法錯(cuò)誤。

5、以下程序中,while循環(huán)的循環(huán)次數(shù)是_____。

main()

(

inti=0;

while(i<10)

if(i<1)continue;

if(i==5)break;

i++;

)

)

A、1

B、10

C、6

D、死循環(huán)

【答案】D

6、下列選項(xiàng)中,能夠正確定義數(shù)組的語(yǔ)句是________

A、intnum[0..2008];

B、intnum[];

C.intN=2008;

D、#defineN2008

intnum[N];intnum[N]

【答案】D

7、設(shè)intx=10,a=0,b=25;條件表達(dá)式x<l?a+10:b的值是

A、0

B、1

C、10

D、25

【答案】D

8、已知:inta[2][3];則對(duì)數(shù)組元素的非法引用是_______

A.*(a[0]+2)

B、.a[l]⑶

C、a[l][0]

D、*(*(a+l)+2)

【答案】B

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

A、answer

B、to

C、signed

D、_if

【答案】C

10、字符串指針變量中存入的是_______

A、字符串

B、字符串的首地址

C、第一字符

D、字符串變量

【答案】B

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

A、charc[]=,goodmorning,;

B、chare[20]="goodmorning":

、,

Ccharc[]=('a/'b'/'c'/d');

D、charc[]={nffgoodmorning");

【答案】A

12、每個(gè)c程序中都必須有且僅有一個(gè)

A、類(lèi)

B、預(yù)處理命令

C、主函數(shù)

D、語(yǔ)句

【答案】C

【解析】每個(gè)c程序中都要有且僅有一個(gè)主函數(shù),該函數(shù)是程序的入口,而語(yǔ)

句、預(yù)處理命令和函數(shù)及類(lèi)在程序中都可以有多個(gè)。

13、在16位編譯器環(huán)境下,double類(lèi)型占多少字節(jié)?

A、2

B、4

C、1

D、8

【答案】D

【解析】在16位編譯器環(huán)境下,double類(lèi)型占8個(gè)字節(jié)。

14、下面程序段輸出兩個(gè)字符串中對(duì)應(yīng)相等的字符。請(qǐng)分析程序填空。

charx[]="programming";

chary[]="fortran";

inti=0;

while(x[i]!='\0,&&y[i]!=,\0)

if(x[i]==y[i])printf("%c\

elsei++;

A、x[i++]

B、y[++i]

C、x[i]

D、y[i]

【答案】A

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

main()

(

charc='z';

printf("%c",c-25);

)

A、a

B、z

C、z-25

D、y

【答案】A

16、有以下程序:

main()

(

inti,j;

for(j=10;j<ll;j++)

(

for(i=9;i<j;i++)if(!(j%i))break;

if(i==j-l)printf(H%d"j);

)

)

輸出結(jié)果是_______o

A、11

B、10

C、9

D、1011

【答案】B

17、下列關(guān)于共用體類(lèi)型變量的描述中,正確的是______

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

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

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

D、共用體類(lèi)型定義中,不能出現(xiàn)結(jié)構(gòu)體類(lèi)型的成員

【答案】C

18、以下程序E殳運(yùn)行后的結(jié)果是_______

intx=lzy=2,z=3;

y+=x+=z;

printf("%d",x<y?x++:y++);

A、6

B、5

C、4

D、3

【答案】C

【解析】請(qǐng)仔細(xì)閱讀交規(guī)難度:簡(jiǎn)單

19、以下敘述中正確的是_____

A、每個(gè)數(shù)組包含一組具有同一類(lèi)型的變量,這些變量在內(nèi)存中占有連續(xù)的

存儲(chǔ)單元

B、一條語(yǔ)句只能定義一個(gè)數(shù)組

C、數(shù)組說(shuō)明符的一對(duì)方括號(hào)中只能使用整型常量,而不能使用表達(dá)式

D、在引用數(shù)組元素時(shí),下標(biāo)表達(dá)式可以使用浮點(diǎn)數(shù)

【答案】A

【解析】數(shù)組的元素是同一類(lèi)型,占用連續(xù)空間,所以選擇A。

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

structst

inta;

floatb;

}d;

int*p;

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

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)該將地址值賦給po

二.判斷題(每小題2分,共20分)

()1、在標(biāo)準(zhǔn)C語(yǔ)言中,共用體變量中的各成員是共同占用一塊存儲(chǔ)空間

【答案】正確

()2、c語(yǔ)言中整型、實(shí)型和字符型都屬于基本數(shù)據(jù)類(lèi)型。

【答案】正確

()3、c語(yǔ)言約定、0'計(jì)入字符串的長(zhǎng)度。

【答案】錯(cuò)誤

()4、循環(huán)體如包括有一個(gè)以上的語(yǔ)句,則必須用{}括起來(lái),組成復(fù)合語(yǔ)句。

【答案】正確

()5、在c語(yǔ)言中,字符數(shù)組可以存放字符串。()

【答案】正確

()6、使用strcpy(字符數(shù)組,字符串)函數(shù)時(shí),字符數(shù)組長(zhǎng)度沒(méi)有限制。

【答案】錯(cuò)誤

()7、對(duì)字符數(shù)組元素進(jìn)行引用時(shí),可以一次引用整個(gè)數(shù)組。

【答案】錯(cuò)誤

()8、在c程序中,函數(shù)既可以嵌套定義,也可以嵌套調(diào)用。()

【答案】錯(cuò)誤

()9、在c程序中,不同函數(shù)中所定義的變量允許同名

【答案】正確

()10、要使用標(biāo)準(zhǔn)輸入、輸出函數(shù),正常情況下應(yīng)該在文件的開(kāi)頭加上以下內(nèi)容:

#include<stdio.h>

#include"stdio.h"o

【答案】正確

三、填空題(每小題4分,共20分)

LC語(yǔ)言中,關(guān)系表達(dá)式和邏輯表達(dá)式的值是1//0

【答案】

2、若inta=3,b=2,c=l,f;表達(dá)式f=a>b>c的值是___

【答案】0

3、下列程序段的運(yùn)行結(jié)果是一。

main()

(

intn,s=0;

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

(

if(n%3==0)continue;

s=s+n;

)

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

)

【答案】12

4、函數(shù)strlen(“1234\0xy”)的值為:

【答案】9

5、C語(yǔ)言替換字符的函數(shù)是什么?

【答案】strcpy(a,b);

四.程序分析題(每小題5分,共20分)

1、輸入一個(gè)3*3的實(shí)數(shù)矩陣求主對(duì)角線元素中的最大值。

main()

(

floats[3][3],maxl,max2/x;

inti,j;

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

(

scanf("%f",&x);

s[i][j]=x;

)

max=s[0][0];

for(i=l;i<3;i++)if(max<)max=;

printf("maxl=%f\n'max);

)

【答案】

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

#defineadd(x,y)x+y

main()

inta,b,s;

A=5,b=6;

S=add(a,b);

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

)

【答案】s=ll

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

inti=O;

main()

(

inti=5;

reset(i/2);

printf("i=%d\n\i);

reset(i=i/2);

printf("i=%d\n",i);

reset(i/2);

printf("i=%d\n"J);

workover(i);

printf(ni=%d\nH,i);

}

workover(inti)

(

i=(i%i)*((i*i)/(2*i)+4);

printf("i=%d\n",i);

returni;

)

reset(inti)

(

i=i<=2?5:0;

returni;

)

【答案】j=5i=2i=2i=0i=2

4、以下程序運(yùn)行的結(jié)果為()

#include<stdio.h>

voidfunl(int*ajnt*b)

(

int*c;

c=a;

a=b;

b=c;

)

voidfun2(int*ajnt*b)

(

intc;

c=*a;

*a=*b;

*b=c;

)

voidmain()

(

intx=3,y=5,*p=&x,*q=&y;

funl(pzq);

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

fun2(p,q);

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

)

【答案】3,5,5,3

五.編程題(每小題分,共50分)

1、編寫(xiě)程序:編程序?qū)崿F(xiàn)求1-10之間的所有數(shù)的乘積并輸出(本題12分)

【答案】#include<stdio.h>

voidmain()

{inti;

longsum=l;

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

sum=sum*i;

printf("thesumofoddis:%ldM,sum);

)

2、編寫(xiě)程序:計(jì)算sum=l?l/3+l/5?l/7+…+1/19(本題18分)

【答案】#include<stdio.h>

main()

(

inti;

floatsum=0,k=-l;

for(i=l;i<=19;i=i+2)

(

sum=sum+1.0/i*k;

k=-k;

)

printf("%f"fsum);

getch();

)

3、編寫(xiě)input。和output。函數(shù),輸入輸出5個(gè)學(xué)生記錄,每個(gè)記錄包括

num、name、score[3],使用結(jié)構(gòu)體實(shí)現(xiàn)。(本題20分)

【答案】#include<stdio.h>

structstudent{

intnum;

charname[20];

intscore[3];

}stu[5];

voidinput(structstudent*pstu){

intnj;

for(n=0;n<5;n++){

printf("Inputstudentsnum:");

scanf("%d",&pstu[n].num);

printf(n\n");

printf("Inputstudentsname:");

scanf("%s",&pstu[n].name);

printfCXn");

printf(MInputstudentsscore:");

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

scanf("%d",&pstu[n].score[j]);

)

printf(n\n");

)

)

voidoutput(structstudentstu[]){

inti=0j;

for(i;i<5;i++){

printf("%d,%s",stu[i].num,stu[i].name);

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

printf("%3d",stu[i].score[j]);

)

printfCAn");

)

)

intmain(){

voidinput(structstudent*pstu);

voidoutput(structstudentstu[]);

input(stu);

output(stu);

)

湖北經(jīng)濟(jì)學(xué)院C語(yǔ)言程序設(shè)計(jì)題庫(kù)(四)

總分:150分考試時(shí)間:120分鐘

注意事項(xiàng):

>題目包括五大部分,單項(xiàng)選擇題,判斷題,填空題,程序分析題,編程題,請(qǐng)按要求在

規(guī)定時(shí)間內(nèi)作答。

>考試中途不能無(wú)端離場(chǎng),否則視為放棄??荚囘^(guò)程中如遇問(wèn)題請(qǐng)及時(shí)向監(jiān)考老師反饋。

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

L分塊語(yǔ)句(塊if)的控制轉(zhuǎn)移中,有一些基本的規(guī)則,下列()條規(guī)則是最不正確的。

A、T塊IF必須與一個(gè)ENDIF語(yǔ)句相對(duì)應(yīng)

B、一個(gè)塊IF語(yǔ)和ENDIF語(yǔ)句間可以含有零個(gè)或多個(gè)ELSEIF語(yǔ)句

C、一對(duì)塊IF語(yǔ)句和ENDIF語(yǔ)句間可含有一個(gè)零或零個(gè)SLSE塊

D、允許越過(guò)塊IF語(yǔ)句頭進(jìn)入核IF嵌套層

【答案】D

2、下面單位換算中,正確的是_______

A、1KB=1024X1024B

B、1KB=1O24MB

C、1MB=1024X1024B

D、1GB=1O24B

【答案】C

【解析】存儲(chǔ)器容量常用的單位有KB、MB、GB、TB,換算關(guān)系如下:

1TB=1024GB

=1024x1024MB=1024x1024x1024KB=1024x1024x1024x1024B

3、已知[x/2]補(bǔ)=c6h,計(jì)算機(jī)的機(jī)器字長(zhǎng)為8位二進(jìn)制編碼,則岡補(bǔ)二(11)。

A、8CH

B、18H

C、臼H

D、F1H

【答案】A

【解析】已知[X/2]補(bǔ)=C6H,C6H化成二進(jìn)制數(shù)是11000110,求其真值,得

到-0111010。再乘以2(即左移一位)得?1110100,求此數(shù)的補(bǔ)碼可得

10001100,8CHO

4、能正確表示a和b同時(shí)為正或同時(shí)為負(fù)的邏輯表達(dá)式是_______

A、(a>=0||b>=0)&&(a<0||b<0)

B、(a>=0&&b>=0)&&(a<0&&b<0)

C、(a+b>0)&&(a+b<=0)

D、a*b>0

【答案】D

5、以下for語(yǔ)句中不是死循環(huán)的是_______

A、for(inti=0;i<1;i++);

B、for(inti=0;i++);

C、for(inti=l;i>0;++i);

D、for(;

【答案】A

【解析】考查循環(huán)語(yǔ)句for的使用。

[解題要點(diǎn)]for循環(huán)的一般格式為for(初始化部分;終止條件判斷部分;迭代部

分){循環(huán)體;}說(shuō)明如下:for循環(huán)開(kāi)始時(shí),首先執(zhí)行初始化操作,然后判斷終

止條件是否滿(mǎn)足,如果滿(mǎn)足,則執(zhí)行循環(huán)體中的語(yǔ)句,最后執(zhí)行迭代部分。完

成一次循環(huán)后,重新判斷終止條件。

作昔解分析]在for語(yǔ)句中,如果省略了終止條件判斷部分,開(kāi)且在語(yǔ)句中沒(méi)有

break,或者是終止條件判斷部分始終沒(méi)有終止,者閥各出現(xiàn)死循環(huán)。

[考點(diǎn)鏈接]for循環(huán)語(yǔ)句可由while循環(huán)語(yǔ)句來(lái)代替。

6、以下答案中不是c語(yǔ)言最基本數(shù)據(jù)類(lèi)型的是______。

A、邏輯型

B、整型

&字符型

D、指針型

【答案】A

7、以下選項(xiàng)中可作為c語(yǔ)言合法整數(shù)的是______。

A、10110B

B、0386

C、OXffa

D、x2a2

【答案】C

8、下列程序的執(zhí)行結(jié)果是

#include<stdio.h>

unionun{

inti;

charc[2];

)

voidmain(){

unionunx;

x.c[0]=10;

x.c[l]==l;

printf("\n%d",x.i);

)

A、266

B、11

C、265

D、138

【答案】A

【解析】由于本題定義的是共用體,所以成員表列中的整型變景x與字符數(shù)組

c共占用同一個(gè)存儲(chǔ)單元,且此存儲(chǔ)單元為2個(gè)字節(jié),通常c[0]位于低字節(jié),

c[l]位于高字節(jié),所以x.i的值為266。

9、在c語(yǔ)言中,以下敘述不正確的是.

A、在C程序中,無(wú)論是整數(shù)還是實(shí)數(shù),都能被準(zhǔn)確無(wú)誤的表示

B、在C程序中,變量名代表存儲(chǔ)器中的一個(gè)位置

C、靜態(tài)變量的生存期與整個(gè)程序的生存期相同

D、C語(yǔ)言中變量必須先定義后引用

【答案】A

10、在下列各項(xiàng)中,運(yùn)算級(jí)別最低的為。

A、算術(shù)運(yùn)算符

B、關(guān)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論