C語(yǔ)言期末考試模擬試卷1_第1頁(yè)
C語(yǔ)言期末考試模擬試卷1_第2頁(yè)
C語(yǔ)言期末考試模擬試卷1_第3頁(yè)
C語(yǔ)言期末考試模擬試卷1_第4頁(yè)
C語(yǔ)言期末考試模擬試卷1_第5頁(yè)
已閱讀5頁(yè),還剩17頁(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)介

試卷編號(hào):11201

所屬語(yǔ)言:C語(yǔ)言

試卷方案:c語(yǔ)言期末考試

試卷總分:100分

共有題型:4種

一、單項(xiàng)選擇共30題(共計(jì)60分)

第1題(2.0分)

設(shè)有定義:intk=0;,以下選項(xiàng)的四個(gè)表達(dá)式中與其他三個(gè)表達(dá)式的

值不相同的是(A).

A:k++B:k+=1C:++kD:k+1

第2題(2.0分)

已知inti=5,執(zhí)行語(yǔ)句i+=++i后,i的值是(C).

A:10B:llC:12D:A、B、C都不對(duì)

第3題(2.0分)

以下程序的功能是:給r輸入數(shù)據(jù)后,計(jì)算半徑為r的圓面積s.程序

在編譯時(shí)出錯(cuò).

ftinclude<stdio.h>

voidmain()

/*Beginning*/

