C語言程序設(shè)計(jì)-期末綜合練習(xí)題_第1頁
C語言程序設(shè)計(jì)-期末綜合練習(xí)題_第2頁
C語言程序設(shè)計(jì)-期末綜合練習(xí)題_第3頁
C語言程序設(shè)計(jì)-期末綜合練習(xí)題_第4頁
C語言程序設(shè)計(jì)-期末綜合練習(xí)題_第5頁
已閱讀5頁,還剩249頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

題庫整體描述

親愛的同學(xué),

您好、在學(xué)完C語言程序設(shè)計(jì)后,請(qǐng)您完成以下練習(xí)題。

提示:?jiǎn)雾?xiàng)選擇題10道,每題2分,共20分;13道填空題,

每題2分,共26分;5道看程序?qū)懡Y(jié)果題,每題6分,共30分;2

道寫出函數(shù)功能題,每題6分,共12分;2題編寫程序或函數(shù)題,

每題6分,共12分,所有題目滿分為100分。

您可以選擇每小題做完后提交,客觀題會(huì)有問答正誤判斷和知識(shí)

點(diǎn)提示,主觀題則會(huì)提示參考答案。也可以選擇全部做完后'提交所

有答案并結(jié)束”,查看本次練習(xí)客觀題總成績(jī)。

所有題目都可乂反復(fù)練習(xí),直到你熟練掌握為止。

1

#include<stdio.h>

