浙江理工大學(xué)C程序設(shè)計(jì)試題07_第1頁(yè)
浙江理工大學(xué)C程序設(shè)計(jì)試題07_第2頁(yè)
浙江理工大學(xué)C程序設(shè)計(jì)試題07_第3頁(yè)
浙江理工大學(xué)C程序設(shè)計(jì)試題07_第4頁(yè)
浙江理工大學(xué)C程序設(shè)計(jì)試題07_第5頁(yè)
已閱讀5頁(yè),還剩4頁(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)介

浙江理工大學(xué)C程序設(shè)計(jì)試題(七)一、判斷題(判斷下列各題,正確的在題后括號(hào)內(nèi)打“√”,錯(cuò)的打“×”。每小題1分,共10分)

1.C語(yǔ)言源程序是可以用來(lái)直接運(yùn)行的程序。(

)

2.C語(yǔ)言中以%x開(kāi)頭的數(shù)是十六進(jìn)制整數(shù)。(

)

3.C程序中的變量,必須先定義(聲明),才能使用。(

)

4.在C程序中,9ab是非法的用戶標(biāo)識(shí)符。(

)

5.C語(yǔ)句必須用一個(gè)分號(hào)作為結(jié)束。(

)

6.do??_while語(yǔ)句構(gòu)成的循環(huán)不能用break語(yǔ)句退出。(

)

7.scanf函數(shù)是C語(yǔ)言的標(biāo)準(zhǔn)輸入函數(shù)。(

)

8.C程序的main函數(shù)不能有參數(shù)。(

)

9.在函數(shù)內(nèi)部定義的變量稱為局部變量。(

)

10.用#include包含的頭文件的后綴必須是.h。(

)二、單項(xiàng)選擇題(在每小題的四個(gè)備選答案中,選出一個(gè)正確答案,并將正確答案的序號(hào)填在題干的括號(hào)內(nèi)。每小題1分,共20分)

1.C語(yǔ)言程序的三種基本結(jié)構(gòu)是(

)結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。

A.順序B.遞歸

C.轉(zhuǎn)移D.嵌套

2.以下選項(xiàng)中正確的實(shí)型常量是(

)。

A.0B.-10

C.0.19D.1.9×102

3.在C語(yǔ)言程序中,用關(guān)鍵字(

)定義長(zhǎng)整型變量。

A.longB.float

C.doubleD.char

4.十進(jìn)制數(shù)8的八進(jìn)制數(shù)是(

)。

A.11B.010

C.8D.08

5.(

)不是合法的C語(yǔ)句。

A.{intj;j++;}B.{intj;j++;;}

C.{intj;;j++;}D.{floatj=0;j++;}

6.若變量a,b已正確定義并賦值,符合C語(yǔ)言語(yǔ)法的表達(dá)式是(

)。

A.a=b=a+1B.a≤b

C.a≥bD.a≠b

7.對(duì)以下的scanf語(yǔ)句,正確的輸入方式是(

)。

intk1,k2,k3,k4;

scanf(″%d%d%d%d″,&k1,&k2,&k3,&k4);

A.102030,40B.10203040

C.10,203040D.102030,40

8.表達(dá)式!x等效于(

)。

A.x==1B.x==0

C.x!=1D.x!=0

9.要定義字符型變量a并賦初值,(

)是正確的。

A.chara=’3’;B.chara=”3”;

C.chara=%;D.chara=*;

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

)。

calc(exp1,(exp3,exp4,exp5));

A.1B.2

C.3D.4

11.下列語(yǔ)句定義整型指針p1、p2,(

)是正確的。

A.intp1,p2;B.int*p1,*p2;

C.int*p1,p2;D.int**p1,p2;

12.若變量已正確定義并且指針p已經(jīng)指向變量x,則*&x相當(dāng)于(

)。

A.xB.p

C.&xD.&*p

13.數(shù)組定義為“inta[4];”,表達(dá)式(

)是錯(cuò)誤的。

A.*aB.a[0]

C.aD.a++

14.數(shù)組定義為inta[2][3]={1,2,3,4,5,6},數(shù)組元素(

)的值為1。

A.a[1][2]B.a[1][1]