{intr;floats;

scanf("%d",&r);

s=p*r*r;printf(,,s=%f\n,\s);

出錯(cuò)的原因是(D).

A:注釋語(yǔ)句書寫位置錯(cuò)誤B:存放圓半徑的變量r不應(yīng)該定義為整型

C:輸出語(yǔ)句中格式描述符非法

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

第4題(2.0分)

〃\\\〃ABC\〃\\〃的長(zhǎng)度是(B).

A:llB:7C:5D:3

第5題(2.0分)

已知intj,i=l;,執(zhí)行語(yǔ)句j=-i++;后,j的值是(D).

A:1B:2C:-lD:-2

第6題(2.0分)

有以下程序:

ftinclude<stdio.h>

voidmain()

{ints=0,a=l,n;

scanf&n);

do{

s+=l;a=a-2;

}while(a!=n);

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

若要使程序的輸出值為2,則應(yīng)該從鍵盤輸入給n的值是(A).

A:-lB:-3C:-5D:0

第7題(2.0分)

執(zhí)行以下程序后,輸出的結(jié)果是(C).

ftinclude<stdio.h>

voidmain()

{inty=10;

do{

y~~;

}while(--y);

printf("%d\n”,y--);

)

A:-lB:1C:8D:0

第8題(2.0分)

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

ftinclude<stdio.h>

voidmain()

{inti,j;

for(i=0,j=l;i<=j+l;i+=2,j--)printf("%d\n”,i);

A:3B:2C:1D:0

第9題(2.0分)

有以下程序段:

intk=0;

while(k=l)k++;

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

A:無(wú)限次B:有語(yǔ)法錯(cuò)誤,不能執(zhí)行

C:1次也不執(zhí)行口:執(zhí)行1次

第10題(2.0分)

有以下程序

ftinclude<stdio.h>

voidmain()

{intm,n,p;

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

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

)

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

的值為789,則正確的輸入是(D).

A:m=123n=456p=789B:m=123n=456p=789

C:m=123,n=456,p=789D:123456789

第11題(2.0分)

設(shè)變量已正確定義,以下能正確計(jì)算£二畝的程序段是(D)

A:f=O;

for(i=l;i<=n;i++)f*=i;

for(i=l;i<n;i++)f*=i;

C:f=l;

for(i=n;1>1;i++)f*=i;

D:f=l;

for(i=n;i>=2;i--)f*=i;

第12題(2.0分)

在下列程序中,沒(méi)有構(gòu)成死循環(huán)的程序段是(A).

A:inti=100;

inti=100;

while(1)

{i=i%100+l;

if(i>100)break;}

B:intk=1000;

do

{++k;}while(k>=10000);

C:for(;;);

D:ints=36;while(s);一s;

第13題(2.0分)

有如下程序:

ftinclude<stdio.h>

voidmain()

{intn=9;

while(n>6)

{n--;printf('%d",n);}

)

該程序段的輸出結(jié)果是(A).

A:987B:876C:8765D:9876

第14題(2.0分)

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

ftinclude<stdio.h>

voidmain()

{intx=10,y=10,i;

for(i=0;x>8;y=++i)

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

)

A:10192B:9876

C:10990D:101091

第15題(2.0分)

有如下程序:

#include<stdio.h>

voidmain()

{intn[5]={0,0,0},i,k=2;

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

,,,,

{printf(%d\n,n[k]);}

)

該程序的輸出結(jié)果是(D).

A:不確定的值B:2C:1D:0

第16題(2.0分)

下列程序執(zhí)行后的輸出結(jié)果是(A).

#include<stdio.h>

voidmain()

{chararr[2][4];

strcpy(arr,"you");strcpy(arr[1],;

arr[0][3]=,&';

printf(〃%s\n”,arr);

)

A:you&meB:youC:meD:err

第17題(2.0分)

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

#include<stdio.h>

voidmain()

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

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

A:1,5,9,B:1,4,7,C:3,5,7,D:3,6,9,

第18題(2.0分)

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

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}};

第19題(2.0分)

以下能正確定義數(shù)組并正確賦初值的語(yǔ)句是(D).

A:intN=5,b[N][N];B:inta[l][2]={{1},{3}};

C:intc[2][]={{1,2},{3,4}};

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

第20題(2.0分)

有以下程序:

inta=4;

intf(intn)

intt=0;staticinta=5;

if(n%2){inta=6;t+=a++;}

else{inta=7;t+=a++;}

returnt+a++;

main()

(

ints=a,i=0;

for(;i<2;i++)s+=f(i);

printf("d\n",s);

)

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

A:24B:28C:32D:36

第21題(2.0分)

以下正確的函數(shù)定義形式為(A)

A:doublefun(intx,inty)B:doublefun(intx;y)

C:doublefun(intx;inty)D:doublefun(intx,y)

第22題(2.0分)

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

A:return語(yǔ)句中的表達(dá)式類型所決定的

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

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

D:在定義該函數(shù)時(shí)所指定的函數(shù)類型所決定的

第23題(2.0分)

有以下程序:

voidswapl(intc0[],intcl[])

{intt;

t=c0[0];c0[0]=cl[0];cl[0]=t;

}

voidswap2(int*c0,int*cl)

{intt;

t=*c0;*c0=*cl;*cl=t;

}

main()

{inta[2]={3,5},b[2]={3,5};

swapl(a,a+1);swap2(&b[0],&b[l]);

z,,,

printf(%d%d%d%d\n,a[0],a[l],b[0],b[l]);

}

A:3553B:5335

C:3535D:5353

第24題(2.0分)

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

amovep(int*p,int(*a)[3],intn)

{inti,j;

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

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

{*p=a[i][j];

p++;}

main()

{int*p,a[3][3]={{l,3,5},{2,4,6}};

p=(int*)malloc(100);

amovep(p,a,3);

printf(,?%d%d\n”,p[2],p[5]);

free(p);

)

A:56B:25C:34D:程序錯(cuò)誤

第25題(2.0分)

有以下函數(shù):

fun(char*a,char*b)

{while((*a!=’\0')&&(*b!='\0')&&(*a==*b))

{a++;b++;}

return(*a-*b);}

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

A:計(jì)算a和b所指字符串的長(zhǎng)度之差

B:將b所指字符串復(fù)制到a所指字符串中

C:將b所指字符串連接到a所指字符串后面

D:比較a和b所指字符串的大小

第26題(2.0分)

有以下程序:

fun(charp[][10])

{intn=0,i;

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

if(p[i][0]=='T)n++;

returnn;

)

main()

{char

str[][10]={〃Mon","Tue","Wed",〃Thu〃,〃Fri〃,"Sat","Sun"};

printf("%d\n”,fun(str));

)

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

A:1B:2C:3D:0

第27題(2.0分)

有以下程序:

main()

{charstr口[10]={"China","Beijing"},*p=str;

printf("%s\n”,p+10);

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

A:ChinaB:BeijingC:ngD:ing

第28題(2.0分)

有以下程序:

ftdefinef(x)(x*x)

main()

{intil,i2;

il=f(8)/f(4)i2=f(4+4)/f(2+2)

printf("%d,%d\n”,il,i2);

)

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

A:64,28B:4,4C:4,3D:64,64

第29題(2.0分)

有以下程序:

voidchange(intk[]){k[0]=k[5];}

main()

{intx[10]={l,2,3,4,5,6,7,8,9,10},n=0;

while(n<=4){change(&x[n]);n++;}

for(n=0;n<5;n++)printfx[n]);

printf("\n");

}

A:678910B:13579C:12345D:62345

第30題(2.0分)

在以下程序中,能夠通過(guò)調(diào)用函數(shù)fun(),使main()函數(shù)中的指針變

量P指向一個(gè)合法的整型單元的是().

A:main()

int*p;

fun(p);…}

intfun(int*p)

{ints;

P=&s;}

B:main()

{int*p;

fun(&p);…}

intfun(int**p)

{ints;

*p=&s;}

C:#include<stdlib.h>

main()

{int*p;

fun(&p);…}

intfun(int**p)

{*p=(int*)malloc(2);}

D:#include<stdlib.h>

main()

{int*p;

fun(p);???)

intfun(int*p)

{p=(int*)malloc(sizeof(int));}

二、程序填空共1題(共計(jì)10分)

第1題(10.0分)

【程序填空】

功能:計(jì)算平均成績(jī)并統(tǒng)計(jì)90分以上人數(shù)。

main()

(

intn,m;floatgrade,average;

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

average=n=m=[?];

while(1)

{

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

[?!&grade);

if(grade<0)break;

n++;

average+=grade;

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

if(grade<90)[?);

m++;

)

if(n)printf("%.2f%d\n”,average/n,m);

)

三、程序改錯(cuò)共1題(共計(jì)10分)

第1題(10.0分)

【程序改錯(cuò)】

功能:首先把b所指字符串中的字符按逆序存放,然后將a所指字

符串中的字符和b所指字符串中的字符,按排列的順序交叉

合并到c所指數(shù)組中,過(guò)長(zhǎng)的剩余字符接在c所指數(shù)組的尾部。

例如:當(dāng)a所指字符串中的內(nèi)容為“abcdefg",b所指字符串中的

內(nèi)容為“1234”時(shí),c所指數(shù)組中的內(nèi)容應(yīng)該為“a4b3c2dl

efg";而當(dāng)a所指字符串中的內(nèi)容為“1234”,b所指字符

串中的內(nèi)容為“abcdefg”時(shí),c所指數(shù)組中的內(nèi)容應(yīng)該為

“l(fā)g2f3e4dcba”。

ftinclude<conio.h>

ftinclude<stdio.h>

ftinclude<string.h>

voidfun(char*a,char*b,char*c)

(

inti,j;

charch;

i=0;

j=strlen(b)-l;

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

while(i>j)

{

ch=b[i];

b[i]=b[j];

b[j]=ch;

i++;j—;

)

/**********F0UND**********/

while(*a&&*b)

if(*a)

(

*c=*a;

c++;

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

a+;

}

if(*b)

(

*c=*b;

c++;

b++;

}

)

*c=0;

)

main()

charsl[100],s2[100],t[200];

clrscr();

printf('\nEntersistring:")

scanfsi

溫馨提示

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