2010年20套大學(xué)計(jì)算機(jī)C語(yǔ)言期末考試復(fù)習(xí)試題及答案_第1頁(yè)
2010年20套大學(xué)計(jì)算機(jī)C語(yǔ)言期末考試復(fù)習(xí)試題及答案_第2頁(yè)
2010年20套大學(xué)計(jì)算機(jī)C語(yǔ)言期末考試復(fù)習(xí)試題及答案_第3頁(yè)
2010年20套大學(xué)計(jì)算機(jī)C語(yǔ)言期末考試復(fù)習(xí)試題及答案_第4頁(yè)
2010年20套大學(xué)計(jì)算機(jī)C語(yǔ)言期末考試復(fù)習(xí)試題及答案_第5頁(yè)
已閱讀5頁(yè),還剩44頁(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)介

一、判斷共10題(共計(jì)10分)

第1題(1.0分)題號(hào):1488

函數(shù)即可以嵌套定義,又可以嵌套調(diào)用.答案:N第2題(1.0分)題號(hào):1256

unsigned和void在C中都是保留字.答案:Y第3題(1.0分)題號(hào):1280

表達(dá)式++i表示對(duì)變量i自加1.答案:Y第4題(1.0分)題號(hào):1282

C語(yǔ)言源程序的基本結(jié)構(gòu)單位是main函數(shù).答案:N第5題(1.0分)題號(hào):1276

字符常量的長(zhǎng)度肯定為1.答案:Y第6題(1.0分)題號(hào):1469

chara[]={'a','b','c'};charb[]={"abc"};數(shù)組a和數(shù)組b占用的內(nèi)存空間大小不一樣.答案:Y第7題(1.0分)題號(hào):1249

若有inti=10,j=2;則執(zhí)行完i*=j+8;后i的值為28.答案:N第8題(1.0分)題號(hào):33

inti,*p=&i;是正確的C說(shuō)明。答案:Y第9題(1.0分)題號(hào):1250

While循環(huán)語(yǔ)句的循環(huán)體至少執(zhí)行一次.答案:N第10題(1.0分)題號(hào):1510

有數(shù)組定義inta[2][2]={{1},{2,3}};則a[0][1]的值為0.答案:Y二、單項(xiàng)選擇共30題(共計(jì)30分)

第1題(1.0分)題號(hào):456

執(zhí)行下面程序后,輸出結(jié)果是()。main(){a=45,b=27,c=0;c=max(a,b);printf("%d\n",c);}intmax(x,y)intx,y;{intz;if(x>y)z=x;elsez=y;return(z);}

A:45

B:27

C:18

D:72

答案:A第2題(1.0分)題號(hào):437

下列數(shù)組說(shuō)明中,正確的是()。

A:intarray[][4];

B:intarray[][];

C:intarray[][][5];

D:intarray[3][];

答案:A第3題(1.0分)題號(hào):2396

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

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

B:for循環(huán)是先執(zhí)行循環(huán)體語(yǔ)句,后判斷表達(dá)式

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

D:for循環(huán)的循環(huán)體語(yǔ)句中,可以包含多條語(yǔ)句,但必須用花括號(hào)括起來(lái)答案:D第4題(1.0分)題號(hào):2817

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

main()

{inti,j,k,a=3,b=2;

i=(--a==b++)?--a:++b;

j=a++;k=b;

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

}

A:i=2,j=1,k=3

B:i=1,j=1,k=2

C:i=4,j=2,k=4

D:i=1,j=1,k=3

答案:D第5題(1.0分)題號(hào):2866

若有下列定義,則對(duì)a數(shù)組元素地址的正確引用是().

inta[5],*p=a;

A:*(p+5)

B:*p+2

C:*(a+2)

D:*&a[5]

答案:C第6題(1.0分)題號(hào):711

下列選項(xiàng)中正確的語(yǔ)句組是()。

A:chars[8];s={"Beijing"};

B:char*s;s={"Beijing"};

C:chars[8];s="Beijing";

D:char*s;s="Beijing";

答案:D第7題(1.0分)題號(hào):3191

若變量a,i已正確定義,且i已正確賦值,合法的語(yǔ)句是()

A:a=int(i);

B:a==1

C:++i;

D:a=a++=5;

答案:C第8題(1.0分)題號(hào):490

以下字符中不是轉(zhuǎn)義字符的是()。

A:\a'

B:\b'

C:\c'

D:'\\'

答案:C第9題(1.0分)題號(hào):184

下列定義不正確的是()。

A:#definePI3.141592

B:#defineS345

C:intmax(x,y);intx,y;{}

D:staticcharc;

答案:C第10題(1.0分)題號(hào):3028

charh,*s=&h;可將字符H通過(guò)指針存入變量h中的語(yǔ)句是().

A:*s=H;

B:*s='H';

C:s=H;

D:s='H'

答案:B第11題(1.0分)題號(hào):690

設(shè)char型變量x中的值為10100111,則表達(dá)式(2+x)^(~3)的值是()。

A:10101001

B:10101000

C:11111101

D:01010101

答案:D第12題(1.0分)題號(hào):2381

設(shè)以下變量均為int類(lèi)型,表達(dá)式的值不為7的是()

A:x=y=6,x+y,x+1

B:x=y=6,x+y,y+1

C:x=6,x+1,y=6,x+y

D:y=6,y+1,x=y,x+1

答案:C第13題(1.0分)題號(hào):3124

若有說(shuō)明inta[3][4];則對(duì)a數(shù)組元素的正確引用是().

A:a[2][4]

B:a[1,3]

C:a[1+1][0]

D:a(2)(1)

答案:C第14題(1.0分)題號(hào):679

在C語(yǔ)言中,形參的缺省存儲(chǔ)類(lèi)是()。

A:auto

B:register

C:static

D:extern

答案:A第15題(1.0分)題號(hào):1343

C語(yǔ)言源程序的基本單位是().

A:過(guò)程

B:函數(shù)

C:子程序

D:標(biāo)識(shí)符

答案:B第16題(1.0分)題號(hào):3023

C語(yǔ)言程序中必須有的函數(shù)是().

A:#include"stdio.h"

B:main

C:printf

D:scanf

答案:B第17題(1.0分)題號(hào):3228

