版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
C語言程序設(shè)計(jì)寒假作業(yè)
說明:
1、此次作業(yè)要求打?。ㄕ疵娲蛴。┏鰜砗笾苯釉诖蛴〖埳洗痤},開學(xué)第1周理論課時(shí)帶
來;
2、寒假作業(yè)分三部分,其中第2、3部分為學(xué)期末抽查考試試卷和期末考試試卷,大家認(rèn)真
做一遍,開學(xué)第一周公布答案;
3、開學(xué)第一周實(shí)驗(yàn)課測試指法,請大家寒假期間練習(xí);
4、希望同學(xué)們假期復(fù)習(xí)鞏固所學(xué)內(nèi)容,學(xué)有余力的同學(xué)盡量做預(yù)習(xí)工作。
第一部分綜合練習(xí)題
一、單選題
1、下面關(guān)于C語言特點(diǎn)的描述,不正確的是()?
A、C語言兼有高級語言和低級語言的雙重特點(diǎn),執(zhí)行效率高
B、C語言既可以用來編寫應(yīng)用程序,又可以用來編寫系統(tǒng)軟件
C、C語言是一種結(jié)構(gòu)式模塊化程序設(shè)計(jì)語言
D、C語言的可移植性較差
2、C語言規(guī)定,在一個(gè)源程序中,main函數(shù)的位置()。
A、必須在最開始B、可以任意C、必須在最后I)、必須在系統(tǒng)調(diào)用的庫函數(shù)的后面
3、下列說法中正確的是()o
A、C程序書寫時(shí),不區(qū)分大小寫字母B、C程序書寫時(shí),一行只能寫一個(gè)語句
C、C程序書寫時(shí),一個(gè)語句可分成幾行書寫D、C程序書寫時(shí)每行必須有行號(hào)
4、以下關(guān)于算法的說法中,錯(cuò)誤的是()。
A、一個(gè)算法應(yīng)包含有限個(gè)步驟
B、在計(jì)算機(jī)上實(shí)現(xiàn)的算法是用來處理數(shù)據(jù)對象的
C、算法的目的是為了求解
I)、算法中指定的操作,不能通過已經(jīng)實(shí)現(xiàn)的基本運(yùn)算執(zhí)行有限次后實(shí)現(xiàn)
5、下列數(shù)據(jù)中,不合法的C語言實(shí)型數(shù)據(jù)是()o
A、0.123B、123e3C、2.1e3.5D、789.0
6、若變量a、i已正確定義,且i已正確賦值,以下屬于合法的C語句是()o
A、a==lB>++i;CNa=a++=5;D、a=int(i);
7、已有定義inta=6;則執(zhí)行語句a+=a?=a*a;后,a的值為()°
A、36B、0C、-24D、-60
8、若有以下程序段,其輸出結(jié)果是()。
inta=0,b=0,c=0;
c=(a-=a-5),(a-=3,++b);
printff4%d,%d,%d\nM,a,b,c);
A、0,0,40B、2,1,5C、-10,-3,-10D、3,3,-10
9、有以下定義:inti=10,j=l;執(zhí)行語句printf("%d,%d\n”,i“,++j);后輸出結(jié)果是()o
A、9,2B、10,2C>9,1D、10,1
10、字符串”\N\065\xff\n”的長度為()。
A、5B、14C、8D、輸出項(xiàng)不合法,無正常輸出
11、已有定義:chare;執(zhí)行賦值語句c=(R?H)/2+,A,;后,變量c的值為()o
A、MB、NC、OD、Q
12、以下4個(gè)選項(xiàng)中,不能看做一條語句的是()o
A、;B、a=5,b=2.5,c=3.6;C、if(a<5);D、if(b!=5)x=2;y=6;
13、設(shè)a、b和c都是int變量,且a=3,b=4,c=5;則以下的表達(dá)式中,值為0的表達(dá)式是()。
A、a&&bB、a<=bC、allb+c&&b-cD、!((a<b)&&!clll)
14、若有定義語句inta,b;doublex;則下列選項(xiàng)中沒有錯(cuò)誤的是()。
A、switch(x%2)B、switch((int)x/2.0)
{case0:a++;break;case0:a++;break;
第一部分綜合練習(xí)題
case1:b++;break;case1:b++;break;
default:a++;b++;default:a++;b++;
))
C、switch((int)x%2)D、switch((int)(x)%2)
{case0:a++;break;{case0.0:a++;break;
case1:b++;break;case1.0:b++;break;
default:a++;b++;default:a++;b++;
)
15、以下程序段的輸出結(jié)果是()o
main()
{intx,y,z;
x=0;y=2;z=3;
switch(x)
{case0:switch(y==2)
{case1:printf(M*M);break;
case2:printf(H%H);break;
)
case1:switch(z)
{case1:printf(n$n);
case2:printf(M*M);break;
default:printf(H#H);
)
)
)
A、*B、%C、$*D、*#
16、以下程序的輸出結(jié)果是()o
main()
{inta=45,b=40,c=50,d;
d=a>=30?b:c;
switch(d)
{case30:printf(M%dn,a);
case40:printf(n%dM,b);
case50:printf(M%dH,c);break;
default:printf(H#M);
)
)
A、304050#B、304050C、4050D、#
17、以下程序的輸出結(jié)果是()o
main()
inta,b,c,x=35;
2
第一部分綜合練習(xí)題
a=b=c=O;x=35;
if(!a)
X-;
elseif(b);
if(c)
else
x=4;
printf(n%d\n'\x);
}
A、35B、4C>3D、4
18、對以下循環(huán):for(a=0,b=0;(b!=123)&&(a<=4);a++);說法正確的是()。
A、無限循環(huán)B、循環(huán)次數(shù)不定C、執(zhí)行4次D、執(zhí)行5次
19、在下列程序中,while循環(huán)的循環(huán)次數(shù)是()°
main()
{inti=0;
while(i<10)
{if(i<l)continue;
if(i==5)break;
i++;
)
)
A、1B、10C>6D、死循環(huán)、不能確定次數(shù)
20、以下程序的輸出結(jié)果是()o
main()
{inti=0,a=0;
while(i<20)
{for(;;)
{if((i%10)==0)
break;
elsei-;
)
i+=ll;
a+=i;
)
printf(n%d\nn,a);
)
A、21B、32C、33D、11
3
第一部分綜合練習(xí)題
21、當(dāng)輸入為"quert?”時(shí),下面程序的執(zhí)行結(jié)果是()?
main()
{vvhile(putchar(getchar())!=,?r);}
A、quertB、RvfsuC、quert?D、rvfsu?
22、以下能正確計(jì)算1X2X3X…X10的程序段是()o
A、do{i=l;s=l;s=s*i;i++;}while(i<=10);B、do{i=l;s=0;s=s*i;i++;}while(i<=10);
C>i=l;s=l;do{s=s*i;i++;}while(i<=10);D>i=l;s=0;do{s=s*i;i++;}while(i<=10);
23、以下能對一維數(shù)組a進(jìn)行正確初始化的語句是()。
A、inta[lOJ=(O,O,O,O,O);B、inta[10]={};C、inta[J={0};D、inta[10]=Habcdefgn;
24、以下不能給數(shù)組的首元素賦值的語句是()。
A^inta[2]={l};B、inta[2]={l*2};C、inta[2];scanf(a%dn,a);D、inta[2];a[l]=l;
25、設(shè)有charstr[10];下列語句正確的是()。
A,scanf("%s",&str);B、printf("%c",str);C、printf("%s",str[O]);D、printf("%s",str);
26、以下不能對二維數(shù)組a進(jìn)行正確初始化的語句是()。
Asinta[2][3]={0};B、inta[][3]={{l,2},{0});
C、inta[2J[3]={{l,2},{3,4},{5,6}};D、inta[J[3]={1,2,3,4,5,6);
27、設(shè)有兩字符串"Beijing"、"China”分別存放在字符數(shù)組strl[20],str2[20]中,下面語句中能把“China”連接到
"Beijing”之后的為()。
A、strcpy(strl,str2);B、strcpy(strl,"China");C、strcat(strl,"China");D、strcat("Beijing",str2);
28、C語言規(guī)定:函數(shù)返回值類型是由()。
A、return語句中的表達(dá)式類型決定B、調(diào)用該函數(shù)時(shí)的主調(diào)函數(shù)類型決定
C、調(diào)用該函數(shù)時(shí)系統(tǒng)臨時(shí)決定D、定義該函數(shù)時(shí)所指定的函數(shù)類型決定
29、下面函數(shù)調(diào)用語句func((expl,exp2),(exp3,exp4,exp5))中實(shí)參的個(gè)數(shù)為()。
A、1B、2C、4D、5
30、建立函數(shù)的目的之一是()?
A、提高程序的執(zhí)行效率.B、提高程序的可讀性C、減少程序的篇幅D、減少程序文件所占內(nèi)存
31、有如下程序,該程序的輸出的結(jié)果是()。
intrunc(inta,intb)
{return(a+b);}
main()
{intx=2,y=5,z=8,r;
r=func(func(x,y),z);
printf(“%d\n”,r);
)
A、12B、13C、14D、15
32、有如下程序,該程序的輸出結(jié)果是()。
longfib(intn)
{if(n>2)return(fib(n-l)+fib(n-2));
elsereturn(2);
)
4
第一部分綜合練習(xí)題
main()
{printf("%d\n”,fib(3));}
A、2B、4C、6D、8
33、以下函數(shù)的功能是:通過鍵盤輸入數(shù)據(jù),為數(shù)組中的所有元素賦值。在下劃線處應(yīng)填入的是()。
#defineN10
voidarrin(intx[N])
{inti=0;
while(i<N)
scanf(n%dM,);
A^x+IB、&x[i+l]C、x+(i++)D、&x[++i]
34、有如下程序段,運(yùn)行的結(jié)果為()o
intf(inta,intb);
main()
{inti=2,p,k=l;
p=f(i,++k);
printf(w%d,%dw,k,p);
)
intf(inta,intb)
{intc;
if(a>b)c=l;
elseif(a==b)c=0;
elsec=-l;
return(c);
)
A、1,0B、2,0C、2,-1D、1,1
35、以下程序的運(yùn)行結(jié)果是(
main()
{inta=2,i;
for(i=0;i<3;i++)
printf("%4d”,f(a));
}
f(inta)
{intb=0,c=3;
b++;C++;
return(a+b+c);
)
A、71013B、777C、7911D、789
二、編程題
5
第一部分綜合練習(xí)題
1、編程實(shí)現(xiàn)以下功能:求Sn=a+aa+aaa+…+aa…aaa(有n個(gè)a)之值,其中a是一個(gè)數(shù)字。例如:a=2,n=3,則
Sn=2+22+222=246?(其中的a,n由鍵盤輸入,輸入a、n的值分別為1和9)。
:#include<stdio.h>
intmain(void)
(
intcount=1,n=1;
doublesum=1;
do
(
n+=count;
sum+=1/(double)n;
count++;
)
while((1/(double)(n-1)-1/(double)n)>=10e-5);
printf("%lf",sum);
)
2、編程實(shí)現(xiàn)以下功能:有一分?jǐn)?shù)序列:2/1,3/2,5/3,8/5,13/8,21/13,求這個(gè)數(shù)列的前n(n>10,由鍵盤輸入20)
項(xiàng)之和。
#include<stdio.h>
main()
{inti,x,y,a;
floatsum=0;
x=2;
y=1;
for(i=1;i<20;i++)
(
sum+=(float)(x)/y;
//printf("%d/%d\n",x,y);
a=x;
x=x+y;
y=a;
}
printf("%7.5f\n",sum);
6
第一部分綜合練習(xí)題
3、編程實(shí)現(xiàn)以下功能:計(jì)算1020個(gè)西瓜幾天后能賣完(第一天賣了一半多兩個(gè),以后每天賣剩的一半多兩個(gè))。
#include<stdio.h>
voidmainO
(
intday,xl,x2;
day=O;
xl=1020;
while(xl>0)
{
x2=xl/2-2;
xl=x2;
day++;
)
printf(z/day=%d\n/z,day);
}
4、編程實(shí)現(xiàn)以下功能:在主函數(shù)中,由鍵盤輸入10個(gè)互不相同的整數(shù)存放在一維數(shù)組a中,從鍵盤上輸入數(shù)x,若x
屬于a數(shù)組,則將其從a中刪除。在主函數(shù)中,通過調(diào)用以下幾個(gè)自定義函數(shù)分別完成x的查找和刪除及刪除x前后
顯示a的元素值。自定義函數(shù)的首部及功能如下:
(1)voidmyout(intarr[],intn):該函數(shù)用于輸出含有n個(gè)整數(shù)的數(shù)組;
#include<iostream>
usingnamespacestd;
voidmyout(intarr[],intn);
intdelx(intarr[],intn,intx);
intmain()
(
cout?"請輸入10個(gè)互不相同的整數(shù):\n";
intarray[10];
for(inti=0;i<10;++i)
(
7
第一部分綜合練習(xí)題
inta(0);
cin?a;
array[i]=a;
cout?"請輸入數(shù)x:\n";
intx(0);
cin?x;
cout?"完整的數(shù)組元素:\n";
myout(array,sizeof(array)/sizeof(array[0]));
intarray_size=delx(array,sizeof(array)/sizeof(array[0]),x);
cout?"改變后的數(shù)組:\n";
myout(array,array_size);
system("pause");
return0;
)
⑵intdelx(intarr[],intn,intx):該函數(shù)用于刪除n個(gè)數(shù)組元素中的值等于x的元素,并返回刪除后數(shù)組元素的個(gè)數(shù)。
voidmyout(intarr[],intn)
(
for(inti=0;i<n;++i)
(
cout?arr[i]?"\t";
}
cout?"\n";
)
intdelx(intarr[],intn,intx)
(
for(inti=0;i<n;++i)
(
if(arr[i]==x)
{
for(intj=i;j<n-1;++j)
arrO]=arr[j+1];
arr[n-1]=x;
returnn-1;
returnn;
8
第一部分綜合練習(xí)題
9
第二部分2010-2011學(xué)年第一學(xué)期期末考試卷
一、單選題(每題1分,共30分)
1、以下敘述不正確的是()。
A、一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成B、?一個(gè)C源程序必須包含一個(gè)main函數(shù)
C、C程序的基本組成單位是函數(shù)D、在C程序中,注釋說明只能位于一條語句的后面
2、C語言程序經(jīng)過連接以后生成的文件名的后綴為(
A、.cB、.objC、.exeD、.cpp
3、C語言編譯程序的首要工作是()。
A、檢查C語言程序的語法錯(cuò)誤B、檢查C語言程序的邏輯錯(cuò)誤
C、檢查程序的完整性D、生成目標(biāo)文件
4、算法是指為解決某個(gè)特定問題而采取的確定且有限的步驟,下面不屬于算法的五個(gè)特性之一的是()。
A、確定性B、有窮性C、零個(gè)或多個(gè)輸出D、零個(gè)或多個(gè)輸入
5、以下不屬于結(jié)構(gòu)化程序設(shè)計(jì)三種基本結(jié)構(gòu)之一的是()。
A、順序B、遞歸C、循環(huán)D、選擇
6、下列可用于C語言用戶標(biāo)識(shí)符的一組是()。
A、void,define,WORDB>a3_b3,_123,CarC>For,-abc,IFCaseD、2a,DO,sizeof
7,若有說明語句:charc=,\72]則變量c()。
A、包含1個(gè)字符B、包含2個(gè)字符C、包含3個(gè)字符D、說明不合法,c的值不確定
8、當(dāng)c的值不為0時(shí),能正確將c的值賦給變量a和b的選項(xiàng)是()。
A、c=b=aB、(a=c)ll(b=c)C、(a=c)&&(b=c)D、a=c=b
9、若已經(jīng)定義好變量a,i且變量i已正確賦值,下列合法的語句是()。
A、a==lB、a=int(i);C>a=a++=5;D、++i;
10、設(shè)變量a是int型,f是float型,i是double型,則表達(dá)式10+'a'+i*f值的數(shù)據(jù)類型為()。
A、intB、floatC、doubleD、不確定
11、若變量已定義為float型,要通過語句scanf("%f%f%f",&a,&b,&c);給a賦予10.0,b賦予22.0,c賦予33.0,
下列不正確的輸入形式是()。
A、10〈回車>22〈回車>3女回車〉B、10.0,22.0,33.0v回車〉
C、10.0〈空格>22.0<空格>33.0〈回車〉D、10<Tab>22<Tab>33<回車〉
12、C語言中,定義PI為一個(gè)符號(hào)常量,下面正確的是()。
A.includePI3.14B.includePI3.14
C.#definePI3.14D.definePI3.14
13、定義了一個(gè)整型變量x,能正確表示x的值小于1或大于10的C表達(dá)式是().
A、x<lorx>10B、10<x<lC、x<lllx>10;D、x<l&&x>10;
14^已知intx=6,y=2,z;則執(zhí)行語句z=x=x>y;后,變量z的值為()?
A.0B.1C.4D.5
15、下面程序段的輸出結(jié)果是()。
intx=l,y=10;
if(x=y)printf("AAA");
elseprintf("BBB");
A、AAAB、BBBC、AAABBBD、不確定
10
第二部分2010-2011學(xué)年第一學(xué)期期末考試卷
16、下面程序段的輸出結(jié)果是()o
for(x=9;x>0;x-)
if(x%3!=0)
un
{printf(%dr-x);
continue;
A、741B、852C、963D、875421
17、下列說法中錯(cuò)誤的是()?
A^只能在循環(huán)體內(nèi)使用break語句
B、在循環(huán)體內(nèi)使用break語句可以使流程跳出本層循環(huán)體,從而提前結(jié)束本層循環(huán)
C、continue語句并沒有使整個(gè)循環(huán)終止
D、continue的作用是結(jié)束本次循環(huán),即跳過本次循環(huán)體中余下尚未執(zhí)行的語句,接著再一次進(jìn)行循環(huán)判斷
18、以下不能把字符串:Hello!賦給數(shù)組b的語句是()o
A、charb[10]={'H','e',T,T,'o','!'};B、charb[10];b="Hello!";
C、charb[10];strcpy(b,"Hello!");D、charb[10]="Hello!";
19、若有定義inta[]={l,23},b[3]={l,2,3};,表達(dá)式a==b的結(jié)果是()。
A、不能比較B、結(jié)果為真C、結(jié)果為假D、結(jié)果不確定
20、有字符數(shù)組charstr[3][20]={“111”,“222”,“333”};執(zhí)行以下語句后輸出的是()?
printf("%s\n",str[2]);
A、111B、222C、333D、輸出語句出錯(cuò)
21、已知:chara[20]="abc",b[20]="abcde”;則執(zhí)行以下語句后的輸出結(jié)果為().
printf("%d",strlen(strcpy(a,b)));
A、5B、6C、11D、以上答案都不正確
22、判斷字符串si不等于字符串s2,以下正確的是().
A、if(sl!=s2)B、if(strcmp(sl,s2)!=0)C、if(strcmp(sl,s2)>0)D、if(strcmp(sl,s2)<0)
23、下列描述中不正確的是()o
A、字符型數(shù)組中可以存放字符串B、可以對字符型數(shù)組進(jìn)行整體輸入、輸出
C、可以對整型數(shù)組進(jìn)行整體輸入、輸出D、不能通過賦值運(yùn)算符“=”對字符型數(shù)組進(jìn)行整體賦值
24、下列關(guān)于return語句的說法,正確的是()。
A、只能在除主函數(shù)之外的函數(shù)中出現(xiàn)一次B、必須在每個(gè)函數(shù)中都出現(xiàn)
C、在同一個(gè)函數(shù)中可以多次出現(xiàn)D、只能返回?cái)?shù)值類型的值
25、以下關(guān)于函數(shù)參數(shù)的說法正確的是()。
A、實(shí)參與其對應(yīng)的形參各占用獨(dú)立的存儲(chǔ)單元B、實(shí)參與其對應(yīng)的形參共占用一個(gè)存儲(chǔ)單元
C、形參是虛擬的,不占用存儲(chǔ)單元D、實(shí)參與對應(yīng)的形參同名時(shí)才共占用存儲(chǔ)單元
26、以下所列的函數(shù)首部定義中,正確的是()o
A、doublefun(intx,inty)B、doublefun(intx;inty)C、doublefun(intx,inty);D、double
fun(intx,y);
27、C語言規(guī)定,簡單變量做實(shí)參時(shí),它和對應(yīng)形參之間的數(shù)據(jù)傳遞方式為()o
A、地址傳遞B、單向值傳遞
11
第二部分2010-2011學(xué)年第一學(xué)期期末考試卷
C、由實(shí)參傳給形參,再由形參傳回給實(shí)參D、由用戶指定傳遞方式
28、數(shù)組名作為實(shí)參傳遞給形參時(shí),數(shù)組名被處理為()?
A、該數(shù)組的長度B、該數(shù)組的元素個(gè)數(shù)C、該數(shù)組的首地址D、該數(shù)組中各元素的值
29、以下關(guān)于c函數(shù)的定義與調(diào)用,正確的是()。
A、函數(shù)定義可嵌套,函數(shù)調(diào)用不可嵌套B、函數(shù)定義和函數(shù)調(diào)用都可以嵌套
C、函數(shù)定義不可以嵌套,函數(shù)調(diào)用可以嵌套D、函數(shù)定義和函數(shù)調(diào)用都不可以嵌套
30、關(guān)于C的函數(shù),以下敘述中正確的是()?
A、實(shí)參和形參可以起相同的名字,這樣可以節(jié)省存儲(chǔ)單元
B、調(diào)用函數(shù)時(shí),實(shí)參和形參的個(gè)數(shù)必須相同,對應(yīng)參數(shù)的數(shù)據(jù)類型也必須一致
C、所有函數(shù)都能被其他函數(shù)調(diào)用,而且主調(diào)函數(shù)必須在被調(diào)函數(shù)后面
D、函數(shù)中允許出現(xiàn)多個(gè)return語句,因此運(yùn)行程序后函數(shù)可以得到多個(gè)返回值
二、程序分析題(每題5分,共20分)
1、寫出以下程序運(yùn)行結(jié)果:
main()
{inta[3][3]={l,l,l,2,2,2,3,33},i=0,sum=0;
for(i=0;i<3;i++)
sum=sum+a[l][i];
printf(H%d\n,\sum);
)
2、寫出以下程序運(yùn)行的結(jié)果。
main()
{inta=7;
switch(a)
{case10:case9:a++;
case8:case7:a+=a;
case6:a+=3;break;
default:a+=4;
)
printf(na=%d\nM,a);
)
3、程序運(yùn)行后若從鍵盤輸入1357,寫出程序運(yùn)行的結(jié)果。
main()
{inta9b;
scanf(H%dn,&b);
while(b!=0)
{a=b%10;
b=b/10;
printf(H%dn,a);
12
第二部分2010-2011學(xué)年第一學(xué)期期末考試卷
4、以下程序運(yùn)行后若從鍵盤輸入GZ2010AsiaGames,寫出程序運(yùn)行結(jié)果。
main()
{voidmyf(charp[]);
chara[100];
gets(a);
myf(a);
puts(a);
}
voidmyf(charp[])
{inti=0;
while(p[i]!='\0,)
{while(p[i]>=,0'&&p[i]<='9,)
strcpy(p+i,p+i+l);
i++;
}
)
三、程序填空題(每空2分,共30分)
1、以下程序的功能是:給出年、月、日,計(jì)算出該日是該年的第幾天。請?zhí)羁胀晟瞥绦颉?/p>
main()
{intyear,month,day,d3ys,i9d;
printfC請輸入年,月,日:”);
scanf(n%d,%d,%dH,&year,&month,&day);
days=O;
for(i=l;i<month;i++)
{switch([11)
{casel:case3:case5:case7:case8:case10:case12:d=31;[2];
case4:case6:case9:casell:d=30;13};
case2:
if(year%4==0&&year%100!=0llyear%400==0)d=29;
elsed=28;
)
days+=d;
)
printf("%d年%4月%d日是該年的第%d天。\n”,year,month,day,【4】);
)
2、以下程序是通過調(diào)用自定義排序函數(shù)mysort對10個(gè)整數(shù)進(jìn)行升序排序并輸出。請?zhí)羁胀晟瞥绦?。此排序算?/p>
稱為【5】o
main()
{voidmysort(inta[],intn);
inti,x[10]={100,80,50,67,10,46,63,85,74,88};
13
第二部分2010-2011學(xué)年第一學(xué)期期末考試卷
for(i=0;i<10;i++)
printf(M%4dn,x[i]);
mysort([6],10);
printf(nThesortednumbers:\nH);
for(i=0;i<10;i++)
printf(,,%4dn,x[i]);
)
voidmysort(inta[],intn)
{intij,temp;
for(i=l;i<=[7};i++)
for(j=0;j<[8];j++)
if(aU]>aU+lJ)
{temp=a[j];a[j]=a[j+l];a[j+l]=temp;}
)
3、以下程序的功能是將由鍵盤輸入的一個(gè)十進(jìn)制正整數(shù)轉(zhuǎn)換為二進(jìn)制數(shù)輸出。請?zhí)羁胀晟瞥绦颉?/p>
main()
{inta[20],x,i=0j;
scanf(M%dM,&x);
while(191)
{a[i]=x%2
x=[10];
i++;
)
for(j=i-l;j>=0;[11])
printf(ft%-2dM,a[j]);
)
4、以下程序的功能是:有11個(gè)整數(shù)已經(jīng)按升序存放在數(shù)組a中,輸入一個(gè)數(shù)x,用折半查找法找出該數(shù)是數(shù)組
中第幾個(gè)元素的值,如果該數(shù)不在數(shù)組中,則輸出“無此數(shù)”。填空完善程序。
main()
{inta[H]={l,3,8,20,33,55,60,75,80,90,95};
intindex=-1,key,low,high,middle;
scanf(H%dH,&key);
low=0;high=10;
while([12])
{middle=(low+high)/2;
if(key==a[middle])
{index=middle;
【13】;
)
elseif(key>a[middle])iow=middle+l;
14
第二部分2010-2011學(xué)年第一學(xué)期期末考試卷
else【14】;
}
if([15])printf(nIndex:%dn,index);
elseprintf(MNotfound!”);
}
四、編程題(共20分)
1、(10分)編程實(shí)現(xiàn)以下功能:首先由計(jì)算機(jī)隨機(jī)產(chǎn)生10個(gè)介于1?10之間的整數(shù),存放到一個(gè)整型數(shù)組中;然
后由用戶輸入一個(gè)下標(biāo)值k,將用戶從鍵盤輸入的一個(gè)整數(shù)x插入到該下標(biāo)位置。注意:要求對輸入的下標(biāo)值k進(jìn)行
合法性判斷,如果輸入的下標(biāo)不合法,要求重新輸入。
2、(10分)編程實(shí)現(xiàn)以下功能:統(tǒng)計(jì)10~200之間素?cái)?shù)的個(gè)數(shù),并將這些素?cái)?shù)按每行5個(gè)輸出。所謂素?cái)?shù)是指僅
能被1和其本身整除的整數(shù),例如:11。
#include<stdio.h>
intmain()
(
intn,t,flag=0,k=2,sum=0,j=0,i=0;
printf("所有的素?cái)?shù)如下所示:\n");
for(n=1000;n<=2000;n++)
(
for(t=2;t<=n-1;t++)
(
if(n%t==O)break;
elsek++;
}
if(k>=n)
15
第二部分2010-2011學(xué)年第一學(xué)期期末考試卷
printf("%6d",n);
sum=sum+n;
j++;
i++;
if(i%7==0)printf("\n");
}
k=2;
)
printf("\n所有素?cái)?shù)的個(gè)數(shù)是:%d\n",j);
printf("所有素?cái)?shù)的和是:%d\n",sum);
return0;
16
第三部分C語言重點(diǎn)課程建設(shè)抽查考核試卷1
一、單選題(每題1分,共25分)
1、以下敘述不正確的是()o
A、在C程序中,注釋說明只能位于一條語句的后面B、一個(gè)C源程序必須包含一個(gè)main函數(shù)
C、C程序中一行可以寫多條語句,一條語句也可以寫在多行上D、C語言中是嚴(yán)格區(qū)分大小寫的
2、定義了字符數(shù)組chaa[80],執(zhí)行語句scanf("%s”,a);后從鍵盤輸入GZChina,數(shù)組a中得到的字符串是()?
A、GZB、ChinaC、GZChinaD、不確定
3、以下敘述中正確的是()。
A、C語言的源程序不必通過編譯就可以直接運(yùn)行
B、C語言的每條可執(zhí)行語句最終都將被轉(zhuǎn)換成二進(jìn)制的機(jī)器指令
C、C語言的源程序經(jīng)編譯形成的二進(jìn)制代碼可以直接運(yùn)行
D、對C語言源程序進(jìn)行編譯時(shí)系統(tǒng)自動(dòng)檢查語法錯(cuò)誤和邏輯錯(cuò)誤
4、算法是指為解決某個(gè)特定問題而采取的確定且有限的步驟,下面不屬于算法的五個(gè)特性之一的是()。
A、確定性B、有窮性C、零個(gè)或多個(gè)輸出D、零個(gè)或多個(gè)輸入
5、以下說法錯(cuò)誤的是().
A、傳統(tǒng)的流程圖是算法的表示方法之一B、N-S流程圖是算法的表示方法之一
C、算法可以用自然語言表示D、計(jì)算機(jī)語言不是算法的表示方法之一
6、下列可用于C語言用戶標(biāo)識(shí)符的一組是()。
A、void,define,WORDB、a3_b3,_123,CarC、For,-abc,IFCaseD、2a,DO,sizeof
7、若變量已正確定義并賦值,以下符合C語言語法的表達(dá)式是()。
A、a:=b+lB、a=b=c+2C、int18.5%3D、a=a+7=c+b
8、已有定義inti=10,j=1;執(zhí)行語句printf(u%d,%d\n,\i-,++j);后輸出結(jié)果是()。
A、10,2B、104C、9,1D、9,2
9、設(shè)變量a是int型,f是float型,i是double型,則表達(dá)式10+R+i*f值的數(shù)據(jù)類型為()。
A^intB、floatC>doubleD、不確定
10、C語言中,定義PI為一個(gè)符號(hào)常量,下面正確的是()o
A、includePI3.14B、includePI3.14C>#definePI3.14D、definePI3.14
n、若變量已正確定義,要將a和b中的數(shù)進(jìn)行交換,以下無法實(shí)現(xiàn)交換的是()o
A>a=a+b;b=a-b;a=a-b;B、t=a;a=b;b=t;C、a=t;t=b;b=a;D、t=b;b=a;a=t;
12、當(dāng)c的值不為0時(shí),能正確將c的值賦給變量a和b的選項(xiàng)是()o
A、(a=c)&&(b=c)B、(a=c)ll(b=c)C>c=b=aD、a=c=b
13、定義了一個(gè)整型變量x,能正確表示x的值小于1或大于10的C表達(dá)式是()o
A、x<lorx>10B、10<x<lC、x<l&&x>10D、x<lllx>10
14、如果已有定義:inta=5,b=0,c=0;執(zhí)行以下if語句后()。
if(a=b+c)prin情
elsepriiHf("###\n");
A、輸出***B、輸出###C、有語法錯(cuò)不能通過編譯D、可以通過編譯但不能通過連接
15、有如下循環(huán)語句:for(a=0,b=0;(b!=123)&&(av=4);a++);循環(huán)將執(zhí)行()。
A、無限次B、1次C、4次D、5次
17
第三部分C語言重點(diǎn)課程建設(shè)抽查考核試卷1
16、已有定義intk=0;執(zhí)行循環(huán)語句while(k++<=2)printf(M%d”,k);后結(jié)果為()。
A、012B、123C、234D、無結(jié)果
17、在C語言的循環(huán)語句for,while,do-while中,用于直接中斷最內(nèi)層循環(huán)的語句是()。
A、switchB、continueC、breakD>if
18、若ij已定義為int型,則以下程序段中循環(huán)體的總的執(zhí)行次數(shù)是()o
for(i=5;i;i—)
for(j=0;j<4;j++)
{...)
A、20B、24C、25D、30
19、以下能正確計(jì)算1X2X3X…X10的程序段是()°
A、do{i=l;s=l;s=s*i;i++;}while(i<=10);B、do{i=l;s=0;s=s*i;i++;}while(i<=10);
C>i=l;s=l;do{s=s*i;i++;}while(i<=10);D、i=l;s=0;do{s=s*i;i++;}
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中學(xué)學(xué)生社團(tuán)活動(dòng)經(jīng)費(fèi)保障制度
- 人力資源配置與調(diào)整制度
- 企業(yè)風(fēng)險(xiǎn)管理與防范制度
- 2026年環(huán)境科學(xué)與工程專業(yè)核心考點(diǎn)題集
- 2026年酒店業(yè)成本控制與效益分析考核題
- 2026年環(huán)境科學(xué)基礎(chǔ)知識(shí)考試題目
- 2025年氫燃料電池汽車示范運(yùn)行數(shù)據(jù)采集協(xié)議
- 2025年四川旅游學(xué)院馬克思主義基本原理概論期末考試模擬題帶答案解析(奪冠)
- 山西省晉中市澤州2025-2026年九年級上期末道德與法治試卷(含答案)
- 2025年五寨縣招教考試備考題庫帶答案解析
- 生態(tài)流量調(diào)度方案(3篇)
- LINE6效果器HD300中文說明書
- 2025年航運(yùn)行業(yè)安全生產(chǎn)費(fèi)用提取和使用計(jì)劃
- 納米纖維凝膠隔熱材料的應(yīng)用研究進(jìn)展
- 總公司和分公司的合作協(xié)議
- 保險(xiǎn)業(yè)務(wù)代理與分銷合作協(xié)議
- 2025年社區(qū)養(yǎng)老服務(wù)補(bǔ)貼政策及申領(lǐng)方法
- 法學(xué)本科畢業(yè)論文完整范文-大數(shù)據(jù)時(shí)代下電信網(wǎng)絡(luò)詐騙犯罪治理研究
- 初中物理八年級下冊第十一章《功和機(jī)械能》測試題(有答案解析)
- 廣東省佛山市2023-2024學(xué)年高一上學(xué)期期末考試物理試題(含答案)
- DL∕T 5157-2012 電力系統(tǒng)調(diào)度通信交換網(wǎng)設(shè)計(jì)技術(shù)規(guī)程
評論
0/150
提交評論