C.a[2][3]D.a[0][0]

15.表達(dá)式strlen(”hello”)的值是(

)。

A.4B.5

C.6D.7

16.要調(diào)用字符串函數(shù)時(shí),在#include命令行中應(yīng)包含(

)。

A.”stdio.h”B.”string.h”

C.”math.h”D.”ctype.h”

17.若變量已正確定義且k的值是4,計(jì)算表達(dá)式(j=k++)后,(

)是正確的。

A.j=4,k=5B.j=4,k=4

C.j=5,k=4D.j=5,k=5

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

)。

A.%B./

C.!D.**

19.若有charfname[]=″infile.dat″;,則為讀而打開(kāi)文本文件infile.dat的正確寫(xiě)法是(

)。

A.fopen(infile.dat,″r″)

B.fopen(″infile.dat″,″r″)

C.fopen(fname,″r″)

D.fopen(″fname″,″r″)

20.下列運(yùn)算符中,優(yōu)先級(jí)從高到低依次為(

)。

A.&&,!,||B.||,&&,!

C.&&,||,!D.!,&&,||

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

1.表達(dá)式(4/5*(float)3+(float)3*4/5)的值為_(kāi)_____。

2.下列程序段的輸出結(jié)果是______。

#include<stdio.h>

printf(″%d″,NULL);

3.表達(dá)式((4|1)&3)的值為_(kāi)_____。

4.下列程序段的輸出結(jié)果是______。

#defineM(x,y)(x*y)

printf(″%d″,M(2,3+4));

5.下列程序段的輸出結(jié)果是______。

charc=’a’;intk=4;

switch(c){

case‘a(chǎn)’:k=1;

case‘b’:k=2;

case‘c’:k=3;

}

printf(″%d″,k);

6.下列程序段的輸出結(jié)果是______。

intk=10;

if(k<0)printf(“%d”,k<0);

elseprintf(“%d”,k>=0);

7.下列程序段的輸出結(jié)果是______。

intx=3;

if(x=5)x++;

printf(″%d\n″,x);

8.以下程序段的輸出結(jié)果是______。

intk,sum=0;

for(k=5;k<10;k++)

sum+=k;

printf(”%d”,sum);

9.對(duì)于以下遞歸函數(shù)f,調(diào)用f(4)的返回值是______。

intf(intn)

{

if(n)returnf(n-1)+n;

elsereturnn;

}

10.下列程序段的輸出結(jié)果是______。

staticchars[]=″window″;

printf(″%s″,s+3);

四、閱讀理解題(閱讀下列程序或程序段,寫(xiě)出運(yùn)行結(jié)果,每小題4分,共20分)

1.以下程序段的輸出結(jié)果是______。

intk=10;

while(k=0)k=k-1;