有定義:inta=8,b=5,c;,執(zhí)行語(yǔ)句c=a/b+0.4;后,c的值為()

A:1.4

B:1

C:2.0

D:2

答案:B第18題(1.0分)題號(hào):640

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

A:inta[3][]

B:floata(3,4)

C:doublea[1][4]

D:floata(3)(4)

答案:C第19題(1.0分)題號(hào):2884

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

A:answer

B:to

C:signed

D:_if

答案:C第20題(1.0分)題號(hào):652

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

A:整型常量

B:整型表達(dá)式

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

D:任何類(lèi)型的表達(dá)式

答案:C第21題(1.0分)題號(hào):381

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

A:answer

B:to

C:signed

D:_if

答案:C第22題(1.0分)題號(hào):2898

已知year為整型變量,不能使表達(dá)式(year%4==0&&year%100!=0)||

year%400==0的值為"真"的數(shù)據(jù)是().

A:1990

B:1992

C:1996

D:2000

答案:A第23題(1.0分)題號(hào):177

以下描述中,正確的是()。

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

B:預(yù)處理指令只能位于C源文件的開(kāi)始

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

D:預(yù)處理就是完成C編譯程序?qū)源程序第一遍掃描,為編譯詞法和語(yǔ)法分析作準(zhǔn)備

答案:C第24題(1.0分)題號(hào):156

執(zhí)行下列語(yǔ)句后的輸出為()。

intj=-1;

if(j<=1)printf("****\n");

elseprintf("%%%%\n");

A:****

B:%%%%

C:%%%%c

D:有錯(cuò),執(zhí)行不正確

答案:A第25題(1.0分)題號(hào):2850

以下函數(shù)調(diào)用語(yǔ)句中實(shí)參的個(gè)數(shù)是().

exce((v1,v2),(v3,v4,v5),v6);

A:3

B:4

C:5

D:6

答案:A第26題(1.0分)題號(hào):506

以下程序段的輸出結(jié)果為()。for(i=4;i>1;i--)for(j=1;j<i;j++)putchar('#');

A:無(wú)

B:######

C:#

D:###

答案:B第27題(1.0分)題號(hào):2830

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

main()

{intx=1,y=0,a=0,b=0;

switch(x)

{

case1:switch(y)

{

case0:a++;break;

case1:b++;break;

}

case2:a++;b++;break;

case3:a++;b++;break;

}

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

}

A:a=1,b=0

B:a=2,b=1

C:a=1,b=1

D:a=2,b=2

答案:B第28題(1.0分)題號(hào):573

C語(yǔ)言中運(yùn)算對(duì)象必須是整型的運(yùn)算符是()。

A:%=

B:/

C:=

D:〈=

答案:A第29題(1.0分)題號(hào):647

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

A:inta[2][]={{1,0,1},{5,2,3}};

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

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

D:inta[][3]={{1,0,1}{},{1,1}};

答案:B第30題(1.0分)題號(hào):3135

以下數(shù)組定義中不正確的是().

A:inta[2][3];

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

C:intc[100][100]={0};

D:intd[3][]={{1,2},{1,2,3},{1,2,3,4}};

答案:D三、程序填空共2題(共計(jì)24分)

第1題(12.0分)題號(hào):417

/*-------------------------------------------------------

【程序填空】

---------------------------------------------------------題目:利用全局變量計(jì)算長(zhǎng)方體的體積及三個(gè)面的面積。

-------------------------------------------------------*/

ints1,s2,s3;

intvs(inta,intb,intc)

{intv;

/***********SPACE***********/

v=【?】;

s1=a*b;

/***********SPACE***********/

s2=【?】;

s3=a*c;

returnv;

}

main()

{intv,l,w,h;

clrscr();

printf("\ninputlength,widthandheight:");

/***********SPACE***********/

scanf("%d%d%d",【?】,&w,&h);

/***********SPACE***********/

v=【?】;

printf("v=%ds1=%ds2=%ds3=%d\n",v,s1,s2,s3);

getch();

}答案:=======(答案1)=======

a*b*c

=========或=========

a*b*c=======(答案2)=======

b*c

=========或=========

b*c=======(答案3)=======

&l=======(答案4)=======

vs(l,w,h)

=========或=========

vs(l,w,h)

第2題(12.0分)題號(hào):441

/*-------------------------------------------------------

【程序填空】

---------------------------------------------------------題目:給定程序中函數(shù)fun的功能是:從低位開(kāi)始取出長(zhǎng)

整型變量s中奇數(shù)位上的數(shù),依次構(gòu)成一個(gè)新數(shù)放在t中。

-------------------------------------------------------*/

#include<conio.h>

#include<stdio.h>

voidfun(longs,long*t)

{longsl=10;

s/=10;

/***********SPACE***********/

*t=s【?】10;

while(s>0)

/***********SPACE***********/

{s=【?】;

/***********SPACE***********/

*t=s%10*sl【?】;

/***********SPACE***********/

sl=sl【?】10;

}

}main()

{longs,t;

clrscr();

printf("\nPleaseenters:");scanf("%ld",&s);

fun(s,&t);

printf("Theresultis:%ld\n",t);

}答案:=======(答案1)=======

%=======(答案2)=======

s/100=======(答案3)=======

+*t=======(答案4)=======

*

四、程序改錯(cuò)共2題(共計(jì)22分)

第1題(11.0分)題號(hào):383

/*------------------------------------------------------

【程序改錯(cuò)】

--------------------------------------------------------題目:給定程序的功能是:讀入一行英文文本,

將其中每個(gè)單詞的最后一個(gè)字母改成大寫(xiě),然后

輸出此文本行(這里的“單詞”是指由空格隔開(kāi)的

字符串)。例如,若輸入Iamastudenttotake

theexamination.,則應(yīng)輸出"IaMAstudenTtO

takEthEexamination."。

--------------------------------------------------------

注意:不可以增加或刪除程序行,也不可以更改程序的結(jié)構(gòu)。

------------------------------------------------------*/

#include"conio.h"

#include"stdio.h"

#include"ctype.h"

#include"string.h"

up1st(char*p)

