大學(xué)計(jì)算機(jī)C語言程序設(shè)計(jì)(程序填空)_第1頁
大學(xué)計(jì)算機(jī)C語言程序設(shè)計(jì)(程序填空)_第2頁
大學(xué)計(jì)算機(jī)C語言程序設(shè)計(jì)(程序填空)_第3頁
大學(xué)計(jì)算機(jī)C語言程序設(shè)計(jì)(程序填空)_第4頁
大學(xué)計(jì)算機(jī)C語言程序設(shè)計(jì)(程序填空)_第5頁
已閱讀5頁,還剩124頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

一、程序填空共129題

第1題題號(hào):426

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

【程序填空】

功能:百馬百擔(dān)問題:有100匹馬,馱100擔(dān)貨,大馬馱三擔(dān),中

馬馱2擔(dān),兩匹小馬馱一擔(dān),求大、中、小馬各多少匹?

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

#include<stdio.h>

main()

(

inthb,hm,hl,n=0;

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

for(hb=0;hb<=100;hb+=[?])

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

for(hm=0;hm<=100-hb;hm+=[?])

(

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

hl=100-hb-[?];

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

if(hb/3+hm/2+2*[?]==100)

(

n++;

printf("hb=%d,hm=%d,hl=%d\n”,hb/3,hm/2,2*hl);

}

)

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

)

答案:

1).3

2).2

3).hm

4).hl

第2題題號(hào):15

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

【程序填空】

功能:分別求出一批非零整數(shù)中的偶數(shù)、奇數(shù)的平均值,用零作

為終止標(biāo)記。

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

#include<stdio.h>

main()

(

intx,i=0,j=0;

floatsl=0,s2=0,avl,av2;

scanf(飛d",&x);

/***********$PACE***********/

while([?])

(

if(x%2==0)

{

sl=sl+x;

i++;

)

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

[?]

{

s2=s2+x;

j++;

)

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

[?];

)

if(i!=0)

avl=sl/i;

else

avl=0;

if(j1=0)

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

[?);

else

av2=0;

printf("oushujunzhi:%7.2f,jishujunzhi:%7.2f\n〃,avl,av2);

)

答案:

1).x!=0或x

2).else或elseif(x%2=l)或elseif(x%2!=0)或if(x%2)

3).scanf&x)

4).av2=s2/j

第3題題號(hào):468

