c编程习题答案.docx

上传人:b****5 文档编号:12177259 上传时间:2023-04-17 格式:DOCX 页数:35 大小:21.18KB
下载 相关 举报
c编程习题答案.docx_第1页
第1页 / 共35页
c编程习题答案.docx_第2页
第2页 / 共35页
c编程习题答案.docx_第3页
第3页 / 共35页
c编程习题答案.docx_第4页
第4页 / 共35页
c编程习题答案.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

c编程习题答案.docx

《c编程习题答案.docx》由会员分享,可在线阅读,更多相关《c编程习题答案.docx(35页珍藏版)》请在冰豆网上搜索。

c编程习题答案.docx

c编程习题答案

第3章习题答案

四、编程题i<100

1.

#include

main()

{

floatc,f;

printf("inputf=\n");

scanf("%f",&f);

c=(5.0/9.0)*(f-32);

printf("%5.2f\n",c);

}

2.

#include

main()

{

intx,y;

scanf("%d",&x);

if(x<0)

y=x;

else

if(x>=10)

y=3*x-11;

else

y=2*x-1;

printf("\nx=%d,y=%d\n",x,y);

}

3.

#include

main()

{

chargrade;

grade=getchar();

switch(grade)

{case'A':

printf(">=90");break;

case'B':

printf("80~89");break;

case'C':

printf("70~79");break;

case'D':

printf("60~69");break;

case'E':

printf("0~59");

}

}

4.

#include

voidmain()