{

/**********FOUND**********/

integerk=0;

for(;*p;p++)

if(k)

/**********FOUND**********/

{if(*p='')

{k=0;

/**********FOUND**********/

*(p-1)=toupper(*(p-1);

}

}

elseif(*p!='')k=1;

*(p-1)=toupper(*(p-1));

}

main()

{charchrstr[81];

printf("\nPleaseenterastring:");gets(chrstr);

printf("\n\nBeforechanging:\n%s",chrstr);

up1st(chrstr);

printf("\nAfterchanging:\n%s",chrstr);

}

答案:=======(答案1)=======

intk=0;=======(答案2)=======

{if(*p=='')=======(答案3)=======

*(p-1)=toupper(*(p-1));

第2題(11.0分)題號(hào):431

/*------------------------------------------------------

【程序改錯(cuò)】

--------------------------------------------------------題目:編寫(xiě)函數(shù)fun求1000以?xún)?nèi)所有8的倍數(shù)之和。

--------------------------------------------------------

注意:不可以增加或刪除程序行,也不可以更改程

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

------------------------------------------------------*/

#include"stdio.h"

#defineN1000main()

{intsum;

sum=fun(8);

printf("%d以?xún)?nèi)所有%d的倍數(shù)之和為:%d\n",N,8,sum);

getch();

}

intfun(intm)

{

/**********FOUND**********/

ints=0;i;

/**********FOUND**********/

for(i=1;i>N;i++)

/**********FOUND**********/

if(i/m==0)

s+=i;

returns;}

答案:=======(答案1)=======

ints=0,i;=======(答案2)=======

for(i=1;i<N;i++)=======(答案3)=======

if(i%m==0)

五、程序設(shè)計(jì)共1題(共計(jì)14分)

第1題(14.0分)題號(hào):390

/*------------------------------------------------

【程序設(shè)計(jì)】

--------------------------------------------------題目:求一批數(shù)中最大值和最小值的差。--------------------------------------------------

注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù)

main和其它函數(shù)中的任何內(nèi)容,僅在函

數(shù)的花括號(hào)中填入所編寫(xiě)的若干語(yǔ)句。

------------------------------------------------*/

intmax_min(inta[],intn)

{

/**********Program**********/

/**********End**********/

}

#defineN30

#include"stdlib.h"

#include"stdio.h"

main()

{

inta[N],i,k;

clrscr();

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

a[i]=random(51)+10;

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

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

if((i+1)%5==0)printf("\n");

}

k=max_min(a,N);

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

yzj();

getch();

}yzj()

{

FILE*IN,*OUT;

intn;

inti[30];

into;

IN=fopen("in.dat","r");

if(IN==NULL)

{printf("ReadFileError");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{printf("WriteFileError");

}

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

{

fscanf(IN,"%d",&i[n]);

}

o=max_min(i,5);

fprintf(OUT,"%d\n",o);

fclose(IN);

fclose(OUT);

}答案:----------------------

inti,max,min;

max=min=a[0];

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

if(a[i]>max)max=a[i];

elseif(a[i]<min)min=a[i];

return(max-min);

----------------------一、判斷共10題(共計(jì)10分)

第1題(1.0分)題號(hào):34

7&3+12的值是15。答案:N第2題(1.0分)題號(hào):1468

在C語(yǔ)言中,整型數(shù)據(jù)在內(nèi)存中占2個(gè)字節(jié).答案:N第3題(1.0分)題號(hào):19

C語(yǔ)言本身不提供輸入輸出語(yǔ)句,輸入和輸出操作是由函數(shù)來(lái)

實(shí)現(xiàn)的。答案:Y第4題(1.0分)題號(hào):1512

將一個(gè)字符串"abc"賦給字符串變量str的方法是str="abc".答案:N第5題(1.0分)題號(hào):1501

以數(shù)組名作函數(shù)參數(shù)時(shí),實(shí)參數(shù)組與形參數(shù)組都不必定義長(zhǎng)度,因此實(shí)參與形參的結(jié)合方式是地址結(jié)合,與數(shù)組長(zhǎng)度無(wú)關(guān).答案:N第6題(1.0分)題號(hào):18

a=(b=4)+(c=6)是一個(gè)合法的賦值表達(dá)式。答案:Y第7題(1.0分)題號(hào):1262

C語(yǔ)言規(guī)定:在一個(gè)源程序中,main函數(shù)的位置必須在最開(kāi)始.答案:N第8題(1.0分)題號(hào):1479

C程序中的一個(gè)變量可以被定義為兩個(gè)或多個(gè)不同的類(lèi)型.答案:N第9題(1.0分)題號(hào):23

若a=3,b=2,c=1則關(guān)系表達(dá)式"(a>b)==c"的值為"真"。答案:Y第10題(1.0分)題號(hào):1502

對(duì)二維數(shù)組a來(lái)說(shuō),由于a+1與*(a+1)的值相等,因此二者的含義是一樣的.答案:N二、單項(xiàng)選擇共30題(共計(jì)30分)

第1題(1.0分)題號(hào):177

以下描述中,正確的是()。

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

B:預(yù)處理指令只能位于C源文件的開(kāi)始

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

D:預(yù)處理就是完成C編譯程序?qū)源程序第一遍掃描,為編譯詞法和語(yǔ)法分析作準(zhǔn)備

答案:C第2題(1.0分)題號(hào):2789

設(shè)C語(yǔ)言中,int類(lèi)型數(shù)據(jù)占4個(gè)字節(jié),則short類(lèi)型數(shù)據(jù)占().

A:1個(gè)字節(jié)

B:2個(gè)字節(jié)

C:4個(gè)字節(jié)

D:8個(gè)字節(jié)

答案:B第3題(1.0分)題號(hào):693

以下各選項(xiàng)企圖說(shuō)明一種新的類(lèi)型名,其中正確的是()。

A:typedefv1int;

B:typedefv2=int;

C:typedefintv3;

D:typedefv4:int;

答案:C第4題(1.0分)題號(hào):104

以下運(yùn)算符中,優(yōu)先級(jí)最高的運(yùn)算符是()。

A:||

B:%

C:!

D:==

答案:C第5題(1.0分)題號(hào):138

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

main()

{inti,j,k,a=3,b=2;

i=(--a==b++)?--a:++b;

j=a++;k=b;

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

}

A:i=2,j=1,k=3

B:i=1,j=1,k=2

C:i=4,j=2,k=4

D:i=1,j=1,k=3

答案:D第6題(1.0分)題號(hào):2907

以下程序段的執(zhí)行結(jié)果是().doublex;x=218.82631;printf("%-6.2e\n",x);

A:輸出格式描述符的域?qū)挷粔?不能輸出