/*—

【程序填空】

功能:對(duì)一數(shù)組進(jìn)行逐步累加求和,prefix代表從前向后累加值,

suffix代表從后向前累加值,問在此過程中prefix與suffix

有幾次值相同?

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

#include<stdio.h>

inthead_tail(intx[],intn)

(

intprefix=0,suffix=0;

intprefix_idx=0,suffix_idx=n-1;

intcount=0;

while(suffix_idx>=0&&prefix_idx<=n-1)

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

if([?])

prefix+=x[prefixidx++];

elseif(prefix>suffix)

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

suffix+=x[[?]];

else

(

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

[?];

prefix+=x[prefix_idx++];

suffix+=x[suffix_idx-];

)

returncount;

)

#include<stdio.h>

voidmain(void)

(

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

intn=sizeof(x)/sizeof(int);

inti;

printf(^XnHeadSum二二TailSumCountingProgram");

printf(z/\n=====================================\n;

printf(z,\nGivenArray:〃);

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

printf(〃%5d",x[i]);

printf(〃\n\nThereare%dequalPrefix-Suffixsumpairs.headtail(x,n));

)

答案:

1).prefix<suffix或suffix>prefix

2).suffixidx-或suffixidx=suffixidx-1或一suffixidx

3).count++或count=count+1

第4題題號(hào):452

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

【程序填空】

功能:從鍵盤輸入若干行字符,輸入后把他們存儲(chǔ)到一磁盤文件

中。在從該文件中讀出這些數(shù)據(jù),將其中的小寫字母轉(zhuǎn)換

成大寫字母后在屏幕上輸出。

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

#include<stdio.h>

^include<stdlib.h>

#defineN100

main()

(

FILE*fp;

charc,*p,s[N][20];

inti,n;

printf(〃n=〃);scanf(〃%d〃,&n);

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

if(n<l[?]n>N)exit(0);

printf(zzinput%dstring:\nz,,n);

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

scanf('%s",s[i]);

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

fp=fopen("text",[?]);

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

(

P=s[i];

while(*p!=’\0')

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

if(Iferror(fp))fputc([?],fp);

)

fclose(fp);

printf(〃\n〃);

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

fp二fopen(〃text〃,[?]);

while((c=fgetc(fp))!=E0F)

(

if(c>'a'&&c<='z)c=+32;

putchar(c);

}

printf(〃\n〃);

fclose(fp);

}

答案:

1).II

2).〃w〃

3).*p++

4).

第5題題號(hào):423

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

【程序填空】

功能:考查字符串?dāng)?shù)組的應(yīng)用。輸出26個(gè)英文字母。

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

ttinclude<stdio.h>

voidmain(void)

(

charstring[256];

inti;

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

for(i=0;i<26;[?!)

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

stringti]=[?];

string[i]='\0';

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

printf("thearrarycontains%s\n〃,(?));

)

答案:

1).i++或++i或i=i+l或i+=l

2).'A'+i或i+'A'或65+i或i+65

3).string

第6題題號(hào):481

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

【程序填空】

功能:一個(gè)自然數(shù)被8除余1,所得的商被8除也余1,再

將第二次的商被8除后余7,最后得到一個(gè)商為a。又知這

個(gè)自然數(shù)被17除余4,所得的商被17除余15,最后得到一

個(gè)商是a的2倍。編寫程序求這個(gè)自然數(shù)。

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

#include<stdio.h>

main()

(

inti,n,a;

i=0;

while(l)

(

if(i%8==l)

(

n=i/8;

if(n%8==l)

(

n=n/8;

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

if(n%8==7)[?];

)

)

if(i%17==4)

(

n=i/17;

if(n%17==15)n=n/17;

)

if(2*a==n)

(

printf("result=%d\n”,i);

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

[?1;

)

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

【?】;

1.

答案:

1).a=n/8

2).break

3).i++或++i或i=i+l

第7題題號(hào):450

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

【程序填空】

功能:?個(gè)40磅重的板碎成4塊,每塊正好是?個(gè)整數(shù)磅,且用這

4塊當(dāng)破碼能稱出廠40磅的整數(shù)重量的物體。編程求這4塊

的各自重量。

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

iiinclude<stdio.h>

?iinclude<stdlib.h>

main()

(

inti,j,k,1,p,tl,t2,t3,t4;

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

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

for([?];j<38-i;j++)

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

for(k=j;k<[?];k++)

(

l=40-i-j-k;

for(p=l;p<40;p++)

(

for(tl=-l;tl<2;tl++)

for(t2=-l;t2<2;t2++)

for(t3=~l;t3<2;t3++)

for(t4=~l;t4<2;t4++)

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

if([?!==p)gotonext;

break;

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

next:if(p==[?])

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

exit(0);

)

}

)

printf("error.");

)

答案:

1).j=i

2).39-i-j或39-i-j

3).i*tl+j*t2+k*t3+l*t4或i*tl+j*t2+k*t3+l*t4

4).39

第8題題號(hào):428

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

【程序填空】

功能:輸入一個(gè)學(xué)生的生日(年:yOs月:m0、日:d0),并輸

入當(dāng)前日期(年:yl、月:ml、日:dl)。求出該學(xué)生的

年齡(實(shí)足年齡)。

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

ttinclude<stdio.h>

main()

{intage,yO,yl,mO,ml,dO,dl;

printf("輸入生日日期(年,月,日)”);

/***********$PACE***********/