{

intp,r,n,m,temp;

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

if(n

{

temp=n;

n=m;

m=temp;

}

p=n*m;

while(m!

=0)

{r=n%m;

n=m;

m=r;

}

printf("%d,%d",n,p/n);

}

5.

#include

voidmain()

{intn,a,b,c;

for(n=100;n<=999;n++){

a=n/100;

b=(n-a*100)/10;

c=n%10;

if(n==a*a*a+b*b*b+c*c*c)

printf("%d,",n);

}

}

6.

#include

main()

{

inta,b,c,d,t;

scanf("%d,%d,%d,%d",&a,&b,&c,&d);

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

if(a>b)

{t=a;a=b;b=t;}

if(a>c)

{t=a;a=c;c=t;}

if(a>d)

{t=a;a=d;d=t;}

if(b>c)

{t=b;b=c;c=t;}

if(b>d)

{t=b;b=d;d=t;}

if(c>d)

{t=c;c=d;d=t;}

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

}

7.

#include

#include

main()

{

floate=1.0,t=1,n=1;

while(fabs(1/t)>1e-6)

{

e=e+1/t;

n=n+1;

t=t*n;

}

printf("e=%f\n",e);

}

8.

main()

{

inti,j;

for(i=3;i<=0;i--){

printf("*");

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

printf("");

printf("*");

printf("\n");

}

9.

#include

main()

{inti,a,b,c,n=0;

for(i=100;i<=999;i++){

a=i%100;

c=i%10;

b=i-a*100-c;

if(i%11==0&&(a==b||b==c||c==a))

{printf("%d",i);n+=1;

}}

}

10.

#include

main(){

intd=0,a=2;

floatm,s=0;

do{

a=2*a;

m=0.8*a;

s=s+m;

d++;

}while(a<=100);

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

}

 

第4章习题答案

五、编程题答案

1.

#include"stdio.h"

#defineN10

main()

{floatscore[N],scoresum=0,averscore;

inti,belownum=0;

for(i=0;i

{scanf(“%f”,&score[i]);

scoresum=scoresum+score[i];

}

averscore=scoresum/N;

printf("Theaveragescoreis%f",averscore);

for(i=0;i

if(score[i]

printf("Thereare%dstudentsbelowaveragescore.\n",belownum);

}

2.

#include"stdio.h"

main()

{intn1[10]={1,2,5,7,9,11,13,14,15,17},

n2[10]={0,3,4,6,8,10,12,15,16,20},

n3[20],i,j,t;

printf("Thearrayn1is:

\n");

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

printf("%d\t",n1[i]);

printf("\nThearrayn2is:

\n");

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

printf("%d\t",n2[i]);

i=0;j=0;t=0;

while(i<10&&j<10)

{if(n1[i]

while(i<10)

{n3[t++]=n1[i++];}

while(j<10)

{n3[t++]=n2[j++];}

printf("\nThenthen3arrayis:

\n");

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

printf("%d\t",n3[i]);

}

3.

#include"stdio.h"

main()

{intn20[20],i,sum,n;

floataver[5];

for(i=0;i<20;i++)n20[i]=2*i+2;

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

{sum=0;

for(i=n*5;i<5+n*5;i++)

sum=sum+n20[i];

aver[n]=sum/5;

}

printf("\nThen20arrayis:

\n");

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

printf("%d\t",n20[i]);

printf("\nTheaverarrayis:

\n");

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

printf("%f\t",aver[n]);

}

4.

#include"stdio.h"

main()

{chara[30],b[30];

intla,lb;

printf("inputstringa:

");

gets(a);

printf("stringais%s\n",a);

printf("inputstringb:

");

gets(b);

printf("stringbis%s\n",b);

la=0;lb=0;

while(a[la]!

='\0')la++;

while(b[lb]!

='\0')lb++;

printf("\nla=%d\nlb=%d\n",la,lb);

lb=0;

while(b[lb]!

='\0'&&lb<5)a[la++]=b[lb++];

printf("\nthenstringais%s\n",a);

}

5.

#include"stdio.h"

main()

{charstr[50];

inti=0,up=0,down=0;

printf("inputastring:

");

gets(str);

printf("thestringis:

%s\n",str);

while(str[i]!

='\0')

{if(str[i]>=’A’&&str[i]<=’Z’)up++;

if(str[i]>=’a’&&str[i]<=’z’)down++;

i++;

}

printf("Capletter'numberis%d\nLowletter'numberis%d",up,down);

}

6.

#include"stdio.h"

main()

{charstr1[30],str2[30],test[30];

intl1,l2,i,t,pos=-1;

printf("inputstr1:

");

gets(str1);

printf("inputstr2:

");

gets(str2);

printf("\nstr1is:

%s\nstr2is:

%s",str1,str2);

l1=strlen(str1);l2=strlen(str2);

printf("\nl1is:

%d\nl2is:

%d\n",l1,l2);

for(t=0;t<=(l1-l2);t++)

{for(i=0;i

test[i]=str1[i+t];

if(strcmp(test,str2)==0)

pos=t;

}

if(pos==-1||pos==l1)printf("Notfound\n");

elseprintf("Foundat%d\n",pos);

}

7.

#include"stdio.h"

main()

{inta[5][5]={{2,6,2,1,6},{0,5,0,1,8},{7,4,9,1,2},{9,4,2,6,5},{5,8,2,1,8}};

inti,j,sum;

printf("The5*5arrayis:

\n");

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

{for(j=0;j<5;j++)printf("%d",a[i][j]);

printf("\n");

}

sum=0;

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

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

if(i==0||i==4||j==0||j==4)sum+=a[i][j];

printf("\nThesumis:

%d",sum);

}

8.

#include"stdio.h"

main()

{inta[20][20];

inti,j;

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

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

{if(i==0||i==19||j==0||j==19||i==j||(i+j)==19)a[i][j]=1;

elsea[i][j]=0;

}

printf("Thearrayis:

\n");

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

{for(j=0;j<20;j++)printf("%d",a[i][j]);

printf("\n");

}

}

9.

#include"stdio.h"

main()

{

inta[4][5]={{8,5,1,6,9},{8,5,5,4,3},{2,5,1,6,9},{1,7,1,9,0}},i,j,sum=0;

floataver;

printf("Thearrayis:

\n");

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

{for(j=0;j<5;j++){printf("%d",a[i][j]);sum+=a[i][j];}

printf("\n");

}

aver=sum/(4*5);

printf("Theaverageofthearrayis:

%f\nThenumberbelowisaboveaverage:

\n",aver);

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

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

if(a[i][j]>aver)printf("%d",a[i][j]);

}

10.

#include"Stdio.h"

main()

{charch[5]="****\n",blank='';

inti,num;

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

{for(num=0;num

printf("%s",ch);

}

}

第5章习题答案

五、编程题

1.#include

intmax(intx,inty,intz)

{intt;

if(x>y)

t=x;

elset=y;

if(t

elsereturnt;

}

main()

{inta,b,c;

scanf("%d,%d,%d",&a,&b,&c);

printf("themaxis:

%d\n",max(a,b,c));

}

2.

#include

doubletri_area(floata,floatb,floatc)/*求三角形的面积*/

{

doubles;

s=(a+b+c)/2;

return(sqrt(s*(s-a)*(s-b)*(s-c)));

}

main()

{

floata,b,c,area;

printf("pleaseinputthesidesofatriangle:

");

scanf("%f%f%f",&a,&b,&c);

area=tri_area(a,b,c);

printf("theareais:

%6.2f",area);

}

3.

#include

#include

ascll_max()

{inti;

charmax,a[10]={0};

for(i=0;i<10;i++)scanf("%c",&a[i]);

for(i=0;i<10;i++)if(a[i]>max)max=a[i];

printf("%c",max);

}

main()

{ascll_max();

}

4.

#include

#include

#include

floatf()

{ints=1;

floati,n=1,d=0,m;

scanf("%f",&n);

for(i=1;i

returnd;

}

main()

{floats;

s=f();

printf(“%f\n”,s);

}

5.#include

#include

intrunnian(intb)

{intc;

if(b%100!

=0&&b%4==0||b%100==0&&b%400!

=0)c=1;

elsec=0;

return(c);

}

main()

{inta,is_not=10;

scanf("%d",&a);

is_not=runnian(a);

printf("%d",is_not);

}

6.

#include"stdio.h"

main()

{charc1,c2,c3,c4;

printf("Input4characters:

");

c1=getchar();

c2=getchar();

c3=getchar();

c4=getchar();

s(4,c1,c2,c3,c4);

}

s(n,a,b,c,d)

intn;

chara,b,c,d;

{

switch(n)

{

case4:

s(3,a,b,c,d);

s(3,b,a,c,d);

s(3,c,a,b,d);

s(3,d,a,b,c);

break;

case3:

s(2,a,b,c,d);

s(2,a,c,b,d);

s(2,a,d,b,c);

break;

case2:

s(1,a,b,c,d);

s(1,a,b,d,c);

break;

case1:

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

}

}

7.#include

#include

voidconverse(charch[])

{inti=0;

gets(ch);

while(ch[i]!

='\0')

{if(ch[i]>='a'&&ch[i]<='z')ch[i]-=32;i++;}

}

main()

{charch[80];

converse(ch);

puts(ch);

}

 

8.#include

#include

ou_shu(inta,intb)

{inti;

if(a>=b)

printf("请输入a,b使a,b满足a

for(i=a+1;i

{if(i%2==0)

printf("%d\n",i);}

}

main()

{inta,b;

scanf("%d,%d",&a,&b);

ou_shu(a,b);

}

9.#include

#include

dm(intn,intm)

{intp,r,temp;

if(n

{temp=n;n=m;m=temp;}

p=m*n;

while(m!

=0)/*求最大公约数*/

{r=n%m;n=m;m=r;

}

printf("H.C.F=%d\n",n);

printf("L.C.D=%d\n",p/n);

}

main()

{inta,b;

printf("inputtwointegers:

");

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

dm(a,b);

}

10.

.#include

intf(intn)

{inti;

if(n==1)return1;

elseif(n==2)return1;

elseif(n>2)returnf(n-1)+2*f(n-2);

}

main()

{intn;

scanf(“%d”,&n);

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

}

 

第6章习题答案

三、编写程序

1.#include

#defineS(x,y)intt;t=x;x=y;y=t;

main()

{

intx,y;

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

S(x,y);

printf("x=%d,y=%d",x,y);

return;

}

2.if(LEAP_YEAR(year))printf("%disaleapyear",year);

elseprintf("%disnotleapyear",year);

#defineLEAP_YEAR(y)(year%4!

=0||year%100==0)&&year%400!

=0/*闰年的条件做字符串*/

#include

main()

{

intyear;

scanf("%d",&year);

if(LEAP_YEAR(year))printf("%disaleapyear",year);

elseprintf("%disnotleapyear",year);

}

第7章习题答案

五.编程题

1.

swap(int*pt1,int*pt2)

{

inttemp;

temp=*pt1;

*pt1=*pt2;

*pt2=temp;

}

exchange(int*q1,int*q2,int*q3)

{

if(*q1<*q2)swap(q1,q2);

if(*q1<*q3)swap(q1,q3);

if(*q2<*q3)swap(q2,q3);

}

main()

{

inta,b,c,*p1,*p2,*p3;

scanf("%d,%d,%d",&a,&b,&c);

p1=&a;p2=&b;p3=&c;

exchange(p1,p2,p3);

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

}

2.

defineN10

voidsort(int*p,intn)

{

inti,j,k,temp;

for(i=0;i

{

k=i;

for(j=i+1;j

if(*(p+j)<*(p+k))k=j;

temp=*(p+k);

*(p+k)=*(p+i);

*(p+i)=temp;

}

}

main()

{

inta[N],i;

printf("input%dint:

\n",N);

for(i=0;i

scanf("%d",&a[i]);

sort(a,N);

printf("thesortedarray:

\n");

for(i=0;i

printf("%d",a[i]);

}

3.

#include

#include

voidmain(intargc,char*argv[])

{

charstr[100];

inti=0,max=0,min=0,num=0,nul=0,other=0;

gets(str);

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

{if(str[i]>=65&&str[i]<=90)max++;

elseif(str[i]>=97&&str[i]<=122)min++;

elseif(str

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1