B:輸出為21.38e+01

C:輸出為2.2e+02

D:輸出為-2.14e2

答案:C第7題(1.0分)題號(hào):152

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

main()

{intn;

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

{

if(n%3==0)continue;

printf("%d",n);

}

}

A:12457810

B:369

C:12

D:1234567890

答案:A第8題(1.0分)題號(hào):411

下列程序的輸出結(jié)果為()。main(){intm=7,n=4;floata=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf("%f\n",x);}

A:27.000000

B:27.500000

C:28.000000

D:28.500000

答案:A第9題(1.0分)題號(hào):584

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

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

A:float

B:char

C:int

D:double

答案:D第10題(1.0分)題號(hào):208

下列各m的值中,能使m%3==2&&m%5==3&&m%7==2為真的是()。

A:8

B:23

C:17

D:6

答案:B第11題(1.0分)題號(hào):2962

若已定義x為int類(lèi)型變量,下列語(yǔ)句中說(shuō)明指針變量p的正確語(yǔ)句是().

A:intp=&x;

B:int*p=x;

C:int*p=&x;

D:*p=*x;

答案:C第12題(1.0分)題號(hào):3142

以下正確的說(shuō)法是:在C語(yǔ)言中().

A:實(shí)參和與其對(duì)應(yīng)的形參各占用獨(dú)立的存儲(chǔ)單元

B:實(shí)參和與其對(duì)應(yīng)的形參共占用一個(gè)存儲(chǔ)單元

C:只有當(dāng)實(shí)參和與其對(duì)應(yīng)的形參同名時(shí)才共占用存儲(chǔ)單元

D:形參是虛擬的,不占用存儲(chǔ)單元

答案:A第13題(1.0分)題號(hào):3156

sizeof(float)是().

A:一種函數(shù)調(diào)用

B:一個(gè)不合法的表達(dá)式

C:一個(gè)整型表達(dá)式

D:一個(gè)浮點(diǎn)表達(dá)式

答案:C第14題(1.0分)題號(hào):3119

以下對(duì)二維數(shù)組a的正確說(shuō)明是().

A:inta[3][]

B:floata(3,4)

C:doublea[1][4]

D:floata(3)(4)

答案:C第15題(1.0分)題號(hào):3218

若有以下定義,則能使值為3的表達(dá)式是()intk=7,x=12;A:x%=(k%=5)B:x%=(k-k%5)

C:x%=k-k%5D:(x%=k)-(k%=5)

答案:D第16題(1.0分)題號(hào):672

C語(yǔ)言允許函數(shù)類(lèi)型缺省定義,此時(shí)函數(shù)值隱含的類(lèi)型是()。

A:float

B:int

C:long

D:double

答案:B第17題(1.0分)題號(hào):2796

先用語(yǔ)句定義字符型變量c,然后要將字符a賦給c,則下列語(yǔ)句中正確的是().

A:c='a';

B:c="a";

C:c="97";

D:C='97'

答案:A第18題(1.0分)題號(hào):2923

經(jīng)過(guò)以下語(yǔ)句定義后,表達(dá)式z+=x>y?++x:++y的值為().intx=1,y=2,z=3;

A:2

B:3

C:6

D:5

答案:C第19題(1.0分)題號(hào):526

用戶定義的函數(shù)不可以調(diào)用的函數(shù)是()。

A:非整型返回值的

B:本文件外的

C:main函數(shù)

D:本函數(shù)下面定義的

答案:C第20題(1.0分)題號(hào):2567

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

A:a3_b3

B:void

C:_123

D:IF

答案:B第21題(1.0分)題號(hào):2401

下面程序段的輸出結(jié)果為()inta,b;b=(a=3*5,a*4,a*5);printf("%d",b);

A:60

B:75

C:65

D:無(wú)確定值

答案:B第22題(1.0分)題號(hào):3063

若有定義:inta=7;floatx=2.5,y=4.7;

則表達(dá)式x+a%3*(int)(x+y)%2/4的值是().

A:2.500000

B:2.750000

C:3.500000

D:0.000000

答案:A第23題(1.0分)題號(hào):3129

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

A:數(shù)組a的每個(gè)元素都可得到初值0

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

C:因?yàn)槎S數(shù)組a中第二維大小的值除經(jīng)初值個(gè)數(shù)的商為1,故數(shù)組a的行數(shù)為1

D:有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0

答案:D第24題(1.0分)題號(hào):3186

若有說(shuō)明:inti,j=2,*p=&i;,則能完成i=j賦值功能的語(yǔ)句是().

A:i=*p;

B:*p=*&j;

C:i=&j;

D:i=**p;

答案:B第25題(1.0分)題號(hào):3016

與實(shí)際參數(shù)為實(shí)型數(shù)組名相對(duì)應(yīng)的形式參數(shù)不可以定義為().

A:floata[];

B:float*a;

C:floata;

D:float(*a)[3];

答案:C第26題(1.0分)題號(hào):515

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+1;

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

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

D:for(i=1;i<=6;i++)a[i][i]=i;

答案:D第27題(1.0分)題號(hào):2799

下列運(yùn)算符中,不屬于關(guān)系運(yùn)算符的是().

A:<

B:>

C:>=

D:!

答案:D第28題(1.0分)題號(hào):662

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

A:void

B:int

C:float

D:double

答案:B第29題(1.0分)題號(hào):196

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

inta[5],*p=a;

A:*(p+5)

B:*p+2

C:*(a+2)

D:*&a[5]

答案:C第30題(1.0分)題號(hào):2993

下列程序段的輸出結(jié)果為().inta=7,b=9,t;t=a*=a>b?a:b;printf("%d",t);

A:7

B:9

C:63

D:49

答案:C三、程序填空共2題(共計(jì)24分)

第1題(12.0分)題號(hào):591

/*如果a>b,就將兩個(gè)數(shù)的位置調(diào)換;否則,保持不變。*/

main()