intWF(intx,inty){

x=x+y;

y=x+y;

returnx+y;

voidmain(){

intx=5,y=7;

intz=WF(xzy);

printf("z=%d\n"zz);

}

1

doubleSF(doublex,intn){//n為正整數(shù)

doublep=lzs=l;

inti;

fo「(i=l;iv=n;i++){

p*=x;

s+=p;

}

returns;

}

1

#include<stdio.h>

structWorker(

charname[15];〃姓名

intage;〃年齡

floatpay;〃工資

};

voidmain(){

structWorkerx={"wanghua,,52,4300};

structWorkery,*p;

y=x;p=&x;

printf("%s%d%6.2f\n",zy.agezp->pay);

1

voidQA(structWorkera口,intn){

inti;

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

n

scanf("%s%d%f,&a[i].namez&a[i].agez&a[i].p

ay);

)

假定結(jié)構(gòu)類型structWorker的定義如下:

structWorker{charname[15];intage;floatpay;};

1

#include<stdio.h>

voidmain()

{

intx=5;

switch(2*x-3){

case4:printf("%d

case7;pnntf("%d”,2*x+l);

case10:printf("%dn,3*x-l);break;

default:printf("%s,7,default\nn);

}

}

1

編寫一個(gè)函數(shù),函數(shù)頭格式為''doubleMean(doublea[M][N],int

m,intn)”,要求返回二維數(shù)組磯m][n]中所有元素的平均值,假定

在計(jì)算過程中采用變量v存放平均值。

2

intSG(intx){//x為大于等于2的整數(shù)

inti=2;

while(i*i<=x){

if(x%i==O)break;

i++;

}

if(i*i<=x)return0;elsereturn1;

}

2

#include<stdio.h>

#include<string.h>

voidfun(charss[]);

voidmain(){

chars[15]=n0123456789";

fun(s);

printf("%s\n"zs);

}

voidfun(charss[]){

inti,n=strlen(ss);

for(i=0;i<n/2;i++){

charc=ss[i];

ss[i]=ss[n-l-i];

ss[n-l-i]=c;

}

}

2

#include<stdio.h>

#include<string.h>

structWorker{

charname[15];〃姓名

intage;〃年齡

floatpay;〃工資

};

voidmain(){

structWorkerx;

char*t="liouting";

intd=38;floatf=3493;

strcpy(,t);

x.age=d;x,pay=f;

printf("%s%d%6.0f\n",x.age,x.pay);

}

2

intCount(structIntNode*f)

{//f為指向一個(gè)單鏈表的表頭指針

intc=0;

while(f){

C++;

f=f->next;

}

returnc;

}

假定structIntNode的類型定義為:

structIntNode{intdata;IntNode*next;};

2

編寫一個(gè)遞歸函數(shù)''intFF(inta口,intn)”,求出數(shù)組a中所有n個(gè)

元素之積并返回。

3

#include<stdio.h>

intCount(inta[],intn,intx)

{

inti,c=0;

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

if(a[i]>x)C++;

returnc;

}

voidmain(){

int3網(wǎng)={20,15,32,47,24,36,28,70};

intb=Count(az8,30);

printf("b=%d\n"zb);

}

3

intWB(inta[],intn,intx){

for(inti=O;i<n;i++)

if(a[i]==x)return1;

return0;

)

3

#include<stdio.h>

structWorker(charname[15];intage;floatpay;};

intLess(structWorkerrl,structWorkerr2){

if(rl.age<r2.age)return1;elsereturn0;

voidmain(){

structWorker

a[4]={{"abc",25,2420},{"def",58,4638},

,

{"ghi",49,4260}/{"jkr,36,3750}};

structWorkerx=a[0];

inti;

for(i=l;iv4;i十十)

if(Less(x,a[i]))x=a[i];

printf("%s%d%6.0f\n",zx.agezx.pay);

)

3

voidxwl(char*fname){

FILE*fout=fopen(fname,"w");

chara[20];

printf("每個(gè)字符串長(zhǎng)度小于20,字符串end作為結(jié)束標(biāo)

志\n“);

while(l){

scanf("%s"za);

if(strcmp(a,"end")==O)break;

fputs(a,fout);

fputc('\n',fout);

}

fclose(fout);

}

3

編寫一個(gè)主函數(shù),利用while循環(huán),求出并顯示滿足不等式的最小n

值。

4

#include<stdio.h>

voidmain(){

inta[8]={3,5,7,9,2,3,4,8};

ints=Oz*p;

for(p=a;p<a+8;)s+=*p++;

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

}

4

intfun(intmzintn){

intc=0;

staticintb=2;

if(m<b11n<b)returnm*n;

elseif(m%b==O&&n%b==O){c=b;return

c*fun(m/bzn/b);}

else{b++;returnfun(mzn);}

)

4

編寫一個(gè)主函數(shù),求出滿足不等式22+42+…+n2〈1000的最大n

值,假定分別用i和s作為取偶數(shù)值和累加值的變量,并限定使用do

循環(huán)編程。

5

#include<stdio.h>

intLA(int*azintn,intx){

intizs=0;

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

if(a[i]<x)s+=a[i];

returns;

}

voidmain(){

inta[8]={5,10,15,8,12,3,9,20);

intb=LA(a,5,10);

intc=LA(a+2,6,10);

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

}

5

intLK(doublea[],intn){

doubles=0;

inti,m=0;

for(i=0;i<n;i+4-)s+=a[i];

s/=n;

for(i=0;ivn;i++)

if(a[i]>=s)m++;

returnm;

}

5

編寫一個(gè)主函數(shù),計(jì)算并輸出M+22+…值,其中n值由鍵盤輸

入。

寫出函數(shù)的功能

intFH(){

intx,y=O;

scanf("%d",&x);

while(x!=-l){y+=x;scanf("%d",&x);}

returny;

)

函數(shù)功能:

寫出函數(shù)的功能

intFF(structIntNode*f)〃f為指向一個(gè)單鏈表的表頭指針

{

intn=0;

if(!f)return0;

while(f){

n++;

f=f->next;

}

returnn;

}

假定structIntNode的類型定義為:

structIntNode{intdata;structIntNode*next;};

函數(shù)功能:

寫出函數(shù)的功能

#include<stdio.h>

intSA(intazintb){

if(a>b)return1;

elseif(a==b)return0;

elsereturn-1;

函數(shù)功能:

寫出函數(shù)的功能

voidOutput(structIntNode*f)〃f為單鏈表的表頭指針

{

if(!f)return;

while(f){

printf("%dH,f->data);

f=f->next;

}

printf("\n");

}

假定structIntNode的類型定義為:

structIntNode{intdata;structIntNode*next;};

函數(shù)功能:

寫出函數(shù)的功能

intSC(inta,intb,intc){

if(a>=b&&a>=c)returna;

if(b>=a&&b>=c)returnb;

returnc;

}

寫出函數(shù)的功能

int*LI(intn){

int*a=malloc(n*sizeof(int));

inti;

for(i=0;i<n;i++)scanf("%d\a+i);

returna;

)

寫出函數(shù)的功能

#include<math.h>

intSG(intx){//x為大于等于2的整數(shù)

inta=(int)sqrt(x);〃sqrt(x)取x的平方根

inti=2;

while(i<=a){

if(x%i==O)break;

i++;

}

if(i<=a)return0;elsereturn1;

}

函數(shù)功能:

寫出函數(shù)的功能

intFindMax(structIntNode*f)//f為一個(gè)單鏈表的表頭指針

intx;

if(!f){printf(“單鏈表為空\(chéng)n”),exit(l);}

x=f->data;

f=f->next;

while(f){

if(f->data>x)x=f->data;

f=f->next;

}

returnx;

}

假定structIntNode的類型定義為:

structIntNode{intdata;structIntNode*next;};

函數(shù)功能:

寫出函數(shù)的功能

intWC(inta[],intn,intk){

inti,c=0;

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

if(a[i]>=k)C++;

returnc;

}

函數(shù)功能:

寫出函數(shù)的功能

voidQA(structWorkera[]zintn)

{

inti;

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

scanf("%s%d%f",a[i].namez&a[i].agez

&a[i].pay);

?

假定結(jié)構(gòu)類型structWorker的定義如下:

structWorker{charname[15];intage;floatpay;};

函數(shù)功能:

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

#include<stdio.h>

voidmain(){

inti,s=0;

for(i=l;;i++){

if(s>20)break;

if(i%2)s+=i;

}

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

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

#include<stdio.h>

voidmain(){

inta[9]={36z25,48,24,55,40,18,30,20};

inti,blzb2;

bl=b2=a[0];

for(i=l;i<9;i++){

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

if(a[i]<b2)b2=a[i];

}

printf("%d%d\n”,bl,b2);

}

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

#include<stdio.h>

voidSB(charch){

switch(ch){

case'A':case'a':

printf("WW");break;

case'B':case'b':

printf(HGG");break;

default:

printf("BB");break;

}

}

voidmain(){

charal='a,,a2=,B',a3='f';

SB(al);SB(a2);SB(a3);

printf("\n");

}

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

#include<stdio.h>

voidmain(){

inti,sl=0,s2=0;

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

if(i%2)sl+=i;

elses2+=i;

printf("%d%d\n"zsl,s2);

}

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

#include<stdio.h>

constintM=20;

voidmain()

{

inti=2;

while(l){

if(i>M/2)break;

if(M%i==O)printf("%d",i);

i++;

}

printf(n\nn);

)

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

#include<stdio.h>

inta[7]={4,5,6,15,20,62,9};

voidmain()

{

inti,sl,s2;

sl=s2=0;

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

switch(a[i]%2){

case0:s2+=a[i];break;

case1:sl+=a[i];break;

}

}

printf("%d%d\n"zslzs2);

)

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

#include<stdio.h>

voidmain(){

inta[3][3]={{3z15z7}z{9,ll,10},{6z8z20}};

inti,*p=&a[0][0];

fo「(i=0;iv9;i++){

if(*p>10)printf("%d”產(chǎn)p);

P++;

)

printf("\n");

}

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

#include<stdio.h>

#include<string.h>

structWorker{charname[15];intage;floatpay;};

voidmain(){

structWorkerx;

char*t="liouting";

intd=38;floatf=2400;

strcpy(x,name,t);

x.age=d;x.pay=f;

x.age++;x.pay*=2;

printf("%s%d%6.2f\n",,x.age,x.pay);

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

#include<stdio.h>

#defineM6

voidmain()

{

inti,x;

inta[M]={10,15,22,37,46,58};

for(i=0;i<M/2;i++){x=a[i];a[i]=a[M-l-i];

a[M-l-i]=x;}

printf("%d%d\n",a[2]za[4]);

)

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

#include<stdio.h>

structWorker{

charname[15];intage;floatpay;

};

voidmain(){

,

structWorkerx={"wanghua',34z4250};

structWorkery,*p;

y=x;p=&x;

printf("%d%7.2f\n"zy.age+p->age,

p->pay+300);

}

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

#include<stdio.h>

voidmain(){

intn=6,y=l;

while(n—)y+=3+n;

n

printf("y=%d\nzy);

)

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

#include<stdio.h>

voidmain(){

intfl,f2J;

fl=l;

printf(H%dn,fl);

for(i=2;iv5;i++){

f2=3*fl+i;

n

printf("%dzf2);

fl=f2;

}

printfC'Xn");

}

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

#include<stdio.h>

#defineN8

voidmain(){

inta[N]={12,39,26,41,55,63,72,40};

inti,il=0,i2=0;

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

if(a[i]%2==l)il++;elsei2++;

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

}

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

#include<stdio.h>

#include<string.h>

voidmain(){

chars[15]="5678912340";

inti,n=strlen(s);

for(i=0;i<n/2;i++){

charc=s[i];

s[i]=s[n-l-i];

s[n-l-i]=c;

}

printf("%s\n"zs);

}

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

#include<stdio.h>

intLB(int*azintn){

inti,s=l;

for(i=0;ivn;i++)s*=*a++;

returns;

}

voidmain(){

intd[]={l,2,3,4,2,2,5,8};

intb=LB(a,4)+LB(a+3,4);

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

}

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

#include<stdio.h>

voidmain()

{

inti,s=0;

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

if(i%3==0||i%4==0)s+=i;

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

}

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

#include<stdio.h>

voidmain(){

chara[]="abcfkgamd";

intil=Ozi2=0,i=0;

while(a[i]){

if(a[i]<'e')il++;elsei2++;

i++;

}

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

}

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

#include<stdio.h>

voidmain(){

inta[9]={2,4,8,12,16,20,24,28,32);

int*p=a;

do{

printf("%d"產(chǎn)p);

P+=3;

}while(p<a+9);

printf(n\nn);

}

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

#include<stdio.h>

voidmain()

{

intx=5;

switch(2*x){

case4:printf("%dn,x);break;

case7:printf("%d",2*x);break;

H

case10:printf("%dz3*x);break;

default:printf("%s"/'default");

}

printf("%d\n',,4*x);

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

#include<stdio.h>

structWorker{charname[15];intage;doublepay;};

voidmain(){

structWorker

a[4]={{"abc",20,2400},{"defa"z50,3600},

H

{"ghin",40z2500}z{"jkltz36z3200}};

inti,s=0;

for(i=0;i<4;i++)s+=a[i].age;

printf("s=%5.2Lf\n"z(double)s/4);

}

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

#include<stdio.h>

voidmain(){

inti,s=0;

for(i=l;i<7;i++)s+=i*i;

,,

printf(''s=%d\nzs);

}

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

#include<stdio.h>

#include<string.h>

voidmain(){

inti;

unsignedintlen;

char*

nnnn

a[5]={stud"/work"/"cadre"zsoldier"zzanl23"};

len=strlen(a[O]);

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

if(strlen(a[i])>len)len=strlen(a[i]);

printf("%d\n,len);

)

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

#include<stdio.h>

voidmain()

{

inta,b;

for(a=2,b=3;b<30;){

printf("%d%d”,a,b);

a=a+b;

b=a+b;

}

}

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

#include<stdio.h>

#defineN6

voidmain()

{

intiza[N]={2,5,8,10,15,20};

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

if(a[i]%4==0)printf("%d",a[i]);

printf("\n");

}

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

#include<stdio.h>

voidLE(int*a,int*b){

intx=*a;

*a=*b;*b=x;

}

voidmain(){

intx=5,y=8;

n

printf("%d%dzxzy);

LE(&x,&y);

printf("%d%d\n"zxzy);

}

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

#include<stdio.h>

voidmain(){

inti,j,k=O;

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

for(j=i;j<5;j++)k++;;

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

}

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

#include<stdio.h>

voidmain(){

intx=28;

inti=2;

while(i<x){

if(x%i==O){printf("%d",i);x/=i;}

i++;

}

printf("%d\n"zx);

}

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

#include<stdio.h>

voidmain(){

inta[8]={76,63,54,95,40,75,90,82};

inti,s=0;

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

if(a[i]>=70&&a[i]<=85)s+=a[i];

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

}

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

#include<stdio.h>

intWF(intx,inty){

x=x+y;

y+=x;

returnx+y;

}

voidmain(){

intx=5,y=8;

H

printf("%d\n,WF(xzy));

)

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

#include<stdio.h>

intLA(int*a,intn){

inti,s=O;

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

returns;

}

voidmain(){

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

intb=LA(a,5)+LA(a+2,3);

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

}

按題目要求編寫函數(shù)

編寫一個(gè)函數(shù),函數(shù)原型為、'intfun4(char*a)〃,請(qǐng)采用while循

環(huán)求出由字符指針a所指向的字符串中包含的十進(jìn)制數(shù)字的個(gè)數(shù),并

把這個(gè)值作為函數(shù)值返回。

按題目要求編寫函數(shù)

編寫一個(gè)主函數(shù),計(jì)算并輸出表達(dá)式1+22+32+…+?的值,假定

正整數(shù)n的值由鍵盤輸入。

按題目要求編寫函數(shù)

根據(jù)函數(shù)原型"doubleMean(doublea[M][N]zintm,intn)〃,編

寫函數(shù)定義,要求返回二維數(shù)組磯m][n]中所有元素的平均值。假定

在計(jì)算過程中采用變量v存放累加值和最后的平均值。

按題目要求編寫函數(shù)

根據(jù)函數(shù)原型''intMM(inta[Lintm)〃,編寫函數(shù)定義,計(jì)算并返

回?cái)?shù)組或m]中元素最大值和最小值之差。

按題目要求編寫程序

編寫一個(gè)程序,已知6WaW50,10WbW30,求出滿足不定方程

3a+2b=120的全部整數(shù)組解。如(20,30)就是其中的一組解。

按題目要求編寫程序

編寫一個(gè)程序,首先從鍵盤上輸入10個(gè)整數(shù)到一維數(shù)組a[10]中,

然后按照下標(biāo)從大到小的次序輸出數(shù)組a[10]中的所有元素值。假定

數(shù)組a[10]和循環(huán)變量i均在主函數(shù)中定義。

按題目要求編寫程序或函數(shù)

編寫一個(gè)遞歸函數(shù)''intFF(inta[],intn)”,求出數(shù)組a中所有n個(gè)

元素之積并返回。

按題目要求編寫程序或函數(shù)

編寫一個(gè)程序,利用while循環(huán),計(jì)算并打印輸出的值,其中正整數(shù)

n值由鍵盤輸入。假定求和變量用sum表示,計(jì)數(shù)變量用i表示,sum、

i和n均定義為全局變量,sum和i的初值分別被賦予0和1。

按題目要求編寫程序或函數(shù)

根據(jù)函數(shù)原型''voidDD(inta[],intn,intMM)〃編寫函數(shù)定義,利

用雙重循環(huán)查找并打印輸出數(shù)組a[n]中任何兩個(gè)元素的值等于MM

值的元素值。假定a[i]+a[j]等于MM,則輸出格式為:(a[i],a[j])o

按題目要求編寫程序或函數(shù)

編寫一個(gè)程序,計(jì)算1+3+32+…+3】。的值并輸出,假定分別用i,p,s

作為循環(huán)變量、累乘變量和累加變量的標(biāo)識(shí)符。

按題目要求編寫程序或函數(shù)

根據(jù)函數(shù)原型''intFF(inta口,intn)〃,編寫函數(shù)定義,計(jì)算并返回

數(shù)組a[n]中所有元素之和。

按題目要求編寫程序或函數(shù)

編寫一個(gè)程序,輸出35以內(nèi)(含35)的、能夠被4或者7整除的所

有整數(shù)。

根據(jù)函數(shù)回答相應(yīng)問題

voidSF(intx){//n為大于等于0的整數(shù)

inti=2;

while(x>i){

if(x%i==O)printf("%d",i);

i++;

}

printf("\n");

}

假定使用SF(70)調(diào)用該函數(shù),則輸出的所有整數(shù)依次為

__________________O

根據(jù)函數(shù)回答相應(yīng)問題

voidQC(structIntNode*f){〃f為一個(gè)單鏈表的表頭指針

while(f){

printf("%d"zf->data);

f=f->next;

}

)

假定結(jié)構(gòu)類型IntNode的定義為:

structIntNode{intdata;structIntNode*next;};

該函數(shù)的功能為:

編寫一個(gè)函數(shù),分別求出一維整型數(shù)組中所有奇數(shù)元素

的個(gè)數(shù)和所有偶數(shù)元素的個(gè)數(shù),假定分別用cl和c2所指的對(duì)

象保存。

編寫一個(gè)函數(shù),分別求出一維整型數(shù)組a[n]中所有奇數(shù)元素的個(gè)數(shù)

和所有偶數(shù)元素的個(gè)數(shù),假定分別用cl利c2所指的對(duì)象保存。

voidfun2(inta[],intn,int*cl,int*c2);

編寫一個(gè)函數(shù),求出一維整型數(shù)組a[n]中所有元素的平方之

和。

編寫一個(gè)函數(shù),求出一維整型數(shù)組磯n]中所有元素的平方之和。

intfunl(inta[]zintn);

編寫一個(gè)非遞歸函數(shù)過程,求出兩個(gè)自然數(shù)m和n的最大公

約數(shù)。

編寫一個(gè)非遞歸函數(shù)過程,求出兩個(gè)自然數(shù)m和n的最大公約數(shù)。

intfun5(intm,intn);

1.若x的值為15,則執(zhí)行、'if(x>10)x++;elsex--;〃語句

后,x的值為()。

1.若X的值為15,則執(zhí)行''if(x>10)X++;elsex??;〃語句后,x

的值為()。

■r

16

■C

15

char類型的長(zhǎng)度為個(gè)字節(jié)。

char類型的長(zhǎng)度為個(gè)字節(jié)。

1

2

3

■r

4

C語言中打開一個(gè)數(shù)據(jù)文件的系統(tǒng)函數(shù)為()。

C語言中打開一個(gè)數(shù)據(jù)文件的系統(tǒng)函數(shù)為()。

r

fgetc()

fputc()

■r

fclose()

fopen()

C語言中的系統(tǒng)函數(shù)fopen()是()一個(gè)數(shù)據(jù)文件的函數(shù)。

C語言中的系統(tǒng)函數(shù)fopen()是()一個(gè)數(shù)據(jù)文件的函數(shù)。

r

讀取

■r

寫入

?廠

關(guān)閉

打開

C語言源程序文件的缺省擴(kuò)展名為()。

C語言源程序文件的缺省擴(kuò)展名為()o

cpp

exe

?

obj

C

C語言程序中的基本功能模塊為()。

C語言程序中的基本功能模塊為()。

表達(dá)式

■C

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

語句

C

函數(shù)

for循環(huán)語句'¥or(i=0;i

for循環(huán)語句、'for(i=0;i<n;i+=2)S;“中循環(huán)體S語句被執(zhí)行的次

數(shù)為()。

?0

(n+l)/2

n/2+l

n/2-l

n-1

for循環(huán)語句能夠被改寫為()語句。

for循環(huán)語句能夠被改寫為()語句。

復(fù)合

if

?

switch

■r

while

for語句能夠被改寫成的語句是()。

for語句能夠被改寫成的語句是()。

復(fù)合

■C

if

■r

switch

while

NULL是一個(gè)符號(hào)常量,通常作為空指針值,它的取值為()。

NULL是一個(gè)符號(hào)常量,通常作為空指針值,它的取值為()。

r

0

-1

'\rf

一個(gè)指針指向一個(gè)數(shù)據(jù)對(duì)象,它保存著該數(shù)據(jù)對(duì)象的地址,若

數(shù)據(jù)對(duì)象為DataType類型,則該指針的類型為()。

一個(gè)指針指向一個(gè)數(shù)據(jù)對(duì)象,它保存著該數(shù)據(jù)對(duì)象的地址,若數(shù)據(jù)對(duì)

象為DataType類型,則該指針的類型為()。

DataType*

DataType

DataType&

■r

DataType**

下面的函數(shù)原型聲明中存在語法錯(cuò)誤的是()。

下面的函數(shù)原型聲明中存在語法錯(cuò)誤的是()。

voidAA(inta,intb);

voidAA(int,int);

voidAA(inta;intb;);

■r

voidAA(inta,int);

與結(jié)構(gòu)成員訪問表達(dá)式p->name等價(jià)的表達(dá)式為()。

與結(jié)構(gòu)成員訪問表達(dá)式p?>name等價(jià)的表達(dá)式為()。

(*p).name

*

*(p->name)

與結(jié)構(gòu)成員訪問表達(dá)式x.name等價(jià)的表達(dá)式為()。

與結(jié)構(gòu)成員訪問表達(dá)式x.name等價(jià)的表達(dá)式為()。

■.r

x->name

&x->name

(&x)->name

?

(*x)->name

從一個(gè)二進(jìn)制文件中讀取數(shù)據(jù)的系統(tǒng)函數(shù)為fread(),它的參

數(shù)有()。

從一個(gè)二進(jìn)制文件中讀取數(shù)據(jù)的系統(tǒng)函數(shù)為fread(),它的參數(shù)有

()O

2個(gè)

3個(gè)

.r

4個(gè)

5個(gè)

從一個(gè)數(shù)據(jù)文件中讀入以換行符結(jié)束的一行字符串的函數(shù)為

()O

從一個(gè)數(shù)據(jù)文件中注入以換行符結(jié)束的一行字符串的函數(shù)為()o

?0

gets。

fgets()

getc()

fgetc()

從一個(gè)數(shù)據(jù)文件中讀入以換行符結(jié)束的一行字符串的系統(tǒng)函

數(shù)為()。

從一個(gè)數(shù)據(jù)文件中讀入以換行符結(jié)束的一行字符串的系統(tǒng)函數(shù)為

()O

gets。

?

fgets()

getc()

fgetc()

從一個(gè)文本文件中讀取以換行符結(jié)束的一個(gè)字符串的系統(tǒng)函

數(shù)為()。

從一個(gè)文本文件中讀取以換行符結(jié)束的一個(gè)字符串的系統(tǒng)函數(shù)為

()O

.r

fputc()

fgets()

fputs()

?

fgetc()

假定a為一個(gè)數(shù)組名,則下面存在錯(cuò)誤的表達(dá)式為()。

假定a為一個(gè)數(shù)組名,則下面存在錯(cuò)誤的表達(dá)式為()。

a[i]

*d++

*a

*(a+l)

假定a為一個(gè)數(shù)組名,則下面表達(dá)式中錯(cuò)誤的是()。

假定a為一個(gè)數(shù)組名,則下面表達(dá)式中錯(cuò)誤的是()。

*a++

(*a)++

a+i

*a+i

假定a為一個(gè)數(shù)組名,則元素a[i]的指針訪問方式為()。

假定a為一個(gè)數(shù)組名,則元素a[i]的指針訪問方式為()。

a+i

*(a+i)

&a+i

*a+i

假定a為一個(gè)數(shù)組名,在下面的表達(dá)式中,存在語法錯(cuò)誤的是

()。

假定a為一個(gè)數(shù)組名,在下面的表達(dá)式中,存在語法錯(cuò)誤的是()。

a[i]

*a++

■I

*a

*(d+l)

假定d為一個(gè)整數(shù)類型的數(shù)組名,整數(shù)類型的長(zhǎng)度為4,則元

素a[4]的地址比a數(shù)組的首地址大()個(gè)字節(jié)。

假定a為一個(gè)整數(shù)類型的數(shù)組名,整數(shù)類型的長(zhǎng)度為4,則元素磯4]

的地址比a數(shù)組的首地址大()個(gè)字節(jié)。

4

8

16

32

假定i的初值為0,則在循環(huán)語句''while。

假定i的初值為0,則在循環(huán)語句、'while(i<n){s+=i*i;i++;}〃中,

其循環(huán)體被執(zhí)行的總次數(shù)為()。

n-1

n

n+l

?

n/2

假定k是一個(gè)double類型的變量,則定義變量p的正確語句

為()。

假定k是一個(gè)double類型的變量,則定義變量p的正確語句為()。

doublep=&k;

int*p=&k;

■I

double&p=*k;

char*p="Thankyou!";

假定n的值為5,則表達(dá)式n++的值為()。

假定n的值為5,則表達(dá)式n++的值為()。

6

5

■c

4

7

假定p所指對(duì)象的值為25,p+1所指對(duì)象的值為42,則表

達(dá)式*P++的值為()。

假定P所指對(duì)象的值為25,p+1所指對(duì)象的值為42,則表達(dá)式*p++

的值為()。

■r

25

42

.r

26

■r

43

假定p是一個(gè)指向double類型的數(shù)據(jù)指針,則p+1所指向

的數(shù)據(jù)的地址比p所指向的數(shù)據(jù)的地址大()個(gè)字節(jié)。

假定p是一個(gè)指向double類型的數(shù)據(jù)指針,則p+1所指向的數(shù)據(jù)

的地址比p所指向的數(shù)據(jù)的地址大()個(gè)字節(jié)。

1

2

4

8

假定p是一個(gè)指向float型數(shù)據(jù)的指針,則p+1所指數(shù)據(jù)的

地址比p所指數(shù)據(jù)的地址增加的字節(jié)數(shù)為()。

假定p是一個(gè)指向float型數(shù)據(jù)的指針,則p+1所指數(shù)據(jù)的地址比p

所指數(shù)據(jù)的地址增加的字節(jié)數(shù)為()o

r

1

r

2

4

8

假定P是一個(gè)指針變量,則該變量的地址表示為()。

假定p是一個(gè)指針變量,則該變量的地址表示為()。

&P

*r

*P

■r

**D

?右

&&p

假定s被定義為指針類型char*的變量,初始指向的字符串

為“Helloworld!”,若要使變量p指向s所指向的字符串,則

P應(yīng)定義為()。

假定s被定義為指針類型char*的變量,初始指向的字符串為"Hello

world!”,若要使變量p指向s所指向的字符串,則p應(yīng)定義為(o

■r

char*p=s;

char*p=&s;

■r

char*p;p=*s;

char*p;p=&s;

假定x的值為4,y的值為6,則表達(dá)式x++*++y的值為()。

假定x的值為4,y的值為6,則表達(dá)式x++*++y的值為()。

28

24

30

35

假定一個(gè)二維數(shù)組a的定義為、'int

a[3][4]={{3,4},{2,8,6)}:則元素況2][0]的值為()。

假定一個(gè)二維數(shù)組a的定義為、'int磯3][4]={{3,4},{2,8,6}};〃,

則元素磯2][0]的值為()。

0

2

4

6

假定一個(gè)二維數(shù)組的定義語句為''int

a[3][4]={{3,4},{2,8,6});〃,則元素的值為()。

假定一個(gè)二維數(shù)組的定義語句為''int

z

a[3][4]={{3z4}z{2,8,6)}/,則元素的值為()。

2

4

6

8

假定一個(gè)二維數(shù)組的定義語句為、'int

磯3][4]={{3,4},{2,8,6}};〃,則元素的值為()。

假定一個(gè)二維數(shù)組的定義語句為''int

a[3][4]={{3,4},{2,8,6}};”,則元素的值為()。

2

4

6

8

假定一個(gè)二維數(shù)組的定義語句為、'int

磯3][4]={{3,4},{2,8,6}};〃,則元素己[2]口]的值為()。

假定一個(gè)二維數(shù)組的定義語句為、'int

磯3][4]={{3,4},{2,8,6}};〃,則元素的值為()。

0

4

8

6

假定一個(gè)函數(shù)原型為''char*func(intn)",則該函數(shù)的返回

值類型為()。

假定一個(gè)函數(shù)原型為''char*func(intn)〃,則該函數(shù)的返回值類型

為()。

int

int*

char

char*

假定一個(gè)函數(shù)原型為''voidff(inta[],intn)〃,則對(duì)應(yīng)的函數(shù)

指針類型為()。

假定一個(gè)函數(shù)原型為''voidff(inta[],intn)〃,則對(duì)應(yīng)的函數(shù)指針類

型為()。

void

(*ff)(int*a,int)

■r

int(*ff)(int*a,int)

■r

void

*ff(int*a,int)

r

*ff(int[],int)

假定一個(gè)函數(shù)原型語句為、'intfl(inta[],intn);〃,與數(shù)組參

數(shù)等價(jià)的表示為()。

假定一個(gè)函數(shù)原型語句為''intfl(inta[]jntn);”,與數(shù)組參數(shù)等價(jià)

的表示為()。

int**a

*r

inta

r

int&a

■r

int*a

假定一個(gè)函數(shù)定義為"externchar*fl(char*x){return

x;)〃,表示該函數(shù)作用域的關(guān)鍵字為()。

假定一個(gè)函數(shù)定義為''externchar*fl(char*

x){returnx;}z,,表示該函數(shù)作用域的關(guān)鍵字為()。

extern

■r

char*

■r

char

int

假定一個(gè)函數(shù)定義為"staticintfl(intxjnty){return

x+y;}〃,該函數(shù)名稱為()。

假定一個(gè)函數(shù)定義為''staticintfl(intx,inty){returnx+y;}〃,

該函數(shù)名稱為()。

c

static

int

fl

return

假定一個(gè)函數(shù)的二維數(shù)組參數(shù)說明為charw[][N],與之等價(jià)

的指針參數(shù)說明為()。

假定一個(gè)函數(shù)的二維數(shù)組參數(shù)說明為char與之等價(jià)的指針

參數(shù)說明為()。

C

char(*w)[N]

char*w[N]

char(*w)N

char**a

假定一個(gè)函數(shù)的原型語句為“intff(int*x);〃,一個(gè)整型數(shù)組

為a[10],則下面函數(shù)調(diào)用表達(dá)式不正確的是()。

假定一個(gè)函數(shù)的原型語句為、'intff(int*x);”,一個(gè)整型數(shù)組為a[10],

則下面函數(shù)調(diào)用表達(dá)式不正確的是()。

ff(a)

ff(a[O])

■r

ff(a+3)

ff(&a[O])

假定一個(gè)函數(shù)的原型語句為、'intx);〃,一個(gè)整型數(shù)組

為a[10],則下面函數(shù)調(diào)用表達(dá)式不正確的是()。

假定一個(gè)函數(shù)的原型語句為木x);〃,一個(gè)整型數(shù)組為

則下面函數(shù)調(diào)用表達(dá)式不正確的是()。

■r

ff(a)

ff(a[O])

ff(a+3)

ff(&a[O])

假定一個(gè)函數(shù)的參數(shù)說明為constinta,則在函數(shù)體中不能

進(jìn)行的操作是()。

假定一個(gè)函數(shù)的參數(shù)說明為constinta,則在函數(shù)體中不能進(jìn)行的

操作是()。

printf(,,%d,,?a)

a==0

int

x=a

■r

a=10

假定一個(gè)函數(shù)的數(shù)組參數(shù)說明為chara[],與之等價(jià)的指針參

數(shù)說明為()01B

假定一個(gè)函數(shù)的數(shù)組參數(shù)說明為chara[];與之等價(jià)的指針參數(shù)說明

為()。1B

■r

chara

char*a

char&a

char**a

假定一個(gè)磁盤數(shù)據(jù)文件占用n個(gè)字節(jié)的存儲(chǔ)空間,則按字節(jié)進(jìn)

行編址的范圍是()。

假定一個(gè)磁盤數(shù)據(jù)文件占用n個(gè)字節(jié)的存儲(chǔ)空間,則按字節(jié)進(jìn)行編址

的范圍是()。

O~(n-1)

l~n

0~n

假定一個(gè)結(jié)構(gòu)類型的定義為''structA{intazb;double

C;};〃,則該類型的長(zhǎng)度為()o

假定一個(gè)結(jié)構(gòu)類型的定義為''structA{intazb;doublec;};",則

該類型的長(zhǎng)度為()。

c

8

10

12

16

假定一個(gè)結(jié)構(gòu)類型的定義為''structA{intazb;double

C;};〃,則該類型的長(zhǎng)度為()o

假定一個(gè)結(jié)構(gòu)類型的定義為''structA{intazb;doublec;};",則

該類型的長(zhǎng)度為()。

8

10

12

16

假定一個(gè)結(jié)構(gòu)類型的定義為"structD{inta;D*next;};",

則該類型的長(zhǎng)度為()。

假定一個(gè)結(jié)構(gòu)類型的定義為''structD{inta;D*next;};",貝ij該

類型的長(zhǎng)度為()。

4

8

12

16

假定一個(gè)結(jié)構(gòu)類型的定義為''structD{inta;D*next;};”,

則該類型的長(zhǎng)度為()。

假定一個(gè)結(jié)構(gòu)類型的定義為''structD{inta;D*next;};",則該

類型的長(zhǎng)度為()。

■r

4

■X

8

12

16

假定一個(gè)聯(lián)合類型的定義為''unionD{inta;D*next;};",

則該類型的長(zhǎng)度為()。

假定一個(gè)聯(lián)合類型的定義為''unionD{inta;D*next;};",則該

類型的長(zhǎng)度為()。

*c

4

8

12

16

假定一個(gè)鏈表中結(jié)點(diǎn)的結(jié)構(gòu)類型為''structAA{intdata,

structAA*next;};,z,則next數(shù)據(jù)成員的類型為()。

假定一個(gè)鏈表中結(jié)點(diǎn)的結(jié)構(gòu)類型為"structAA{intdata,structAA

*next;};〃,則next數(shù)據(jù)成員的類型為()。

structAA

structAA*

AA

int

假定一個(gè)鏈表的表頭指針為f,結(jié)點(diǎn)中包含有data和next域,

則向該鏈表的表頭插入一個(gè)地址為p的結(jié)點(diǎn)時(shí),應(yīng)執(zhí)行的操作

為()。

假定一個(gè)鏈表的表頭指針為f,結(jié)點(diǎn)中包含有data和next域,則向

該鏈表的表頭插入一個(gè)地址為P的結(jié)點(diǎn)時(shí),應(yīng)執(zhí)行的操作為()o

p->next=f

p?>next=f和f=p

f=p->next

f->next=p和f=p

假定一個(gè)鏈表的表頭指針為f,結(jié)點(diǎn)中包含有data和next域,

則向該鏈表的表頭插入一個(gè)地址為p的結(jié)點(diǎn)時(shí),應(yīng)執(zhí)行的操作

為()。

假定一個(gè)鏈表的表頭指針為f,結(jié)點(diǎn)中包含有data和next域,則向

該鏈表的表頭插入一個(gè)地址為p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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)論