[?]("%d,%d,%d”,&y0,&m0,&d0);

printf("輸入當(dāng)前日期(年,月,日)");

scanf(z,%d,%d,%d”,&yl,&ml,&dl);

age=yl-yO;

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

if(mO[?]ml)age―;

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

if((mO[?]ml)&&(dO>dl))age-;

printf("age=%3d”,age);

)

答案:

1).scanf

2).>

3).==

第9題題號(hào):466

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

【程序填空】

功能:用二分法求方程2X-3+4X"2+3X-6=0在(-10,10)之間的根

,其中X*n代表X的n次方。

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

ttinclude<stdio.h>

#include<math.h>

mainO

(

floatxO,xl,x2,fxO,fxl,fx2;

do

(

printf("Enterxl&x2:");

scanf(袋f,%f",&xl,&x2);

fxl=x1*((2*x1-4)*xl+3)-6;

fx2=x2*((2*x2-4)*x2+3)-6;

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

}while(fxl*fx2[?]);

do

{

x0=(xl+x2)/2;

fx0=x0*((2*x0-4)*x0+3)-6;

/***********$PACE***********/

if(fx0*fxl[?])

(

x2二xO;

fx2=fx0;

)

else

(

xl=x0;

fxl=fxO;

)

}

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

while([?]>=le-5);

printf(z/x=%6.2f\n〃,xO);

答案:

1).>0

2).<0

3).fabs(fxO)

第10題題號(hào):614

【程序填空】

題目:以下程序的功能是:輸出a、b、c三個(gè)變量中的最小值。

^include<stdio.h>

main()

inta,b,c,tl,t2;

/***********$PACE***********/

scanfC%d%d%d,,,&a,&b,[?]);

tl=a<b?a:b;

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

t2=c〈tl?[?];

printf("%d\n',t2);

答案:

1).&c

2).c:tl

第11題題號(hào):443

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

【程序填空】

功能:企業(yè)發(fā)放的獎(jiǎng)金根據(jù)利澗提成。利潤(i)低于或等于10萬元

時(shí),獎(jiǎng)金可提10%;利潤高于10萬元,低于20萬元時(shí),低于

10萬元的部分按10%提成,高于10萬元的部分,可可提成7.5%

;20萬到40萬之間時(shí),高于20萬元的部分,可提成5%;40萬

到60萬之間時(shí)高于40萬元的部分,可提成3%;60萬到100萬

之間時(shí),高于60萬元的部分,可提成1.5%,高于100萬元時(shí),

超過100萬元的部分按1%提成,從鍵盤輸入當(dāng)月利潤i,求

應(yīng)發(fā)放獎(jiǎng)金總數(shù)?

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

#include<stdio.h>

mainO

(

longinti;

doublebonus1,bonus2,bonus4,bonus6,bonuslO,bonus;

scanf(,z%ld/z,&i);

bonusl=100000*0.1;bonus2=bonus1+100000*0.75;

bonus4=bonus2+200000*0.5;

bonus6=bonus4+200000*0.3;

bonusl0=bonus6+400000*0.15;

if(i<=100000)

bonus二i*0.1;

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

elseif([?])

bonus=bonusl+(iT00000)*0.075;

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

elseif([?])

bonus=bonus2+(i-200000)*0.05;

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

elseif([?])

bonus=bonus4+(i-400000)*0.03;

elseif(i<=1000000)

bonus二bonus6+(i-600000)*0.015;

else

bonus=bonus10+(iT000000)*0.01;

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

[?](zzbonus=%d/z,bonus);

)

答案:

1).i<=200000或200000>=i

2).i<=600000或600000)二i

3).i<=l000000或1000000>=i

4).printf

第12題題號(hào):442

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

【程序填空】

功能:將長整型數(shù)中每一位上為奇數(shù)的數(shù)依次取出,構(gòu)成一個(gè)新數(shù)

放在t中。高位仍在高位,低位仍在低位。

■*/

#include<conio.h>

^include<stdio.h>

voidfun(longs,long*t)