{

inta,b,temp;

printf("\nPleaseinputtwointnumber:");

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

if(a>b)

{

/***********SPACE***********/

【?】;

/***********SPACE***********/

a=【?】;

b=temp;

}

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

}答案:=======(答案1)=======

temp=a=======(答案2)=======

b

第2題(12.0分)題號(hào):30

/*-------------------------------------------------------

【程序填空】

---------------------------------------------------------題目:以下程序的功能是用冒泡法對(duì)數(shù)組a進(jìn)行由小到大的

排序。-------------------------------------------------------*/voidfun(inta[],intn)

{

inti,j,t;

/***********SPACE***********/

for(j=0;【?】;j++)

/***********SPACE***********/

for(i=0;【?】;i++)

/***********SPACE***********/

if(【?】)

{t=a[i];a[i]=a[i+1];a[i+1]=t;}

}

main()

{

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

/***********SPACE***********/

【?】;

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

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

}

答案:=======(答案1)=======

j<=n-1

=========或=========

n-1>=j

=========或=========

j<=-1+n

=========或=========

-1+n>=j

=========或=========

j<n

=========或=========

n>j=======(答案2)=======

i<n-j-1

=========或=========

n-j-1>i

=========或=========

i<n-1-j

=========或=========

n-1-j>i

=========或=========

i<=n-j-2

=========或=========

i<=n-2-j=======(答案3)=======

a[i]>a[i+1]

=========或=========

a[i+1]<a[i]=======(答案4)=======

fun(a,10)

四、程序改錯(cuò)共2題(共計(jì)22分)

第1題(11.0分)題號(hào):417

/*------------------------------------------------------

【程序改錯(cuò)】

--------------------------------------------------------題目:讀取7個(gè)數(shù)(1-50)的整數(shù)值,每讀取一個(gè)值,

程序打印出該值個(gè)數(shù)的*。

--------------------------------------------------------

注意:不可以增加或刪除程序行,也不可以更改程

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

------------------------------------------------------*/

#include"stdio.h"

main()

{inti,a,n=1;

/**********FOUND**********/

while(n<7)

{

do

{

scanf("%d",&a);

}

/**********FOUND**********/

while(a<1&&a>50);

/**********FOUND**********/

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

printf("*");

printf("\n");

n++;}

getch();

}答案:=======(答案1)=======

while(n<=7)

=========或=========

while(n<8)=======(答案2)=======

while(a<1||a>50);

=========或=========

while(a>50||a<1);=======(答案3)=======

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

第2題(11.0分)題號(hào):429

/*------------------------------------------------------

【程序改錯(cuò)】

--------------------------------------------------------題目:求0-7這8個(gè)數(shù)字所能組成的奇數(shù)個(gè)數(shù)。

--------------------------------------------------------

注意:不可以增加或刪除程序行,也不可以更改程序

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

------------------------------------------------------*/

#include"stdio.h"

main()

{

/**********FOUND**********/

longsum=4;s=4;

intj;

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

/**********FOUND**********/

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

/**********FOUND**********/

if(j<2)

s*=7;

else

s*=8;

sum+=s;}

printf("\nsum=%ld",sum);

getch();

}

答案:=======(答案1)=======

longsum=4,s=4;=======(答案2)=======

{printf("\n%ld",sum);=======(答案3)=======

if(j<=2)

=========或=========

if(j<3)

五、程序設(shè)計(jì)共1題(共計(jì)14分)

第1題(14.0分)題號(hào):49

/*------------------------------------------------

【程序設(shè)計(jì)】

--------------------------------------------------題目:請(qǐng)用for循環(huán)編寫(xiě)編寫(xiě)函數(shù)fun,函數(shù)的功能是:計(jì)算n門(mén)

課程的平均值,計(jì)算結(jié)果作為函數(shù)值返回。

例如,若有5門(mén)課程的成績(jī)是:92,76,69,58,

88,則函數(shù)的值為76.600000。--------------------------------------------------

注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù)main和其

它函數(shù)中的任何內(nèi)容,僅在函數(shù)fun的花括號(hào)中填

入所編寫(xiě)的若干語(yǔ)句。

------------------------------------------------*/#include"stdio.h"

floatfun(inta[],intn)

{/**********Program**********/

/**********End**********/}main()

{

inta[]={92,76,69,58,88};

printf("y=%f\n",fun(a,5));

yzj();

}

yzj()

{

FILE*IN,*OUT;

intiIN[10],i,j;

floatfOUT;

IN=fopen("18.in","r");

if(IN==NULL)

{printf("PleaseVerifyTheCurrerntDir..ItMayBeChanged");

}

OUT=fopen("18.out","w");

if(OUT==NULL)

{printf("PleaseVerifyTheCurrentDir..ItMayBeChanged");

}

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

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

fscanf(IN,"%d",&iIN[i]);

fOUT=fun(iIN,5);

fprintf(OUT,"%f\n",fOUT);

}

fclose(IN);

fclose(OUT);

}答案:----------------------

inti;

floaty=0;

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

y+=a[i];

y=y/n;

returny;

----------------------一、判斷共10題(共計(jì)10分)

第1題(1.0分)題號(hào):7

在C語(yǔ)言中,此定義和語(yǔ)句是合法的:

enumaa{a=5,b,c}bb;bb=(enumaa)5;答案:Y第2題(1.0分)題號(hào):1475

表達(dá)式1/4+2.75的值是3.答案:N第3題(1.0分)題號(hào):1510

有數(shù)組定義inta[2][2]={{1},{2,3}};則a[0][1]的值為0.答案:Y第4題(1.0分)題號(hào):1262

C語(yǔ)言規(guī)定:在一個(gè)源程序中,main函數(shù)的位置必須在最開(kāi)始.答案:N第5題(1.0分)題號(hào):1263

for(表達(dá)式1;;表達(dá)式3)可理解為for(表達(dá)式1;1;表達(dá)式3).答案:Y第6題(1.0分)題號(hào):1512

將一個(gè)字符串"abc"賦給字符串變量str的方法是str="abc".答案:N第7題(1.0分)題號(hào):22

關(guān)系運(yùn)算符<=與==的優(yōu)先級(jí)相同。答案:N第8題(1.0分)題號(hào):1252

