




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
谭浩强C语言程序设计习题参考答案
第一章
1.6
main()
{inta,b,c,max;
printf("inputthreenumbers:\n,,);
scanf("%d,%d,%d〃,&a,&b,&c);
max=a;
if(max<b)max=b;
if(max<c)max=c;
printf(〃max=%d”,max);
)
第一早
2.3
⑴(10)10=(12)8=(a)16
(2)(32)10=(40)8=(20)16
(3)(75)10=(113)8=(4b)16
(4)(-617)10=(176627)8=(fd97)16
(5)(-lll)10=(177621)8=(ff91)16
(6)(2483)10=(4663)8=(963)16
(7)(-28654)10=(110022)8=(9012)16
(8)(21003)10=(51013)8=(520b)16
2.6
aabb(8)cc(8)abc
(7)AN
2.7
main()
{charcl='C',c2=,h',c3='1,c4-n',c5='a;
cl+=4,c2+=4,c3+=4,c4+=4,c5+=4;
,/,,
printf(%c%c%c%c%c\n,cl,c2,c3,c4,c5);
)
2.8
main()
{intcl,c2;
cl=97;c2=98;
,,
printfC%c%c)cl,c2);
)
2.9
(1)=2.5
(2)=3.5
2.10
9,11,9,10
2.12
(1)24(2)10(3)60(4)0(5)0(6)0
第三章
3.4
main()
{inta,b,c;
longintu,n;
floatx,y,z;
charcl,c2;
a=3;b=4;c=5;
x=l.2;y=2.4;z=-3.6;
u=51274;n=128765;
cl='a';c2='b';
printf(〃\n〃);
printf(,,a=%2db=%2dc=%2d\n”,a,b,c);
printf(〃x=%8.6f,y=%8.6f,z=%9.6f\n”,x,y,z);
printf("x+y=%5.2fy+z=%5.2fz+x=%5.2f\n”,x+y,y+z,
z+x);
printf("u=%61dn=%91d\n”,u,n);
printf("cl='%c'or%d(ASCH)\n”,cl,cl);
printf("c2=‘%c'or%d(ASCH)\n”,c2,c2);
3.5
57
57
67.856400,-789.123962
67.856400,-789.123962
67.86
-789.12,67.856400,-789.123962,67.856400,-789.123962
6.785640e+001,-7.89e+002
A,65,101,41
1234567,4553207,d687
65535,177777,
COMPUTER,COM
3.6
a=3b=7/
x=8.5y=71.82/
cl=Ac2=a/
3.7
1020Aal.5-3.75+1.4,67.8/
(空3)10(空3)20Aal.5(空1)-3.75(空1)(随意输入一个数),
67.8回车
3.8
main()
{floatpi,h,r,1,s,sq,sv,sz;
pi=3.1415926;
printf("inputr,h'n");
scanf("%f,%f",&r,&h);
]=2*pi*r;
s=r*r*pi;
sq=4*pi*r*r;
sv=4.0/3.0*pi*r*r*r;
sz=pi*r*r*h;
printf(〃1=%6.2f\n",1);
printf(,,s=%6.2f\n",s);
printf(,,sq=%6.2f\n",sq);
printf("vq=%6.2f\n",sv);
printf(〃vz=%6.2f\n〃,sz);
)
3.9
main()
{floatc,f;
scanf&f);
c=(5.0/9.0)*(f-32);
printf(,,c=%5.2f\n",c);
3.10
#include,zstdio.h"
main()
{charcl,c2;
scanf("%c,%c”,&cl,&c2);
putchar(cl);
putchar(c2);
printf("\n");
printf(,/%c%c\n,/,cl,c2);
)
第四章
4.3
(1)0(2)1(3)1(4)0(5)1
4.4
main()
{inta,b,c;
scanf("%d,%d,%d",&a,&b,&c);
if(a<b)
if(b<c)
printf("max=%d\n〃,c);
else
printf(〃inax=%d\n”,b);
elseif(a<c)
printf("max=%d\n”,c);
else
printf("max=%d\n〃,a);
)
main()
{inta,b,c,temp,max;
scanf(〃%d,%d,%d",&a,&b,&c);
temp=(a>b)?a:b;
max=(c>temp)?c:temp;
printf(〃max=%d”,max);
)
4.5
main()
{intx,y;
scanf("%d",&x);
if(x<l)y=x;
elseif(x<10)y=2*xT;
elsey=3*xTl;
,,,,
printf(y=%d>y);
4.6
main()
{intscore,temp,logic;
chargrade;
logical;
while(logic)
{scanf(级d”,&score);
if(score>=0&&score<=100)logic=0;
)
if(score==100)
temp=9;
else
temp=(score-score%10)/10;
switch(temp)
{case9:grade='A';break;
case8:grade='B';break;
case7:grade='C';break;
case6:grade='D';break;
case5:
case4:
case3:
case2:
case1:
case0:grade=,E';
)
,,,,
printf(score=%d,grade=%c)score,grade);
)
4.7
main()
{longintnum;
intindiv,ten,hundred,thousand,ten_thousand,place;
scanf&num);
if(num>9999)place=5;
elseif(num>999)place=4;
elseif(num>99)place=3;
elseif(num>9)place=2;
elseplace=l;
printf("place=%d\n〃,place);
ten_thousand=num/10000;
thousand=(num-ten_thousand*10000)/1000;
hundred:(num-ten_thousand*10000-thousand*1000)/100;
ten=(num-ten_thousand*10000-thousand*1000-hundred*100
)/10;
indiv=num-ten_thousand*10000-thousand*1000-hundred*10
0-ten*10;
switch(place)
{case
5:printf("%d,%d,%d,%d,%d\n〃,ten_thousand,thousand,hundr
ed,ten,indiv);
printf(,,%d,%d,%d,%d,%d\n”,indiv,te
n,hundred,thousand,tenthousand);
break;
case
4:printf("%d,%d,%d,%d\n”,thousand,hundred,ten,indiv);
printf("%d,%d,%d,%d\n”,indiv,ten,h
undred,thousand);
break;
case3:printf("%d,%d,%d\n”,hundred,ten,indiv);
printf%d,%d\n”,indiv,ten,hund
red);
break;
case2:printf(,,%d,%d\n,,»ten,indiv);
printf("%d,%d\n”,indiv,ten);
break;
,,,,
case1:printf(%d\n,indiv);
printf(〃%d\n〃,indiv);
4.8
main()
{longi;
floatbonus,bonl,bon2,bon4,bon6,bonlO;
bonl=100000*0.1;
bon2=bonl+100000*0.075;
bon4=bon2+200000*0.05;
bon6=bon4+200000*0.03;
bonl0=bon6+400000*0.015;
scanf&i);
if(i〈=le5)bonus=i*0.1;
elseif(K=2e5)bonus=bonl+(i-100000)*0.075;
elseif(i<=4e5)bonus=bon2+(i-200000)*0.05;
elseif(i<=6e5)bonus=bon4+(i-400000)*0.03;
elseif(i<=le6)bonus=bon6+(i-600000)*0.015;
elsebonus=bonl0+(i-1000000)*0.01;
printf("bonus=%10.2f”,bonus);
)
main()
{longi;
floatbonus,bonl,bon2,bon4,bon6,bonlO;
intbranch;
bonl=100000*0.1;
bon2=bonl+100000*0.075;
bon4=bon2+200000*0.05;
bon6=bon4+200000*0.03;
bonl0=bon6+400000*0.015;
scanf&i);
branch=i/100000;
if(branch>10)branch=10;
switch(branch)
{case0:bonus=i*0.1;break;
case1:bonus=bonl+(i-100000)*0.075;break;
case2:
case3:bonus=bon2+(i-200000)*0.05;break;
case4:
case5:bonus=bon4+(i-400000)*0.03;break;
case6:
case7
case8:
case9:bonus=bon6+(i-600000)*0.015;break;
case10:bonus=bonl0+(i-1000000)*0.01;
printf("bonus=%10.2f”,bonus);
)
4.9
main()
{intt,a,b,c,d;
scanf(〃%d,%d,%d,%d",&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\n”,a,b,c,d);
)
4.10
main()
{inth=10;
floatx,y,x0=2,y0=2,dl,d2,d3,d4;
scanf("%f,%f",&x,&y);
dl=(x-xO)*(x-xO)+(y-yO)*(y-yO);
d2=(x-xO)*(x-xO)+(y+yO)*(y+yO);
d3=(x+xO)*(x+xO)+(y-yO)*(y-yO);
d4=(x+xO)*(x+xO)+(y+yO)*(y+yO);
if(dl>l&&d2>l&&d3>l&&d4>l)h=0;
printf("h=%d",h);
)
第五章循环控制
5.1
main()
{inta,b,numl,num2,temp;
scanf(〃%d,%d,/,&numl,&num2);
if(numl<num2){temp=numl;numl=num2;num2=temp;}
a=numl;b=num2;
while(b!=0)
{temp=a%b;
a=b;
b=temp;}
printf("%d\n",a);
printf("%d\n",numl*num2/a);
)
5.2
#include,zstdio.h〃
main()
{charc;
intletters=O,space=O,digit=O,other=0;
while((c=getchar())!='\n')
{if(c>='a'&&c<='z'||c>='A'Z')letters++;
elseif(c=='')space++;
elseif(c>='O'&&c<='9')digit++;
elseother++;
)
printf("letters=%d\nspace=%d\ndigit=%d\nother=%d\n”,1
etters,space,digit,other);
)
5.3
main()
{inta,n,count=l,sn=0,tn=0;
scanf(,,%d,%d〃,&a,&n);
while(count<=n)
{tn+=a;
sn+=tn;
a*=10;
++count;
printf("a+aa+aaa+…=%d\n”,sn);
5.4
main()
{floatn,s=0,t=l;
for(n=l;n<=20;n++)
{t*=n;
s+=t;
)
printf("s=%e\n”,s);
)
5.5
main()
{intNl=100,N2=50,N3=10;
floatk;
floatsl=0,s2=0,s3=0;
for(k=l;k<=Nl;k++)sl+=k;
for(k=l;k<=N2;k++)s2+=k*k;
for(k=l;k<=N3;k++)s3+=l/k;
printf(,,s=%8.2f\n”,sl+s2+s3);
)
5.6
main()
{inti,j,k,n;
for(n=100;n<1000;n++)
{i=n/100;
j=n/10-i*10;
k=n%10;
if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
printf("n=%d\n”,n);
}
)
5.7
ttdefineM1000
main()
{intkO,kl,k2,k3,k4,k5,k6,k7,k8,k9;
inti,j,n,s;
for(j=2;j<=M;j++)
{n=0;
s=j;
for(i=l;i<j;i++)
{if((j%i)==0)
{n++;
s=s-i;
switch(n)
{case1:kO=i;break;
case2:kl=i;break;
case3:k2=i;break;
case4:k3=i;break;
case5:k4=i;break;
case6:k5=i;break;
case7:k6=i;break;
case8:k7=i;break;
case9:k8=i;break;
case10:k9=i;break;
if(s==0)
{printf("j=%d\n”,j);
if(n>l)printf%d”,kO,kl);
if(n>2)printf(〃,%d”,k2);
if(n>3)printfk3);
if(n>4)printf(",%d”,k4);
if(n>5)printf(",%d”,k5);
if(n>6)printf(",%d”,k6);
if(n>7)printf(",%d”,k7);
if(n>8)printf(〃,%d”,k8);
if(n>9)printf%d\n”,k9);
}
)
)
main()
{staticintk[10];
inti,j,n,s;
for(j=2;j<=1000;j++)
{n=-l;
s=j;
for(i=l;i<j;i++)
{if((j%i)==O)
{n++;
s=s-i;
k[n]=i;
)
}
if(s==0)
{printf(,/j=%d\n,/,j);
for(i=0;i<n;i++)
printf("%d,",k[i]);
printf("%d\n",k[n]);
}
}
)
5.8
main()
{intn,t,number=20;
floata=2;b=l;s=0;
for(n=l;n<=number;n++)
{s=s+a/b;
t=a,a=a+b,b=t;
)
printf(〃s=%9.6f\n〃,s);
)
5.9
main()
{floatsn=100.0,hn=sn/2;
intn;
for(n=2;n<=10;n++)
{sn=sn+2*hn;
hn=hn/2;
printf("sn=%f\n”,sn);
,,,,
printf(hn=%f\n,hn);
)
5.10
main()
{intday,xl,x2;
day=9;
x2=l;
while(day>0)
{xl=(x2+l)*2;
x2=xl;
day一;
)
printf("xl=%d\n〃,xl);
)
5.11
#include,zmath.h"
main()
{floata,xnO,xnl;
scanf&a);
xn0=a/2;
xnl=(xnO+a/xnO)/2;
do
{xnO=xnl;
xnl=(xnO+a/xnO)/2;
while(fabs(xnO-xnl)>=le-5);
printfCa-%5.2f\n,xnl=%8.2f\n”,a,xnl);
)
5.12
#include,zinath.h"
main()
{floatx,xO,f,fl;
x=l.5;
do
{xO=x;
f=((2*x0-4)*x0+3)*x0-6;
f1=(6*x0-8)*x0+3;
x=xO-f/f1;
)
while(fabs(x-xO)>=le-5);
printf(z,x=%6.2f\n",x);
5.13
#include,zmath.h"
main()
{floatxO,xl,x2,fxO,fxl,fx2;
do
{scanf(〃%f,%f”,&xl,&x2);
fxl=xl*((2*xl-4)*xl+3)-6;
fx2=x2*((2*x2-4)*x2+3)-6;
)
while(fxl*fx2>0);
do
{x0=(xl+x2)/2;
fxO=xO*((2*x014)*x0+3)-6;
if((fx0*fxl)<0)
{x2=x0;
fx2=fx0;
)
else
{xl=xO;
fxl=fxO;
)
while(fabs(fxO)>=le-5);
printf("x0=%6.2f\n",xO);
)
5.14
main()
{inti,j,k;
for(i=O;i<=3;i++)
{for(j=0;j<=2-i;j++)
printf(〃“);
for(k=0;k<=2*i;k++)
printf(〃*〃);
printf(〃\n");
)
for(i=0;i<=2;i++)
{for(j=0;j<=i;j++)
printf(〃〃);
for(k=0;k<=4-2*i;k++)
printf("*");
printf("\n");
}
)
5.15
main()
{chari,j,k;
for(i=,x';i<=,z,;i++)
for(j=x';j<=z';j++)
{if(i!=j)
for(k=,x';k<='z';k++)
{if(i!=k&&j!=k)
{if(i!='x&&k!='x'&&k!='z')
printf('\na-%c\tb一%c\tc一%
c\n”,i,j,k);
)
)
)
)
第六章数组
6.1
ttinclude<math.h>
ttdefineN101
main()
{inti,j,line,a[N];
for(i=2;i<N;i++)a[i]=i;
for(i=2;i<sqrt(N);i++)
for(j=i+l;j<N;j++)
{if(a[i]!=0&&a[j]!=0)
if(a[j]%a[i]==O)
a[j]=O;
printf('\n");
for(i=2,line=0;i<N;i++)
{if(a[i]!=0)
,,,
{printfC%5d,a[i]);
line++;)
if(line==10)
{printf("\n");
line=0;}
)
)
6.2
ttdefineN10
main()
{inti,j,min,temp,a[N];
for(i=0;i<N;i++)
scanf&a[i]);
for(i=0;i<N-l;i++)
{min=i;
for(j=i+l;j<N;j++)
if(a[min]>a[j])min=j;
temp=a[i];
a[i]=a[min];
a[min]=temp;
}
for(i=0;i<N;i++)
printf("%5d”,a[i]);
)
6.3
main()
{floata[3][3],sum;
inti,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{scanf&sum);
a[i][j]=sum;
}
for(i=0;i<3;i++)
sum=sum+a[i][i];
printf(〃sum=%f〃,sum);
6.4
main()
{inta[ll]={l,4,6,9,13,16,19,28,40,100};
inttempi,temp2,number,end,i,j;
scanf&number);
end=a[9];
if(number>end)a[10]=number;
else
{for(i=0;i<10;i++)
{if(a[i]>number)
{templ=a[i];
a[i]=number;
for(j=i+l;j<ll;j++)
{temp2=a[j];
a[j]=templ;
templ=temp2;
)
break;
for(i=0;i<l1;i++)
printf("%6d”,a[i]);
)
6.5
#defineN5
main()
{inta[N]={8,6,5,4,1),i,temp;
for(i=0;i<N/2;i++)
{temp=a[i];
a[i]=a[N-i-l];
a[N-i-l]=temp;
}
for(i=0;i<N;i++)
printf("%4d",a[i]);
)
6.6
#defineN11
main()
{inti,j,a[N][N];
for(i=l;i<N;i++)
{a[i][i]=l;
a[i][1]=1;
for(i=3;i<N;i++)
for(j=2;j<i;j++)
a[i][j]=a[i-l][j-l]+a[i-l][j];
for(i=l;i<N;i++)
{for(j=l;j<=i;j++)
printf("%6d”,a[i][j]);
printf('\n");
)
)
6.7
main()
{inta[16][16],i,j,k,p,m,n;
P=l;
while(p==l)
{scanf(〃%d〃,&n);
if((n!=0)&&(n<=15)&&(n%2!=0))p=0;
)
for(i=l;i<=n;i++)
for(j=l;j<=n;j++)
a[i][j]=0;
j=n/2+l;
a[l][j]=l;
for(k=2;k<=n*n;k++)
{i=i-l;
j=j+l;
if((i<l)&&(j>n))
{i=i+2;
j=jT;
)
else
{if(i<l)i=n;
if(j>n)j=l;
)
if(a[i][j]==0)a[i][j]=k;
else
{i=i+2;
j=j-l;
a[i][j]=k;
}
)
for(i=l;i<=n;i++)
{for(j=l;j<=n;j++)
,,,
printfC%3d,a[i][j]);
printf('\n〃);
6.8
ttdefineN10
ttdefineM10
main()
{inti,j,k,m,n,flagl,flag2,a[N][M],max,maxi,maxj;
scanf("%d,%d",&n,&m);
for(i=0;i<n;i++)
for(j=0;j<m;j++)
scanf("%d”,&a[i][j]);
flag2=0;
for(i=0;Kn;i++)
{max=a[i][0];
for(j=0;j<m;j++)
if(max<a[i][j])
{max=a[i][j];
maxj=j;
}
for(k=0,flagl=l;k<n&&flagl;k++)
if(max>a[k][maxj])flagl=0;
if(flagl)
{printf('\na[%d][%d]=%d\n”,i,maxj,max);
flag2=l;
)
)
if(!flag2)printf("NOT");
)
6.9
#include<stdio.h>
ttdefineN15
main()
{inti,j,number,top,bott,min,loca,a[N],flag;
charc;
for(i=0;i<=N;i++)
scanf("%d”,&a[i]);
flag=l;
while(flag)
{scanf("%d”,&number);
loca=0;
top=0;
bott=N-l;
if((number<a[0])||(number>a[N-l]))
loca=-l;
while((loca-0)&&(top<=bott))
{min=(bott+top)/2;
if(number==a[min])
{loca=min;
printf(,/numbered,loca=%d\n〃,number,
loca+1);
}
elseif(number<a[min])
bott=min-l;
else
top=min+l;
)
if(loca==0|loca==-l)
,,,,
printf(%dnotintable\n,number);
printf("continueY/Nory/n\n");
c=getchar();
if(c=='N'||c--n')flag=0;
)
)
6.10
main()
{inti,j,uppn,lown,dign,span,othn;
chartext[3][80];
uppn=lown=dign=span=othn=0;
for(i=0;i<3;i++)
{gets(text[i]);
for(j=0;j<80&&text[i][j]!='\0';j++)
{if(text[i][j]>=,A'&&text[i][j]<='Z')
uppn++;
elseif(text[i][j]>=,a&&text[i][j]<='z')
lown++;
elseif(text[i][j]>=,O'&&text[i][j]<=,9')
dign++;
elseif(text[i][j]=='')
span++;
else
othn++;
}
}
for(i=0;i<3;i++)
,,,,
printf(%s\n,text[i]);
printf(,,uppn=%d\n,/,uppn);
printf(〃lown=%d\n〃,lown);
printf("dign=%d\n",dign);
printf("span=%d\n",span);
printf(,,othn=%d\n,/,othn);
)
6.11
main()
{staticchara[5]={'*,,,*,,,*,,,*,,,*)
inti,j,k;
charspace』;
for(i=0;i<=5;i++)
{printf(〃\n〃);
for(j=l;j<=3*i;j++)
printfspace);
for(k=0;k<=5;k++)
printf("%3c",a[k]);
)
)
6.12
#include<stdio.h>
main()
{inti,n;
charch[80],tran[80];
gets(ch);
i=0;
while(ch[i]!='\0')
{if((ch[i]>='A')&&(ch[i"='Z'))
tran[i]=26+64-ch[i]+1+64;
elseif((ch[i]>=,a')&&(ch[i]<='z'))
tran[i]=26+96-ch[i]+1+96;
else
tran[i]=ch[i];
i++;
}
n=i;
for(i=0;i<n;i++)
putchar(tran[i]);
)
6.13
main()
{charsi[80],s2[40];
inti=0,j=0;
scanf(〃%s〃,si);
scanfs2);
while(si[i]!='\0')i++;
while(s2[j]!='\0')si[i++]=s2[j++];
si[i]=,\0';
,,,,
printf(s=%s\n,si);
)
6.14
#include<stdio.h>
main()
{inti,resu;
charsl[100],s2[100];
gets(sl);
gets(s2);
i=0;
while((si[i]==s2[i])&&(sl[i]!='\0'))i++;
if(si[i]==,\0J&&s2[i]=='\0')resu=0;
else
resu=sl[i]-s2[i];
printf("sl=%s,s2=%s,resu=%d\n”,si,s2,resu);
)
6.15
#include“stdio.h〃
main()
{charfrom[80],to[80];;
inti;
scanf("%s”,from);
for(i=0;i<=strlen(from);i++)
to[i]=from[i];
printf("%s\n〃,to);
)
第七章
7.1
hcf(u,v)
intu,v;
{inta,b,t,r;
if(u>v){t=u;u=v;v=t;}
a=u;b=v;
while((r=b%a)!=0)
{b=a;a=r;}
return(a);
)
lcd(u,v,h)
intu,v,h;
{return(u*v/h);}
main()
{intu,v,h,1;
scanf("%d,%d",&u,&v);
h=hcf(u,v);
printf(〃H.C.F=%d\n〃,h);
l=lcd(u,v,h);
printf("L.C.D=%d\n”,1);
)
7.2
ttinclude^math.h"
floatxl,x2,disc,p,q;
greaterthanzero(a,b)
floata,b;
{xl=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
)
equal_to_zero(a,b)
flaota,b;
{xl=x2=-b/(2*a);}
smallerthanzero(a,b)
floata,b;
{p=-b/(2*a);
q=sqrt(-disc)/(2*a);
)
main()
{floata,b,c;
scanfC%f,%f,%f〃,&a,&b,&c);
disc=b*b-4*a*c;
if(fabs(disc)<=le-5)
{equal_to_zero(a,b);
printf(,,xl=%5.2f\tx2=%5.2f\n”,xl,x2);
)
elseif(disc>0)
{greater_than_zero(a,b);
printf("xl=%5.2f\tx2=%5.2f\n”,xl,x2);
)
else
{smaller_than_zero(a,b);
printf(〃xl=%5.2f+%5.2fi\tx2=%5.2f-%5.2fi\n〃,p,q,
P,q);
)
)
7.3
main()
{intnumber;
scanf&number);
if(prime(number))
printf("yes");
else
printf("no");
)
intprime(number)
intnumber;
{intflag=l,n;
for(n=2;n<number/2&&f1ag==1;n++)
if(number%n==0)
flag=0;
return(flag);
)
7.4
ttdefineN3
intarray[N][N];
convert(array)
intarray[3][3];
{inti,j,t;
for(i=0;i<N;i++)
for(j=i+l;j<N;j++)
{t=array[i][j];
array[i][j]=array[j][i];
array[j][i]=t;
)
)
main()
{inti,j;
for(i=0;i<N;i++)
for(j=0;j<N;j++)
scanf(,,%d,/,&array[i][j]);
convert(array);
for(i=0;i<N;i++)
{printf(〃\n〃);
for(j=0;j<N;j++)
printfarray[i][j]);
)
)
7.5
main()
{charstr[100];
scanfstr);
inverse(str);
printf(〃%s\n”,str);
inverse(str)
charstr[];
{chart;
inti,j;
for(i=0,j=strlen(str);i<strlen(str)/2;i++,j--)
{t=str[i];
str[i]=str[j-l];
str[j-l]=t;
}
)
7.6
charconcate(strl,str2,str)
charstrl[],str2[],str[];
{inti,j;
for(i=0;strl[i]!='\0';i++)
str[i]=strl[i];
for(j=0;str2[j]!='\0';j++)
str[i+j]=str2[j];
str[i+j]=\0';
)
main()
{charsl[100],s2[100],s[100];
scanf('%s”,si);
scanf('%s”,s2);
concate(si,s2,s);
printf('\ns=%s”,s);
)
7.7
main()
{charstr[80],c[80];
voidcpy();
gets(str);
cpy(str,c);
printf('\n%s\n”,c);
)
voidcpy(s,c)
chars[],c[];
{inti,j;
for(i=0,j=O;s[i]!='\0';i++)
if(s[i]=='a'|[s[i]=='A'||s[i]=='e'||s[i]=='E'||s[i
l==,i,II
s[i]=-T||s[i]==,o,||s[i]==,0,||s[i]==,u,||
s[i]=='UJ)
{c[j]=s[i];j++;}
c[j]=,\0';
)
7.8
main()
{charstr[80];
scanfstr);
insert(str);
)
insert(str)
charstr[];
{inti;
for(i=strlen(str);i>0;i一)
{str[i*2]=str[i];
str[i*2-l]=,';
)
printf("%s\n",str);
)
7.9
intalph,digit,space,others;
main()
{chartext[80];
gets(text);
alph=O,digit=O,space=O,others=0;
count(text);
printf(,,\nalph=%d,digit=%d,space=%d,others=%d\n,/,alph
,digit,space,others);
)
count(str)
charstr[];
{inti;
for(i=0;str[i]!=,\0';i++)
if((str[i]>=,a&&str[i]<=,z')||(str[i]〉='A'&&str[i
]<=Z])
alph++;
elseif(str[i]>=,O'&&str[i]<=,9')
digit++;
elseif(strcmp(str[i],;')==0)
space++;
else
others++;
)
7.10
intalph(c)
charc;
{if((c>=,a&&c<=,z')||(c>='A'&&c<='Z'))
return(1);
else
return(0);
)
intlongest(string)
charstring[];
{intlen=0,i,length=0,flag=l,place,point;
for(i=0;i<=strlen(string);i++)
if(alph(string[i]))
if(flag)
{point=i;
flag=0;
}
else
len++;
else
{flag=l;
if(len>length)
{length=len;
place=point;
len=0;
}
return(place);
)
main()
{inti;
charline[100];
gets(line);
for(i=longest(line);alph(line[i]);i++)
printfline[i]);
printf(〃\n〃);
)
7.11
ttdefineN10
charstr[N];
main()
{inti,flag;
for(flag=l;flag==l;)
{scanfstr);
if(strlen(str)>N)
printf(,,inputerror");
else
flag=O;
)
sort(str);
for(i=0;i<N;i++)
printf(〃%c”,str[i]);
)
sort(str)
charstr[N];
{inti,j;
chart;
for(j=l;j<N;j++)
for(i=0;(i<N-j)&&(str[i]!='\0');i++)
if(str[i]>str[i+1])
{t=str[i];
str[i]=str[i+1];
str[i+l]=t;
}
)
7.12
#include<math.h>
floatsolut(a,b,c,d)
floata,b,c,d;
{floatx=l,xO,f,fl;
do
{xO=x;
f-((a*xO+b)*xO+c)*xO+d;
f1=(3*a*x0+2*b)*xO+c;
x=xO-f/f1;
}
while(fabs(x-xO)>=le-5);
return(x);
)
main()
{floata,b,c,d;
scanf(〃%f,%f,%f,%r,&a,&b,&c,&d);
printf("x=%10.7f\n”,solut(a,b,c,d));
)
7.13
main()
{intx,n;
floatp();
scanf("%d,%d",&n,&x);
printf("P%d(%d)=%10.2f\n”,n,x,p(n,x));
floatp(tn,tx)
inttn,tx;
{if(tn==0)
return(1);
elseif(tn-1)
return(tx);
else
return(((2*tnT)*tx*p((tn~l),tx)-(tn-l)*p((tn-2),t
x))/tn);
)
7.14
ttdefineN10
#defineM5
floatscore[N][M];
floata_stu[N],a_cor[M];
main()
{inti,j,r,c;
floath;
floatsdiff();
floathighest();
r=0;
c=l;
inputstuO;
avr_stu();
avr_cor();
printf('\nnumberclass12345avr
〃);
for(i=0;i<N;i++)
{printf("\nN0%2d”,i+1);
for(j=0;j<M;j++)
printf(,z%8.2f”,score[i][j]);
printf("%8.2f〃,a_stu[i]);
}
printf(,,\nclassavr,/);
for(j=0;j<M;j++)
printf("%8.2f”,a_cor[j]);
h=highest(&r,&c);
printf("\n\n%8.2f%d%d\n”,h,r,c);
,,
printf("\n%8.2f\n>s_diff());
)
input_stu()
{inti,j;
floatx;
for(i=0;i<N;i++)
{for(j=0;j<M;j++)
{scanf&x);
score[i][j]=x;
avrstu()
{inti,j;
floats;
for(i=0;i<N;i++)
{for(j=0,s=0;j<M;j++)
s+=score[i][j];
a_stu[i]=s/5.0;
)
)
avr_cor()
{inti,j;
floats;
for(j=0;j<M;j++)
{for(i=0,s=0;i<N;i++)
s+=score[i][j];
a_cor[j]=s/(float)N;
)
floathighest(r,c)
int*r,*c;
{floathigh;
inti,j;
high=score[0][0];
for(i=0;i<N;i++)
for(j=0;j<M;j++)
if(score[i][j]>high)
{high=score[i][j];
*r=i+l;
*c=j+l;
)
return(high);
)
floats_diff()
{inti,j;
floatsumx=0.0,sumxn=0.0;
for(i=0;i<N;i++)
{sumx+=a_stu[i]*a_stu[i];
sumxn+=a_stu[i];
return(sumx/N-(sumxn/N)*(sumxn/N));
)
7.15
#include<stdio.h>
ttdefineN10
voidinpute(num,name)
intnum[];
charname[N][8];
{inti;
for(i=0;i<N;i++)
{scanf&num[i]);
gets(name[i]);
)
)
voidsort(num,name)
intnum[];
charname[N][8];
{inti,j,min,tempi;
chartemp2[8];
for(i=0;i<N-l;i++)
{min=i;
for(j=i;j<N;j++)
if(num[min]>num[j])min=j;
templ=num[i];
num[i]=num[min];
num[min]=templ;
strcpy(temp2,name[i]);
strcpy(name[i],name[min]);
strcpy(name[min],temp2);
)
for(i=0;i<N;i++)
printf(〃\n%5d%10s”,num[i],name[i]);
)
voidsearch(n,num,name)
intn,num[];
char
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 设备入股买卖协议书
- 酒吧设备出售协议书
- 车辆推迟过户协议书
- 酒吧包间转让协议书
- 茶楼经营合伙协议书
- 邻居双方建房协议书
- 体育俱乐部安全协议书
- 选美大赛参赛协议书
- 转让自建商铺协议书
- 酒馆股份保密协议书
- 第六单元《军民团结一家亲》课件 中学音乐人音版七年级下册
- 2025年中考地理热点素材题(含答案)
- 宁波大学2014-2015年高等数学A2期末考试试卷
- 2025年硕士研究生政治考研大纲
- 电子商务教师资格证教学理念试题及答案
- 地下工程防水技术规范
- 《医院手术室净化施工方案》培训
- 【正版授权】 ISO/IEC 19790:2025 EN Information security,cybersecurity and privacy protection - Security requirements for cryptographic modules
- 整套课件-证券投资学(第二版)赵锡军
- 2025年《教师专业成长与专业发展》培训心得(3篇)
- 2025年重庆市环卫集团有限公司招聘笔试参考题库含答案解析
评论
0/150
提交评论