(

intd;

longsl=l;

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

[?]二0;

while(s>0)

(

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

d=[?];

if(d%2)

(

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

*t=[?]+*t;

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

si[?]10;

)

s/=10;

)

)

main()

(

longs,t;

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

fun(s,&t);

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

}

答案:

1).*t

2).s%10

3).d*si或si*d

4).*=或=s*

第13題題號(hào):408

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

【程序填空】

功能:輸入兩個(gè)整數(shù),求他們的按位與。

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

#include<stdio.h>

voidmain()

{

intx,y,z=0,a,b,k=l;

scanf(〃%d,%d〃,&x,&y);

while(x>0&&y>0)

(

a=x%2;

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

x=[?];

b=y%2;

y=y/2;

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

z=z+[?];

k二k*2;

)

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

[?]("z=%d\n",z);

)

答案:

1).x/2

2).a*b*k或a*b*k

3).printf

第14題題號(hào):20

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

【程序填空】

功能:求兩個(gè)非負(fù)整數(shù)的最大公約數(shù)和最小公倍數(shù)。

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

#include<stdio.h>

mainO

(

intm,n,r,p,gcd,1cm;

scanf("%d%d”,&m,&n);

if(m<n){p=m,m=n;n二p;}

p=m*n;

r=m%n;

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

while([?])

(

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

m=n;n=r;[?];

}

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

gcd=[?];

lcm=p/gcd;

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

printf(z/gcd=%d,lcm=%d\nzz,[?]);

}

答案:

1).r!=0或r

2).r=m%n或r=m-m/n*n

3).n

4).gcd,1cm或n,1cm

第15題題號(hào):445

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

【程序填空】

功能:編程求任意給定的n個(gè)數(shù)中的奇數(shù)的連乘積,偶數(shù)的平方和

以及0的個(gè)數(shù),n通過scanf()函數(shù)輸入。

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

^include<stdio.h>

main()

(

intr=l,s=0,t=0,n,a,i;

printf(〃n=〃);scanf(〃猊〃,&n);

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

(

printf(〃a=〃);

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

scanf(〃%d〃,[?]);

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

if([?J!=0)

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

[?]=a;

elseif(a!=0)

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

s+=[?];

else

t++;

)

printf(z,r=%d,s=%d,t=%d\n”,r,s,t);

)

答案:

1).&a

2).a%2

3).r*

4).a*a

第16題題號(hào):13

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

【程序填空】

功能:產(chǎn)生并輸出楊輝三角的前七行。

1

11

121

1331

14641

15101051

1615201561

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

ttinclude<stdio.h>

main()

{

inta[7][7];

inti,j;

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

(

a[i][0]=l;

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

[?];

)

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

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

for(j=l;j<[?];j++)

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

a[i][j>[?];

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

(

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

for(j=0;[?];j++)

printf(〃%6d”,a[i][j]);

printf(/z\nz,);

答案:

1).a[i][i]=l

2).i

3).a[i-l][j]+a[i-l][j-1]或a[iT][jT]+a[iT][j]

4).j<=i或i>=j或j<i+l或i+l>j或j-l<i或i>j-l

第17題題號(hào):401