break語(yǔ)句可用于循環(huán)體內(nèi),它將退出該重循環(huán).答案:Y第9題(1.0分)題號(hào):1504

語(yǔ)句char*p="TurboC"的含義是將字符串賦給字符型指針變量p.答案:N第10題(1.0分)題號(hào):1241

在標(biāo)準(zhǔn)C中,while和do_while的功能完全相同.答案:N二、單項(xiàng)選擇共30題(共計(jì)30分)

第1題(1.0分)題號(hào):3148

C語(yǔ)言允許函數(shù)類(lèi)型缺省定義,此時(shí)函數(shù)值隱含的類(lèi)型是().

A:float

B:int

C:long

D:double

答案:B第2題(1.0分)題號(hào):624

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

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

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

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

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

答案:C第3題(1.0分)題號(hào):2943

關(guān)于return語(yǔ)句,下列正確的說(shuō)法是().

A:在主函數(shù)和其他函數(shù)中均可出現(xiàn)

B:必須在每個(gè)函數(shù)中出現(xiàn)

C:可以在同一個(gè)函數(shù)中出現(xiàn)多次

D:只能在除主函數(shù)之外的函數(shù)中出現(xiàn)一次

答案:C第4題(1.0分)題號(hào):458

下列定義不正確的是()。

A:#definePI3.141592

B:#defineS345

C:intmax(x,y);intx,y;{}

D:staticcharc;

答案:C第5題(1.0分)題號(hào):2947

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

A:void

B:double

C:int

D:char

答案:C第6題(1.0分)題號(hào):3177

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

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

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

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

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

答案:D第7題(1.0分)題號(hào):3057

設(shè)以下變量均為int類(lèi)型,則值不等于7的表達(dá)式是().

A:(x=y=6,x+y,x+1)

B:(x=y=6,x+y,y+1)

C:(x=6,x+1,y=6,x+y)

D:(y=6,y+1,x=y,x+1)

答案:C第8題(1.0分)題號(hào):409

若a是float型變量,b是unsigned型變量,以下輸入語(yǔ)句中合法的是()。

A:scanf("%6.2f%d",&a,&b);

B:scanf("%f%n",&a,&b);

C:scanf("%f%3o",&a,&b);

D:scanf("%f%f",&a,&b);

答案:C第9題(1.0分)題號(hào):3088

下列選項(xiàng)中,合法的C語(yǔ)言關(guān)鍵字是().

A:VAR

B:cher

C:integer

D:default

答案:D第10題(1.0分)題號(hào):533

對(duì)結(jié)構(gòu)體類(lèi)型的變量的成員的訪問(wèn),無(wú)論數(shù)據(jù)類(lèi)型如何都可使用

的運(yùn)算符是()。

A:.

B:->

C:*

D:&

答案:A第11題(1.0分)題號(hào):3212

C語(yǔ)言中的標(biāo)識(shí)符只能由字母,數(shù)字和下劃線三種字符組成,且第一個(gè)字符()

A:必須為字母

B:必須為下劃線C:必須為字母或下劃線

D:可以是字母,數(shù)字和下劃線中任一字符答案:C第12題(1.0分)題號(hào):416

以下程序的輸出結(jié)果為()。main(){inti=010,j=10;printf("%d,%d\n",++i,j--);}

A:11,10

B:9,10

C:010,9

D:10,9

答案:B第13題(1.0分)題號(hào):542

若有int*p=(int*)malloc(sizeof(int));則向內(nèi)存申請(qǐng)到內(nèi)存

空間存入整數(shù)123的語(yǔ)句為()。

A:scanf("%d",p);

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

C:scanf("%d",*p);

D:scanf("%d",**p);

答案:A第14題(1.0分)題號(hào):464

關(guān)于指針概念說(shuō)法不正確的是()。

A:一個(gè)指針變量只能指向同一類(lèi)型變量

B:一個(gè)變量的地址稱(chēng)為該變量的指針

C:只有同一類(lèi)型變量的地址才能放到指向該類(lèi)型變量的指針變量之中

D:指針變量可以由整數(shù)賦,不能用浮點(diǎn)賦

答案:D第15題(1.0分)題號(hào):687

表達(dá)式,0x13&0x17的值是()。

A:0x17

B:0x13

C:0xf8

D:0xec

答案:B第16題(1.0分)題號(hào):3000

inta=1,b=2,c=3;if(a>c)b=a;a=c;c=b;則c的值為().

A:1

B:2

C:3

D:不一定

答案:B第17題(1.0分)題號(hào):138

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

main()

{inti,j,k,a=3,b=2;

i=(--a==b++)?--a:++b;

j=a++;k=b;

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

}

A:i=2,j=1,k=3

B:i=1,j=1,k=2

C:i=4,j=2,k=4

D:i=1,j=1,k=3

答案:D第18題(1.0分)題號(hào):441

下列語(yǔ)句中,不正確的是()。

A:staticchara[2]={1,2};

B:staticinta[2]={'1','2'};

C:staticchara[2]={'1','2','3'};

D:staticchara[2]={'1'};

答案:C第19題(1.0分)題號(hào):477

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

A:enuma={sum,mon,tue};

B:enuma{sum=9,mon=-1,tue};

C:enuma={"sum","mon","tue"};

D:enuma{"sum","mon","tue"};

答案:B第20題(1.0分)題號(hào):661

以下正確的描述是:在C語(yǔ)言程序中()。

A:函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套

B:函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套

C:函數(shù)的定義和函數(shù)的調(diào)用均不可以嵌套

D:函數(shù)的定義和函數(shù)的調(diào)用均可以嵌套

答案:B第21題(1.0分)題號(hào):3103

以下描述中正確的是().

A:由于do-while循環(huán)中循環(huán)體語(yǔ)句只能是一條可執(zhí)行語(yǔ)句,所以循環(huán)體內(nèi)不能使用復(fù)合語(yǔ)句

B:do-while循環(huán)由do開(kāi)始,用while結(jié)束,在while(表達(dá)式)后面不能寫(xiě)分號(hào)

C:在do-while循環(huán)體中,一定要有能使while后面表達(dá)式的值變?yōu)榱?"假")的操作

D:do-while循環(huán)中,根據(jù)情況可以省略while

答案:C第22題(1.0分)題號(hào):2994