printf(″%d#″,k);

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

#include<stdio.h>

main()

{intk;

for(k=4;k>=1;k--)fun();

}

fun()

{staticintm=0;

m++;

printf(”%d#”,m);

}

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

#include<stdio.h>

intc;

func(int*a,intb)

{c=(*a)*b;*a=b-1;b++;

return(*a+b+1);

}

main()

{inta=4,b=2,p=0;

p=func(&b,a);

printf(″%d,%d,%d,%d#″,a,b,c,p);

}

4.若輸入afds2008b3c<回車>,則以下程序的輸出結(jié)果是______。

#include<stdio.h>

voidmain()

{

intn;

charch;

do{

ch=getchar();

}while(ch<′0′||ch>′7′);

n=0;

do{

n++;

ch=getchar();

}while(ch>=′0′&&ch<=′7′);

printf(″%d#″,n);

}

5.若head是node類型的全程量,以head為頭指針的鏈表各節(jié)點(diǎn)的值如下圖所示,則調(diào)用fun(head)返回值是______。

structnode{

intnum;

structnode*next;

}

intfun(structnode*p)

{intk=0;

structnode*pp=p;

while(pp!=NULL){

if((pp->num)%2==0)k+=pp->num;

pp=pp->next;

}

return(k);

}

五、程序填空題(閱讀程序,在______處填入適當(dāng)?shù)膬?nèi)容,使程序變得完整,第1小題6分,第2小題4分,共10分)

1.讀入n(n<=10)個(gè)整數(shù)并放入一個(gè)數(shù)組r中,統(tǒng)計(jì)并輸出比相鄰元素小的數(shù)組元素的個(gè)數(shù)。

#include″stdio.h″

voidmain()

{

intk,count,n,r[10];

scanf(″%d″,&n);

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

scanf(″%d″,&r[k]);

______;

for(k=1;k<n-1;k++)

if(______)count++;

if(______)count++;

if(r[n-1]<r[n-2])count++;

printf(″count=%d\n″,count);

}

2.統(tǒng)計(jì)當(dāng)前目錄下文本文件data.txt中數(shù)字字符(‘0’到‘9’)出現(xiàn)的次數(shù)。

#include<stdio.h>

voidmain()

{______;

charch;intcount=0;

if((fp=fopen(″data.txt″,″r″))==NULL){

printf(″不能打開(kāi)文件data.txt!\n″);

exit(0);

}

while((ch=______(fp))!=EOF)

if(ch<=’9’&&ch>=’0’)count++;

printf(″%d″,count);

fclose(fp);

}

六、編程題(每小題10分,共20分)

1.sum=1+3+5+7+9+……,輸入正整數(shù)n,求sum的前n項(xiàng)和。

2.輸入一個(gè)正整數(shù)m,如果m是素?cái)?shù),輸出“Yes”,否則,輸出“No”。要求定義并調(diào)用函數(shù)isprime(x)來(lái)判斷x是否為素?cái)?shù)(素?cái)?shù):除了1和此數(shù)本身之外,不能被其它整數(shù)整除的自然數(shù),1不是素?cái)?shù),2是素?cái)?shù)),在下面空出的位置完成程序,不能定義新的變量,可不用已定義的某些變量。

#include<stdio.h>

#include<math.h>

voidmain()

{

intm;}

intisprime(intx)

{

inti,m;}浙江理工大學(xué)C程序設(shè)計(jì)試題(七) (一)、判斷題(每小題1分,滿分10分)(1(2(3(4(5(6)(7)(8(9(10BAAAABABAB(二)、單選題(每小題2分,滿分20分)(11)(12)(13)(14)(15)(16)(17)(18)(19)(20)ACABDABDBB(21)(22)(23)(24)(25)(26)(27)(28)(29)(30)BADDBBAACD三、填空題(每小題2分,共20分)

1.2.400000

2.0。

3.1

4.10

5.3

6.1

7.6

8.359.10

10.dow

四、閱讀理解題(閱讀下列程序或程序段,寫(xiě)出運(yùn)行結(jié)果,每小題4分,共20分)

1.0

2.1#2#3#4#

3.4,3,8,9#4.3#

5.題目不完整

五、程序填空題(閱讀程序,在______處填入適當(dāng)?shù)膬?nèi)容,使程序變得完整,第1小題6分,第2小題4分,共10分)

1.讀入n(n<=10)個(gè)整數(shù)并放入一個(gè)數(shù)組r中,統(tǒng)計(jì)并輸出比相鄰元素小的數(shù)組元素的個(gè)數(shù)。

#include″stdio.h″

voidmain()

{

intk,count,n,r[10];

scanf(″%d″,&n);

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

scanf(″%d″,&r[k]);

count=0; //1

for(k=1;k<n-1;k++)

if(r[k]<r[k-1]||r[k]<r[k+1])count++;//2

if(r[0]<r[1])count++;//3

if(r[n-1]<r[n-2])count++;

printf(″count=%d\n″,count);

}

2.統(tǒng)計(jì)當(dāng)前目錄下文本文件data.txt中數(shù)字字符(‘0’到‘9’)出現(xiàn)的次數(shù)。

#include<stdio.h>

voidmain()

{FILE*fp;//1

charch;intcount=0;

if((fp=fopen(″data.txt″,″r″))==NULL){

printf(″不能打開(kāi)文件data.txt!\n″);

exit(0);

}

while((ch=fgetc(fp))!=EOF)//2

if(ch<=’9’&&ch>=’0’)count++;

pri

溫馨提示

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