/*------——-----------------------------------------

【程序填空】

功能:輸入某年某月某日,判斷這一天是這年的第幾天?

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

^include<stdio.h>

main()

(

intday,month,year,sum,leap;

printf(^\npleaseinputyear,month,day\nz,);

scanf(/z%d,%d,%d〃,&year,&month,&day);

switch(month)

(

case1:sum=0;break;

case2:sum=31;break;

case3:sum=59;break;

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

case4:[?];break;

case5:sum33120;break;

case6:sum=151;break;

case7:sum=181;break;

case8:sum=212;break;

case9:sum=:243;break;

case10:sum=273;break;

case11:sum=304;break;

case12:sum=334;break;

default:printf(^dataerror");break;

)

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

[?];

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

if(year%400==0||([?))

leap=l;

else

leap=0;

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

if([?])

sum++;

printf(z,itisthe%dthday.”,sum);

)

答案:

1).sum=90

2).sum=sum+day或sum=sum+day

3).year%4==0&&year%100!=0)

4).leap-l&&month>2或leap==1&&month>2或leap==1&&2<month

第18題題號(hào):437

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

【程序填空】

功能:建立一個(gè)如下的二維數(shù)組,并按以下格式輸出。

10001

01010

00100

01010

10001

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

#include<stdio.h>

voidmain()

inta[5][5]={0},*p[5],i,j;

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

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

p[i]=[?];

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

(

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

*([?]+i)=l;

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

*(p[i]+5-([?]))=1;

)

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

(

for(j=0;j<5;j++)printf(z,%2dzz,p[i][j]);

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

[?];

)

)

答案:

1).&a[i][0]

2).p[i]

3).i+1或1+i

4).putchar(1\n)

第19題題號(hào):34

【程序填空】

功能:以下程序的功能如1(圖1)。

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

#include<conio.h>

#include<stdio.h>

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

doublefun([?],intn)

(

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

[?];

doublexa=0,s;

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

xa+=x[j]/n;

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

[?];

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

s+=(x[j]-xa)*(x[j]-xa)/n;

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

[?];

)

main()

(

doublex[100]={193.199,195.673,195.757,196.051,196.092,196.596,196.579,

196.763);

printf(z,%f\nz/,fun(x,8));

)

答案:

1).floatx[]或float*x或doublex[]或double*x

2).intj

3).s=0或s=0.0

4).returns或return(s)

第20題題號(hào):435

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

【程序填空】

功能:找出數(shù)組中最大值和此元素的下標(biāo),數(shù)組元素的值由鍵盤

輸入。

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

#include<stdio.h>

voidmain()

(

inta[10],*p,*s,i;

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

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

scanf[?]);

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

for(p=a,s=a;[?]<10;p++)

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

if(*p[?]*s)s=p;

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

printf(z,max=%d,index=%d\n",[?],s-a);

)

答案:

1).a+i或&a[i]

2).p-a

3).>

4).*s

第21題題號(hào):398

/*—

【程序填空】

功能:打印出如下圖案(菱形)

*

***

***

*

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

#include<stdio.h>

main()

(

inti,j,k;

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

for(i=0;[?];i++)

(

for(j=0;j<=4-i;j++)

printfC");

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

for(k=l;k<=[?];k++)

printf("*");

printf("\n");

)

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

for([?];j<3;j++)

(

for(k=0;k<j+3;k++)

printf("");

for(k=0;k<5-2*j;k++)

printf("*");

printf("\n");

)

答案:

1).i<=3或i<4或3>=i或4>i

2).2*i+l或i*2+l或l+2*i或l+i*2

3).j=0

第22題題號(hào):410

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

【程序填空】

功能:有n個(gè)整數(shù),使其前面各數(shù)順序向后移m個(gè)位置,最后m個(gè)數(shù)

變成最前面的m個(gè)數(shù)

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

#include<stdio.h>

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

move([?!)

intn,m,array[20];

(

int*p,array_end;

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

array_end=*([?]);

for(p=array+n-l;p>array;p-)

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

*P=*([?]);

*array=array_end;

m——;

if(m>0)move(array,n,m);

)

main()

(

intnumber[20],n,m,i;

printf(^thetotalnumbersis:");

scanf&n);

printf(,zbackm:〃);

scanf,&m);

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

scanfC%d,〃,&nuniber[i]);

scanf(/z%dz/,&number[n-1]);

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

move([?]);

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

printfCz%d,,z,number[i]);

printf(〃%d〃,number[n-1]);

)

答案:

1).array,n,m

2).array+n-l或array+n-1

3).p-1或pT

4).number,n,m

第23題題號(hào):484

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

【程序填空】

功能:識(shí)別輸入的字符串,每個(gè)單詞輸出一行

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

#include<stdio.h>

#include<string.h>

voidmain()

(

intc;

intinspace;

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

【?】;

while((c=getchar0)!='\n')

{

if(c==''||c=='\t'||c=='\n")

(

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

if([?])

(

inspace=1;

putcharC\n');

)

)

else

inspace=0;

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

r9i

)

)

答案:

1).inspace=0

2).inspace==0

3).putchar(c)

第24題題號(hào):448

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

【程序填空】

功能:已知X、Y、Z分別表示0'9中不同的數(shù)字,編程求出使算式

XXXX+YYYY+ZZZZ=YXXXZ成立時(shí)X、Y、Z的值,并要求打印該

算式。

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

^include<stdio.h>

^include<stdlib.h>

main()

(

intx,y,z;

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

for(x=0;[?];x++)

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

(

if(y==x)continue;

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

(

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

if(z==x[?]z==y)continue;

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

if(llll*(x+y+z)==[?]+1110*x+z)

(

printf(/zx=%d,y=%d,z=%d\n〃,x,y,z);

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

printfC%d+%d+%d=%d\nz/,llll*y,[?]);

exit(0);

)

答案:

1).x<10或10>x

2).||

3).10000*y或y*10000

4).10000*y+1110*x+z或10000*y+1110*x+z

第25題題號(hào):439

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

【程序填空】

功能:1982年我國第三次人口普查,結(jié)果全國人口為10.3億,假

如人口增長率為5%?編寫一個(gè)程序求在公元多少年總?cè)丝?/p>

翻了一番。

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

#include<stdio.h>

voidmain()

(

doublepl=10.3,p2,r=0.05;

intn=l;

/***********$PACE***********/