下列表達(dá)式中,可作為C合法表達(dá)式的是().

A:[3,2,1,0]

B:(3,2,1,0)

C:3=2=1=0

D:3/2/1/0

答案:B第23題(1.0分)題號(hào):591

設(shè)有intx=11;則表達(dá)式(x++*1/3)的值是()。

A:3

B:4

C:11

D:12

答案:A第24題(1.0分)題號(hào):622

putchar函數(shù)可以向終端輸出一個(gè)()。

A:整型變量表達(dá)式值

B:實(shí)型變量值

C:字符串

D:字符或字符型變量值

答案:D第25題(1.0分)題號(hào):3232

有如下定義#defineD2intx=5;floaty=3.83;charc=′D′;則下面選項(xiàng)中錯(cuò)誤的是

()

A:x++;

B:y++;

C:c++;

D:D++;答案:D第26題(1.0分)題號(hào):196

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

inta[5],*p=a;

A:*(p+5)

B:*p+2

C:*(a+2)

D:*&a[5]

答案:C第27題(1.0分)題號(hào):2377

下列數(shù)據(jù)中,不合法的C語(yǔ)言實(shí)型數(shù)據(jù)的是()

A:0.123

B:123e3

C:2.1e3.5

D:789.0

答案:C第28題(1.0分)題號(hào):2872

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

A:操作數(shù)乘以2

B:操作數(shù)除以2

C:操作數(shù)乘以16

D:操作數(shù)除以16

答案:B第29題(1.0分)題號(hào):685

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

A:操作數(shù)乘以2

B:操作數(shù)除以2

C:操作數(shù)除以4

D:操作數(shù)乘以4

答案:A第30題(1.0分)題號(hào):132

若ch為char型變量,k為int型變量(已知字符a的ASCII十進(jìn)制代碼為97),

則以下程序段的執(zhí)行結(jié)果是()。

ch='a';k=12;printf("%x,%o,",ch,ch,k);printf("k=%%d\n",k);

A:因變量類(lèi)型與格式描述符的類(lèi)型不匹配,輸出無(wú)定值

B:輸出項(xiàng)與格式描述符個(gè)數(shù)不符,輸出為零值或不定值

C:61,141,k=%d

D:61,141,k=%12

答案:C三、程序填空共2題(共計(jì)24分)

第1題(12.0分)題號(hào):605

/*用輾轉(zhuǎn)相除法求解兩個(gè)整數(shù)的最大公約數(shù)。*/

main()

{

inta,b,r;

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

/***********SPACE***********/

【?】;

while(r!=0)

{

a=b;

/***********SPACE***********/

【?】;

r=a%b;

}

printf("%d",b);

}答案:=======(答案1)=======

r=a%b=======(答案2)=======

b=r

第2題(12.0分)題號(hào):606

/*輸出九九乘法表*/

/*1*1=11*2=21*3=31*4=4.....1*9=9*/

/*2*1=12*2=42*3=62*4=8......2*9=18*/

main()

{

inti,j;

/***********SPACE***********/

for(【?】;i<=9;i++)

{

for(j=1;j<=9;j++)

/***********SPACE***********/

printf("%d*%d=%d",i,j,【?】);

printf("\n");

}

}答案:=======(答案1)=======

i=1=======(答案2)=======

i*j

四、程序改錯(cuò)共2題(共計(jì)22分)

第1題(11.0分)題號(hào):441

/*------------------------------------------------------

【程序改錯(cuò)】

--------------------------------------------------------題目:輸入字符序列,字符序列以特殊字符“#”結(jié)束。程序從前

向后依次讀入字符,并翻譯出新的字符輸出。翻譯的規(guī)則是:如果

當(dāng)前讀入的字符是數(shù)字符,如果該字符的面值為n,則它的后一個(gè)

字符(包括數(shù)字符)需重復(fù)輸出n+1次如果當(dāng)前讀入的字符不是數(shù)字

符,則輸出該字符。輸出時(shí),以上述一次翻譯為一組,不同組間輸

出用一個(gè)空白字符隔開(kāi)。翻譯直至當(dāng)前讀入的字符為字符'#',結(jié)

束翻譯和輸出.

--------------------------------------------------------

注意:不可以增加或刪除程序行,也不可以更改程序的結(jié)構(gòu)。

------------------------------------------------------*/

#include<stdio.h>

voidmain()

{

charch,nch;

intcount;

intk;

printf("Enterstring.\n");

scanf("%c",&ch);

/**********FOUND**********/

while(ch='#')

{

if(ch>='0'&&ch<='9')

{

/**********FOUND**********/

count=ch-'0'-1;

scanf("%c",&nch);

for(k=0;k<count;k++)

printf("%c",nch);

}

else

/**********FOUND**********/

printf("%f",ch);

printf("");

scanf("%c",&ch);

}

printf("#\n");

}答案:=======(答案1)=======

while(ch!='#')=======(答案2)=======

count=ch-'0'+1;=======(答案3)=======

printf("%c",ch);

第2題(11.0分)題號(hào):5

/*------------------------------------------------------

【程序改錯(cuò)】

--------------------------------------------------------題目:將一個(gè)字符串中第m個(gè)字符開(kāi)始的全部字符復(fù)制成為另一

個(gè)字符串。

程序中共有4條錯(cuò)誤語(yǔ)句,請(qǐng)改正錯(cuò)誤。--------------------------------------------------------

注意:不可以增加或刪除程序行,也不可以更改程序的結(jié)構(gòu)。

------------------------------------------------------*/

#include<stdio.h>

voidstrcopy(char*str1,char*str2,intm)

/**********FOUND**********/

charp1,p2;

inti,j;

/**********FOUND**********/

=str1+m;

p2=str2;

/**********FOUND**********/

if(*p1);

*p2++=*p1++;

*p2='\0';

}

main()

{

inti,m;

char*p1,*p2,str1[80],str2[80];

p1=str1;

p2=str2;

gets(p1);

scanf("%d",&m);

/**********FOUND**********/

strcat(str1[0],str2[0],m);

puts(p1);puts(p2);

}

答案:=======(答案1)=======

{char*p1,*p2;

=========或=========

{char*p2,*p1;=======(答案2)=======

p1=str1+m-1;

=========或=========

p1=-1+str1+m;=======(答案3)=======

while(*p1)=======(答案4)=======

strcopy(str1,str2,m);

五、程序設(shè)計(jì)共1題(共計(jì)14分)

第1題(14.0分)題號(hào):377

/*------------------------------------------------

【程序設(shè)計(jì)】

--------------------------------------------------題目:編寫(xiě)函數(shù)實(shí)現(xiàn)兩個(gè)數(shù)據(jù)的交換,在主函數(shù)

中輸入任意三個(gè)數(shù)據(jù),調(diào)用函數(shù)對(duì)這三個(gè)

數(shù)據(jù)從大到小排序。--------------------------------------------------

注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù)

main和其它函數(shù)中的任何內(nèi)容,僅在函

數(shù)的花括號(hào)中填入所編寫(xiě)的若干語(yǔ)句。

------------------------------------------------*/

#include<stdio.h>

voidswap(int*a,int*b)

{

/**********Program**********/

/**********End**********/

}main()

{intx,y,z;

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

if(x<y)swap(&x,&y);

if(x<z)swap(&x,&z);

if(y<z)swap(&y,&z);

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

yzj();

getch();

}

yzj()

{

FILE*IN,*OUT;

intm,n;

inti[2];

into;

IN=fopen("in.dat","r");

if(IN==NULL)

{printf("ReadFileError");

}

OUT=fopen("out.dat","w");

if(OUT==NULL)

{printf("WriteFileError");

}

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

{

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

{

fscanf(IN,"%d",&i[m]);

}

swap(&i[0],&i[1]);

fprintf(OUT,"%d\n",i[0]);

fprintf(OUT,"%d\n",i[1]);

}

fclose(IN);

fclose(OUT);

}答案:----------------------intk;

k=*a;

*a=*b;

*b=k;

一、判斷共10題(共計(jì)10分)

第1題(1.0分)題號(hào):1497

字符串只能存放在字符型數(shù)組中.答案:Y第2題(1.0分)題號(hào):3

若有宏定義:#defineS(a,b)t=a;a=b;b=t由于變量t沒(méi)定義,

所以此宏定義是錯(cuò)誤的。答案:N第3題(1.0分)題號(hào):1245

在標(biāo)準(zhǔn)C中,"="是判斷兩個(gè)數(shù)是否相等.答案:N第4題(1.0分)題號(hào):1493

函數(shù)調(diào)用可以出現(xiàn)在執(zhí)行語(yǔ)句中,但不能出現(xiàn)在表達(dá)式中.答案:N第5題(1.0分)題號(hào):1490

strcat(s1,s2)函數(shù)是將字符串s1復(fù)制到字符串s2中答案:N第6題(1.0分)題號(hào):21

語(yǔ)句scanf("%7.2f",&a);是一個(gè)合法的scanf函數(shù)。答案:N第7題(1.0分)題號(hào):1507

函數(shù)若無(wú)返回值,則它一定無(wú)形參.答案:N第8題(1.0分)題號(hào):1

參加位運(yùn)算的數(shù)據(jù)可以是任何類(lèi)型的數(shù)據(jù)。答案:N第9題(1.0分)題號(hào):1491

靜態(tài)外部變量只在本文件內(nèi)可用.答案:Y第10題(1.0分)題號(hào):1243

C語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言.答案:Y二、單項(xiàng)選擇共30題(共計(jì)30分)

第1題(1.0分)題號(hào):3092

語(yǔ)句while(!E);中的表達(dá)式!E等價(jià)于().

A:E==0

B:E!=1

C:E!=0

D:E==1

答案:A第2題(1.0分)題號(hào):688

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

A:0

B:1

C:2

D:3

答案:D第3題(1.0分)題號(hào):652

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

A:整型常量

B:整型表達(dá)式

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

D:任何類(lèi)型的表達(dá)式

答案:C第4題(1.0分)題號(hào):142

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

main()

{inti=010,j=10;

printf("%d,%d\n",++i,j--);

}

A:11,10

B:9,10

C:010,9

D:10,9

答案:B第5題(1.0分)題號(hào):3075

設(shè)intx=1,y=1;表達(dá)式(!x||y--)的值是().

A:0

B:1

C:2

D:-1

答案:B第6題(1.0分)題號(hào):477

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

A:enuma={sum,mon,tue};

B:enuma{sum=9,mon=-1,tue};

C:enuma={"sum","mon","tue"};

D:enuma{"sum","mon","tue"};

答案:B第7題(1.0分)題號(hào):131

若k為int型變量,則以下程序段的執(zhí)行結(jié)果是()。

k=-8567;printf("|%06D|\n",k);

A:格式描述符不合法,輸出無(wú)定值

B:輸出為|%06D|

C:輸出為|0-8567|

D:輸出為|-8567|

答案:B第8題(1.0分)題號(hào):3106

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

式的值為"假",則以下不能滿足要求的表達(dá)式是().

A:A%2==1

B:!(A%2==0)

C:!(A%2)

D:A%2

答案:C第9題(1.0分)題號(hào):376

在C語(yǔ)言中,能代表邏輯值“真”的是()。

A:True

B:大于0的數(shù)

C:非0整數(shù)

D:非0的數(shù)

答案:D第10題(1.0分)題號(hào):592

能正確表示邏輯關(guān)系:"a≥10或a≤0"的C語(yǔ)言表達(dá)式是()。

A:a>=10ora<=0

B:a>=0|a<=10

C:a>=10&&a<=0

D:a>=10‖a<=0

答案:D第11題(1.0分)題號(hào):93

以下運(yùn)算符中,優(yōu)先級(jí)最高的運(yùn)算符是()。

A:?:

B:++

C:&&

D:,

答案:B第12題(1.0分)題號(hào):88

下列字符序列中,可用作C標(biāo)識(shí)符的一組字符序列是()。

A:S.b,sum,average,_above

B:class,day,lotus_1,2day

C:#md,&12x,month,student_n!

D:D56,r_1_2,name,_st_1

答案:D第13題(1.0分)題號(hào):2981

下列標(biāo)識(shí)符中,不合法的C語(yǔ)言用戶自定義標(biāo)識(shí)符是().

A:printf

B:enum

C:_

D:sin

答案:B第

溫馨提示

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