p2=pl*[?];

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

while(p2<=[?])

(

n++;

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

p2=p2*[?];

)

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

n=[?];

printf("%d年人口總數(shù)翻了一番,即為%g億人\n”,n,p2);

)

答案:

1).(1+r)或(r+1)

2).2*pl或pl*2

3).(1+r)或(r+1)

4).n+1982或1982+n

第26題題號(hào):421

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

【程序填空】

功能:輸入學(xué)生成績并顯示。

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

#include<stdio.h>

structstudent

(

charnumber[6];

charname[6];

intscore[3];

}stu[2];

voidoutput(structstudentstu[2]);

voidmain()

(

inti,j;

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

for(i=0;i<2;[?])

(

printf(〃請(qǐng)輸入學(xué)生%(^的成績:\n〃,i+1);

printf(〃學(xué)號(hào):〃);

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

scanf(“刎[?].number);

printf(〃姓名:〃);

scanf(〃%s”,stu[i].name);

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

(

printf(〃成績%d.〃,j+1);

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

scanf(〃%d〃,[?].score[j]);

)

printfCW);

output(stu);

voidoutput(structstudentstu⑵)

(

inti,j;

printf("學(xué)號(hào)姓名成績1成績2成績3\n");

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

(

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

[?]("%-6s%-6s”,stu[i].number,stu[i].name);

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

printf("%-8d”,stu[i].score[j]);

printfC\nz,);

}

}

答案:

1).i++或++i或i=i+l

2).&stu[i]

3).&stu[i]

4).printf

第27題題號(hào):478

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

【程序填空】

功能:如果整數(shù)A的全部因子(包括1,不包括A本身)之和等

于B;且整數(shù)B的全部因子(包括1,不包括B本身)

之和等于A,則將整數(shù)A和B稱為親密數(shù)。求3000以內(nèi)

的全部親密數(shù)。

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

#include<stdio.h>

#include<stdio.h>

main()

(

inta,i,b,n;

printf("Friendly-numberspairsamllerthan3000:\n");

for(a=l;a<3000;a++)

{

for(b=0,i=l;i<=a/2;i++)

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

if(!(a%i))[?];

for(n=0,i=l;i<=b/2;i++)

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

if(!(b%i))[?];

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

if([?]&&a<b)

printf(〃%4d~%4d\rT,a,b);

}

)

答案:

1).b+=i或b=b+i

2).n+=i或n=n+i

3).n==a

第28題題號(hào):470

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

【程序填空】

功能:從兩個(gè)數(shù)組中分別提取任意元素x[元,y[j],問

的最小值是多少?

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

#include<stdio.h>

#include<1imits.h>

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

^definemin(x,y)([?])

intmin_distance(intx[],inty[],intm,intn)

(

intminimum=INT_MAX;

intindex_x=0,index_y=0;

while(index_x<m&&index_y<n)

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

if([?])

(

minimum=min(minimum,x[index_x]-y[index_y]);

index_y++;

)

else

(

minimum=min(minimum,y[indexy]-x[indexx]);

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

[?];

)

returnminimum;

^include<stdio.h>

voidmain(void)

(

intx[]={1,3,7,11,18):

intm=sizeof(x)/sizeof(int);

inty□二{4,5,8,13,22};

intn=sizeof(y)/sizeof(int);

inti,min_distance(int口,int[],int,int);

printf(z,\nComputeMinimumDistanceBetweenTwoSortedArrays");

printf(〃\n=========================〃);

printf(zz\n\nGivenArray#1:〃);

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

printf(〃%5d〃,x[i]);

printf(z,\n\nGivenArray#2:〃);

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

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

printf(〃\n\nMinimumDistance=%d〃,mindistance(x,y,m,n));

}

答案:

1).x<y?x:y或y>x?x:y

2).x[indexx]>=y[indexy]或y[indexy]<-x[indexx]

3).index_x++或index_x=index_x+1或++index_x

第29題題號(hào):29

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

【程序填空】

功能:下面函數(shù)為二分法查找key值。數(shù)組中元素已遞增排序,

若找到key則返回對(duì)應(yīng)的下標(biāo),否則返回

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

#include<stdio.h>

fun(inta[],intn,intkey)

intlow,high,mid;

low=0;

high=n-l;

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

while([?!)

(

mid=(low+high)/2;

if(key<a[mid])

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

[?];

elseif(key>a[mid])

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

[?];

else

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

[?];

)

return-1;

)

main()

(

inta[10]={l,2,3,4,5,6,7,8,9,10);

intb,c;

b=4;

c=fun(a,10,b);

if(c==l)

printf(z,notfound");

else

printf(^position%d\n〃,c);

}

答案:

1).low<=high或high>=low

2).high=midT

3).low=mid+1

4).returnmid或return(mid)

第30題題號(hào):444

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

【程序填空】

功能:用指向指針的指針的方法對(duì)n個(gè)字符串排序并輸出。

*/

#include<stdio.h>

^include“string,h”

#include<stdlib.h>

#defineN100

voidsort();

mainO

(

inti,n;

char**p,*str[N],name[N][20];

printf(〃n=〃);scanf(〃%d〃,&n);

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

if(n<2[?]n>N)exit(0);

for(i=0;i<n;i++)str[i]=name[i];

z/

printf(input%dstrings:\n〃,n);

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

(

printf(z/name[%d]=,/,i);

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

scanf[?]);

}

printf("Stringarry:\n〃);

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

(

p=str+i;

printf(〃%s\n〃,*p);

)

p二str;

sort(p,n);

printf("Stringsort:\n〃);

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

p=str+i;

printf(z,%s\nz/,*p);

)

}

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

voidsort(char[?],intn)

inti,j

char*s

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

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

if(strcmp(p[i],p[j])>0)

s=p[i];

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

[?];

p[j]=s;

答案:

1).II

2).str[i]

3).**p

4).p[i]=p[j]

第31題題號(hào):17

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

【程序填空】

功能:刪除字符串中的指定字符,字符串和耍刪除的字符均由鍵盤

輸入。

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

#include<stdio.h>

ma

溫馨提示

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