c答案
更新时间:2024-06-18 04:55:01 阅读量: 综合文库 文档下载
c程序设计(第三版)答案 作者:谭浩强
新世纪计算机基础教育丛书 清华大学出版社 第一章 1.6 main()
{int a,b,c,max;
printf(\ scanf(\ max=a;
if(max
printf(\}
第二章
2.3
(1)(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)(-111)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()
{char c1='C',c2='h',c3='i',c4='n',c5='a'; c1+=4, c2+=4, c3+=4, c4+=4, c5+=4; printf(\} 2.8 main() {int c1,c2; c1=97;c2=98;
printf(\ %c\}
1
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() {int a,b,c; long int u,n; float x,y,z; char c1,c2; a=3;b=4;c=5;
x=1.2;y=2.4;z=-3.6; u=51274;n=128765; c1='a';c2='b';
printf(\
printf(\ b=- c=-\\n\printf(\,z);
printf(\ y+z=%5.2f z+x=%5.2f\\n\,y+z,z+x);
printf(\ n=%9ld\\n\
printf(\ printf(\} 3.5 57
5 7
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,ffff,-1 COMPUTER, COM 3.6
a=3 b=7/
2
x=8.5 y=71.82/
c1=A c2=a/ 3.7
10 20Aa1.5 -3.75 +1.4,67.8/
(空3)10(空3)20Aa1.5(空1)-3.75(空1)(随意输入一个数),67.8回车 3.8 main()
{float pi,h,r,l,s,sq,sv,sz; pi=3.1415926;
printf(\ scanf(\ l=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(\ printf(\ printf(\ printf(\ printf(\} 3.9 main()
{float c,f;
scanf(\ c=(5.0/9.0)*(f-32); printf(\}
3.10
#i nclude\main() {char c1,c2;
scanf(\ putchar(c1); putchar(c2); printf(\
printf(\}
3
第四章
4.3
(1)0 (2)1 (3)1 (4)0 (5)1 4.4 main() {int a,b,c;
scanf(\ if(a
printf(\ else
printf(\ else if(a printf(\ else printf(\} main() {int a,b,c,temp,max; scanf(\ temp=(a>b)?a:b; max=(c>temp)?c:temp; printf(\} 4.5 main() {int x,y; scanf(\ if(x<1)y=x; else if(x<10)y=2*x-1; else y=3*x-11; printf(\} 4.6 main() {int score,temp,logic; char grade; logic=1; while(logic) {scanf(\ if(score>=0&&score<=100)logic=0; 4 } if(score==100) temp=9; else temp=(score-score)/10; switch(temp) {case 9:grade='A';break; case 8:grade='B';break; case 7:grade='C';break; case 6:grade='D';break; case 5: case 4: case 3: case 2: case 1: case 0:grade='E'; } printf\} 4.7 main() {long int num; int indiv,ten,hundred,thousand,ten_thousand,place; scanf(\ if(num>9999) place=5; else if(num>999) place=4; else if(num>99) place=3; else if(num>9) place=2; else place=1; printf(\ 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*100-ten*10; switch(place) {case 5:printf(\ printf(\ break; case 4:printf(\ printf(\ break; case 3:printf(\ 5 printf(\ break; case 2:printf(\ printf(\ break; case 1:printf(\ printf(\ } } 4.8 main() {long i; float bonus,bon1,bon2,bon4,bon6,bon10; bon1=100000*0.1; bon2=bon1+100000*0.075; bon4=bon2+200000*0.05; bon6=bon4+200000*0.03; bon10=bon6+400000*0.015; scanf(\ if(i<=1e5)bonus=i*0.1; else if(i<=2e5)bonus=bon1+(i-100000)*0.075; else if(i<=4e5)bonus=bon2+(i-200000)*0.05; else if(i<=6e5)bonus=bon4+(i-400000)*0.03; else if(i<=1e6)bonus=bon6+(i-600000)*0.015; else bonus=bon10+(i-1000000)*0.01; printf(\} main() {long i; float bonus,bon1,bon2,bon4,bon6,bon10; int branch; bon1=100000*0.1; bon2=bon1+100000*0.075; bon4=bon2+200000*0.05; bon6=bon4+200000*0.03; bon10=bon6+400000*0.015; scanf(\ branch=i/100000; if(branch>10)branch=10; switch(branch) {case 0:bonus=i*0.1;break; case 1:bonus=bon1+(i-100000)*0.075;break; case 2: 6 case 3:bonus=bon2+(i-200000)*0.05;break; case 4: case 5:bonus=bon4+(i-400000)*0.03;break; case 6: case 7 case 8: case 9:bonus=bon6+(i-600000)*0.015;break; case 10:bonus=bon10+(i-1000000)*0.01; } printf(\} 4.9 main() {int t,a,b,c,d; scanf(\ 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\\n\} 4.10 main() {int h=10; float x,y,x0=2,y0=2,d1,d2,d3,d4; scanf(\ d1=(x-x0)*(x-x0)+(y-y0)*(y-y0); d2=(x-x0)*(x-x0)+(y+y0)*(y+y0); d3=(x+x0)*(x+x0)+(y-y0)*(y-y0); d4=(x+x0)*(x+x0)+(y+y0)*(y+y0); if(d1>1&&d2>1&&d3>1&&d4>1)h=0; printf(\} 第五章 循环控制 5.1 main() {int a,b,num1,num2,temp; scanf(\ if(num1 7 while(b!=0) {temp=a%b; a=b; b=temp;} printf(\ printf(\} 5.2 #i nclude\main() {char c; int letters=0,space=0,digit=0,other=0; while((c=getchar())!='\\n') {if(c>='a'&&c<='z'||c>='A'&&c<='Z') letters++; else if(c==' ')space++; else if(c>='0'&&c<='9')digit++; else other++; } printf(\} 5.3 main() {int a,n,count=1,sn=0,tn=0; scanf(\ while(count<=n) {tn+=a; sn+=tn; a*=10; ++count; } printf(\} 5.4 main() {float n,s=0,t=1; for(n=1;n<=20;n++) {t*=n; s+=t; } printf(\} 8 5.5 main() {int N1=100,N2=50,N3=10; float k; float s1=0,s2=0,s3=0; for(k=1;k<=N1;k++)s1+=k; for(k=1;k<=N2;k++)s2+=k*k; for(k=1;k<=N3;k++)s3+=1/k; printf(\} 5.6 main() {int i,j,k,n; for(n=100;n<1000;n++) {i=n/100; j=n/10-i*10; k=n; if(i*100+j*10+k==i*i*i+j*j*j+k*k*k) printf(\ } } 5.7 #define M 1000 main() {int k0,k1,k2,k3,k4,k5,k6,k7,k8,k9; int i,j,n,s; for(j=2;j<=M;j++) {n=0; s=j; for(i=1;i {case 1:k0=i;break; case 2:k1=i;break; case 3:k2=i;break; case 4:k3=i;break; case 5:k4=i;break; case 6:k5=i;break; case 7:k6=i;break; 9 case 8:k7=i;break; case 9:k8=i;break; case 10:k9=i;break; } } } if(s==0) {printf(\ if(n>1)printf(\ if(n>2)printf(\ if(n>3)printf(\ if(n>4)printf(\ if(n>5)printf(\ if(n>6)printf(\ if(n>7)printf(\ if(n>8)printf(\ if(n>9)printf(\ } } } main() {static int k[10]; int i,j,n,s; for(j=2;j<=1000;j++) {n=-1; s=j; for(i=1;i if(s==0) {printf(\ for(i=0;i 10 main() {int n,t,number=20; float a=2;b=1;s=0; for(n=1;n<=number;n++) {s=s+a/b; t=a,a=a+b,b=t; } printf(\} 5.9 main() {float sn=100.0,hn=sn/2; int n; for(n=2;n<=10;n++) {sn=sn+2*hn; hn=hn/2; } printf(\ printf(\} 5.10 main() {int day,x1,x2; day=9; x2=1; while(day>0) {x1=(x2+1)*2; x2=x1; day--; } printf(\} 5.11 #i nclude\main() {float a,xn0,xn1; scanf(\ xn0=a/2; xn1=(xn0+a/xn0)/2; do {xn0=xn1; 11 xn1=(xn0+a/xn0)/2; } while(fabs(xn0-xn1)>=1e-5); printf(\} 5.12 #i nclude\main() {float x,x0,f,f1; x=1.5; do {x0=x; f=((2*x0-4)*x0+3)*x0-6; f1=(6*x0-8)*x0+3; x=x0-f/f1; } while(fabs(x-x0)>=1e-5); printf(\} 5.13 #i nclude\main() {float x0,x1,x2,fx0,fx1,fx2; do {scanf(\ fx1=x1*((2*x1-4)*x1+3)-6; fx2=x2*((2*x2-4)*x2+3)-6; } while(fx1*fx2>0); do {x0=(x1+x2)/2; fx0=x0*((2*x0-4)*x0+3)-6; if((fx0*fx1)<0) {x2=x0; fx2=fx0; } else {x1=x0; fx1=fx0; } } while(fabs(fx0)>=1e-5); 12 printf(\} 5.14 main() {int i,j,k; for(i=0;i<=3;i++) {for(j=0;j<=2-i;j++) printf(\ for(k=0;k<=2*i;k++) printf(\ printf(\ } for(i=0;i<=2;i++) {for(j=0;j<=i;j++) printf(\ for(k=0;k<=4-2*i;k++) printf(\ printf(\ } } 5.15 main() {char i,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(\ } } } } 第六章 数组 6.1 #i nclude { int i,j,line,a[N]; for (i=2;i 13 for (j=i+1;j for (i=2,line=0;i { printf(\ line++; } if(line==10) { printf(\ line=0; } } } 6.2 #define N 10 main() {int i,j,min,temp,a[N]; for(i=0;i for(j=i+1;j if(a[min]>a[j])min=j; temp=a[i]; a[i]=a[min]; a[min]=temp; } for(i=0;i main() {float a[3][3],sum; int i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) {scanf(\ a[i][j]=sum; } for(i=0;i<3;i++) sum=sum+a[i][i]; 14 printf(\} if(number>end) a[10]=numbe 6.4 main() {int a[11]={1,4,6,9,13,16,19,28,40,100}; int temp1,temp2,number, end,i,j; scanf(\ end=a[9]; {for(i=0;i<10;i++) {if(a[i]>number) {temp1=a[i]; a[i]=number; for(j=i+1;j<11;j++) {temp2=a[j]; a[j]=temp1; temp1=temp2; } break; } } } for(i=0;i<11;i++) printf(\} 6.5 #define N 5 main() {int a[N]={8,6,5,4,1},i,temp; for(i=0;i for(i=0;i #define N 11 main() {int i,j,a[N][N]; 15 for(i=1;i for(i=3;i a[i][j]=a[i-1][j-1]+a[i-1][j]; for(i=1;i {int a[16][16],i,j,k,p,m,n; p=1; while(p==1) {scanf(\ if((n!=0)&&(n<=15)&&(n%2!=0))p=0; } for(i=1;i<=n;i++) for(j=1;j<=n;j++) a[i][j]=0; j=n/2+1; a[1][j]=1; for(k=2;k<=n*n;k++) {i=i-1; j=j+1; if((i<1)&&(j>n)) {i=i+2; j=j-1; } else {if(i<1)i=n; if(j>n)j=1; } if(a[i][j]==0)a[i][j]=k; else {i=i+2; j=j-1; a[i][j]=k; } 16 } for(i=1;i<=n;i++) {for(j=1;j<=n;j++) printf(\ printf(\ } } 6.8 #define N 10 #define M 10 main() {int i,j,k,m,n,flag1,flag2,a[N][M],max,maxi,maxj; scanf(\ for(i=0;i for(i=0;i if(flag1) { printf(\ flag2=1; } } if(!flag2) printf(\} 6.9 #i nclude {int i,j,number,top,bott,min,loca,a[N],flag; char c; for(i=0;i<=N;i++) scanf(\ flag=1; 17 while(flag) {scanf(\ loca=0; top=0; bott=N-1; if((numbera[N-1])) loca=-1; while((loca==0)&&(top<=bott)) {min=(bott+top)/2; if(number==a[min]) {loca=min; printf(\ } else if(number top=min+1; } if(loca==0||loca==-1) printf(\ printf(\ c=getchar(); if(c=='N'||c=='n')flag=0; } } 6.10 main() {int i,j,uppn,lown,dign,span,othn; char text[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++; else if(text[i][j]>='a'&&text[i][j]<='z') lown++; else if(text[i][j]>='0'&&text[i][j]<='9') dign++; else if(text[i][j]==' ') span++; else othn++; 18 } } for(i=0;i<3;i++) printf(\ printf(\ printf(\ printf(\ printf(\ printf(\} 6.11 main() {static char a[5]={'*','*','*','*','*'}; int i,j,k; char space=' '; for(i=0;i<=5;i++) {printf(\ for(j=1;j<=3*i;j++) printf(\ for(k=0;k<=5;k++) printf(\ } } 6.12 #i nclude char ch[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; else if((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 19 } 6.13 main() {char s1[80],s2[40]; int i=0,j=0; scanf(\ scanf(\ while(s1[i]!='\\0')i++; while(s2[j]!='\\0')s1[i++]=s2[j++]; s1[i]='\\0'; printf(\} 6.14 #i nclude char s1[100],s2[100]; gets(s1); gets(s2); i=0; while((s1[i]==s2[i])&&(s1[i]!='\\0'))i++; if(s1[i]=='\\0'&&s2[i]=='\\0')resu=0; else resu=s1[i]-s2[i]; printf(\} 6.15 #i nclude\main() {char from[80],to[80];; int i; scanf(\ for(i=0;i<=strlen(from);i++) to[i]=from[i]; printf(\} 第七章 7.1 hcf(u,v) int u,v; 20 {int a,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) int u,v,h; {return(u*v/h);} main() {int u,v,h,l; scanf(\ h=hcf(u,v); printf(\ l=lcd(u,v,h); printf(\} 7.2 #i nclude\float x1,x2,disc,p,q; greater_than_zero(a,b) float a,b; {x1=(-b+sqrt(disc))/(2*a); x2=(-b-sqrt(disc))/(2*a); } equal_to_zero(a,b) flaot a,b; {x1=x2=-b/(2*a);} smaller_than_zero(a,b) float a,b; {p=-b/(2*a); q=sqrt(-disc)/(2*a); } main() {float a,b,c; scanf(\ disc=b*b-4*a*c; if(fabs(disc)<=1e-5) {equal_to_zero(a,b); printf(\ } else if(disc>0) 21 {greater_than_zero(a,b); printf(\ } else {smaller_than_zero(a,b); printf(\ } } 7.3 main() {int number; scanf(\ if(prime(number)) printf(\ else printf(\} int prime(number) int number; {int flag=1,n; for(n=2;n 7.4 #define N 3 int array[N][N]; convert(array) int array[3][3]; {int i,j,t; for(i=0;i {int i,j; for(i=0;i 22 scanf(\ convert(array); for(i=0;i for(j=0;j printf(\ } } 7.5 main() {char str[100]; scanf(\ inverse(str); printf(\} inverse(str) char str[]; {char t; int i,j; for(i=0,j=strlen(str);i str[i]=str[j-1]; str[j-1]=t; } } 7.6 char concate(str1,str2,str) char str1[],str2[],str[]; {int i,j; for(i=0;str1[i]!='\\0';i++) str[i]=str1[i]; for(j=0;str2[j]!='\\0';j++) str[i+j]=str2[j]; str[i+j]='\\0'; } main() {char s1[100],s2[100],s[100]; scanf(\ scanf(\ concate(s1,s2,s); printf(\} 23 7.7 main() {char str[80],c[80]; void cpy(); gets(str); cpy(str,c); printf(\} void cpy(s,c) char s[],c[]; {int i,j; for(i=0,j=0;s[i]!='\\0';i++) if(s[i]=='a'||s[i]=='A'||s[i]=='e'||s[i]=='E'||s[i]=='i'|| s[i]=='I'||s[i]=='o'||s[i]=='O'||s[i]=='u'||s[i]=='U') {c[j]=s[i];j++;} c[j]='\\0'; } 7.8 main() {char str[80]; scanf(\ insert(str); } insert(str) char str[]; {int i; for(i=strlen(str);i>0;i--) {str[i*2]=str[i]; str[i*2-1]=' '; } printf(\} 7.9 int alph,digit,space,others; main() {char text[80]; gets(text); alph=0,digit=0,space=0,others=0; count(text); printf(\} 24 count(str) char str[]; {int i; for(i=0;str[i]!='\\0';i++) if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z')) alph++; else if(str[i]>='0'&&str[i]<='9') digit++; else if(strcmp(str[i],' ')==0) space++; else others++; } 7.10 int alph(c) char c; {if((c>='a'&&c<='z')||(c>='A'&&c<='Z')) return(1); else return(0); } int longest(string) char string[]; {int len=0,i,length=0,flag=1,place,point; for(i=0;i<=strlen(string);i++) if(alph(string[i])) if(flag) {point=i; flag=0; } else len++; else {flag=1; if(len>length) {length=len; place=point; len=0; } } return(place); } main() 25 {int i; char line[100]; gets(line); for(i=longest(line);alph(line[i]);i++) printf(\ printf(\} 7.11 #define N 10 char str[N]; main() {int i,flag; for(flag=1;flag==1;) {scanf(\ if(strlen(str)>N) printf(\ else flag=0; } sort(str); for(i=0;i sort(str) char str[N]; {int i,j; char t; for(j=1;j for(i=0;(i 7.12 #i nclude {x0=x; 26 f=((a*x0+b)*x0+c)*x0+d; f1=(3*a*x0+2*b)*x0+c; x=x0-f/f1; } while(fabs(x-x0)>=1e-5); return(x); } main() {float a,b,c,d; scanf(\ printf(\} 7.13 main() {int x,n; float p(); scanf(\ printf(\} float p(tn,tx) int tn,tx; {if(tn==0) return(1); else if(tn==1) return(tx); else return(((2*tn-1)*tx*p((tn-1),tx)-(tn-1)*p((tn-2),tx))/tn); } 7.14 #define N 10 #define M 5 float score[N][M]; float a_stu[N],a_cor[M]; main() {int i,j,r,c; float h; float s_diff(); float highest(); r=0; c=1; input_stu(); avr_stu(); 27 avr_cor(); printf(\ number class 1 2 3 4 5 avr\ for(i=0;i {printf(\ for(j=0;j printf(\ printf(\ } printf(\ for(j=0;j printf(\ %d %d\\n\ printf(\ %8.2f\\n\} input_stu() {int i,j; float x; for(i=0;i float s; for(i=0;i {for(j=0,s=0;j for(j=0;j {for(i=0,s=0;i float highest(r,c) 28 int *r,*c; {float high; int i,j; high=score[0][0]; for(i=0;i float s_diff() {int i,j; float sumx=0.0,sumxn=0.0; for(i=0;i {sumx+=a_stu[i]*a_stu[i]; sumxn+=a_stu[i]; } return(sumx/N-(sumxn/N)*(sumxn/N)); } 7.15 #i nclude void input_e(num,name) int num[]; char name[N][8]; {int i; for(i=0;i {scanf(\ gets(name[i]); } } void sort(num,name) int num[]; char name[N][8]; {int i,j,min,temp1; char temp2[8]; for(i=0;i {min=i; for(j=i;j if(num[min]>num[j])min=j; 29 temp1=num[i]; num[i]=num[min]; num[min]=temp1; strcpy(temp2,name[i]); strcpy(name[i],name[min]); strcpy(name[min],temp2); } for(i=0;i printf(\} void search(n,num,name) int n,num[]; char name[N][8]; {int top,bott,min,loca; loca=0; top=0; bott=N-1; if((n while((loca==0)&&(top<=bott)) {min=(bott+top)/2; if(n==num[min]) {loca=min; printf(\ } else if(n top=min+1; } if(loca==0||loca==-1) printf(\} main() {int num[N],number,flag,c,n; char name[N][8]; input_e(num,name); sort(num,name); for(flag=1;flag;) {scanf(\ search(number,num,name); printf(\ c=getchar(); if(c=='N'||c=='n') 30 flag=0; } } 7.16 #i nclude {int c,i,flag,flag1; char t[MAX]; i=0; flag=0; flag1=1; while((c=getchar())!='\\0'&&i {if(c>='0'&&c<='9'||c>='A'&&c<='F'||c>='a'&&c<='f') {flag=1; t[i++]=c; } else if(flag) {t[i]='\\0'; printf(\ printf(\ c=getchar(); if(c=='n'||c=='N') flag1=0; else {flag=0; i=0; } } } } htoi(s) char s[]; {int i,n; n=0; for(i=0;s[i]!='\\0';i++) {if(s[i]>='0'&&s[i]<='9') n=n*16+s[i]-'0'; if(s[i]>='a'&&s[i]<='f') n=n*16+s[i]-'a'+10; if(s[i]>='A'&&s[i]<='F') n=n*16+s[i]-'A'+10; } 31 return(n); } 7.17 #i nclude {int i; if((i=n/10)!=0) convert(i); putchar(n+'0'); } main() {int number; scanf(\ if(number<0) {putchar('-'); number=-number; } convert(number); } 7.18 main() {int year,month,day; int days; scanf(\ days=sum_day(month,day); if(leap(year)&&(month>=3)) days+=1; printf(\} static int day_tab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31} int sum_day(month,day) int month,day; {int i; for(i=1;i int leap(year) int year; {int leap; leap=year%4==0&&year0!=0||year@0==0; 32 return(leap); } 第八章 编译预处理 8.1 #define SWAP(a,b) t=b;b=a;a=t main() {int a,b,t; scanf(\ SWAP(a,b); printf(\} 8.2 #define SURPLUS(a,b) ((a)%(b)) main() {int a,b; scanf(\ printf(\} 8.3 #i nclude\ #define S(a,b,c) ((a+b+c)/2) #define AREA(a,b,c) (sqrt(S(a,b,c)*(S(a,b,c)-a)*(S(a,b,c)-b)*(S(a,b,c)-c))) main() {float a,b,c; scanf(\ if(a+b>c&&b+c>a&&a+c>b) printf(\ else printf(\} 8.4 #define LEAP(y) (y%4==0)&&(y0!=0)||(y@0==0) main() {int year; scanf(\ if(LEAP(year)) printf(\ else printf(\} 33 8.5 printf(\ printf(\ printf(\输出结果: value=5.000000ormat \value=3.000000ormat \ 8.6 \#define NL \#define Fs \#define F \#define F1 F NL #define F2 F \#define F3 F \main() {float a,b,c; scanf(Fs,&a); scanf(Fs,&b); scanf(Fs,&c); PR(NL); PR(F1,a); PR(F1,b); PR(F1,c); PR(NL); PR(F2,a,b); PR(F1,c); PR(NL); PR(F3,a,b,c); } 8.7 /*format.h文件*/ #define DIGIT(d) printf(\#define FLOAT(f) printf(\#define STRING(s) printf(\/*用户文件*/ #i nclude\main() {int d,num; float f; char s[80]; 34 scanf(\ switch(num) {case 1:scanf(\ DIGIT(d); break; case 2:scanf(\ FLOAT(f); break; case 3:scanf(\ STRING(s); break; default:printf(\ } } 8.8 main() {int a,b,c; scanf(\ printf(\} max(a,b,c) int a,b,c; {int t; t=x>y?x:y; return(t>z?t:z); } #define MAX(a,b) ((a)>(b)?(a):(b)) main() {int a,b,c; scanf(\ printf(\} 8.10 #i nclude\#define MAX 80 #define CHANGE 1 main() {char str[MAX]; int i; scanf(\ #if(CHANGE) 35 {for(i=0;i {if(str[i]!='\\0') if(str[i]>='a'&&str[i]<'z'||str[i]>='A'&&str[i]<'Z') str[i]++; else if(str[i]=='z'||str[i]=='Z') str[i]-=25; } } #endif printf(\} 第九章 指针 9.1 main() {int n1,n2,n3; int *p1,*p2,*p3; scanf(\ p1=&n1; p2=&n2; p3=&n3; if(n1>n2)swap(p1,p2); if(n1>n3)swap(p1,p3); if(n2>n3)swap(p2,p3); printf(\ } swap(p1,p2) int *p1,*p2; {int p; p=*p1;*p1=*p2;*p2=p; } 9.2 main() {char *str1[20],*str2[20],*str3[20]; char swap(); scanf(\ scanf(\ scanf(\ if(strcmp(str1,str2)>0)swap(str1,str2); if(strcmp(str1,str3)>0)swap(str1,str3); if(strcmp(str2,str3)>0)swap(str2,str3); printf(\} 36 char swap(p1,p2) char *p1,*p2; {char *p[20]; strcpy(p,p1); strcpy(p1,p2); strcpy(p2,p); } 9.3 main() {int number[10]; input(number); max_min_value(number); output(number); } input(number) int number[10]; {int i; for(i=0;i<10;i++) scanf(\} max_min_value(number) int number[10]; {int *max,*min; int *p,*end; end=number+10; max=min=number; for(p=number+1;p *p=number[9]; number[9]=*max; *max=*p; return; } output(number) int number[10]; {int *p; for(p=number;p 37 } 9.4 main() {int number[20],n,m,i; scanf(\ scanf(\ for(i=0;i scanf(\ move(number,n,m); for(i=0;i printf(\} move(array,n,m) int array[20],n,m; {int *p,end; end=*(array+n-1); for(p=array+n-1;p>array;p--) *p=*(p-1); *array=end; m--; if(m>0)move(array,n,m); } 9.5 #define nmax 50 main() {int i,k,m,n,num[nmax],*p; scanf(\ p=num; for(i=0;i if(i==n)i=0; } while(*p==0)p++; 38 printf(\} 9.6 main() {int len; char *str[20]; scanf(\ len=length(str); printf(\} length(p) char *p; {int n=0; while(*p!='\\0') {n++;p++;} return(n); } 9.7 main() {int m; char *str1[20],*str2[20]; scanf(\ scanf(\ if(strlen(str1) {copystr(str1,str2,m); printf(\ } } copystr(p1,p 39
正在阅读:
c答案06-18
2012园林规划设计(题)105-16
江西省2016年中等学校招生考试英语试题(word版,解析版)01-15
南开15秋学期《古代散文欣赏》在线作业12-09
WORD2010 习题汇总及答案05-14
50部好看的经典言情小说推荐07-30
- 高一物理牛顿运动定律全套学习学案
- 水处理一级反渗透加还原剂亚硫酸氢钠后为什么ORP会升高
- 毕业设计(论文)-正文董家口 - 图文
- 荣盛酒店经营管理公司录用通知及入职承诺书II
- 第二讲 大学英语四级快速阅读技巧
- 质量管理体系文件(2015年委托第三方医药物流配送企业专用版本)
- 214071收款办法
- 苏轼对《文选》选文的评价
- 《诊断学基础B》1-8作业
- 广东省东莞市高一数学下学期期末教学质量检查试题
- 海南电网公司VIS推广应用管理办法
- 红星照耀中国习题
- 苏教版小学语文六年级上册期末复习资料之生字词整理
- 局域网组建与应用—王向东
- 税务稽查内部管理文书样式
- 环保社会实践调查表
- 九年级思品第一单元复习
- 2016年全国注册咨询工程师继续教育公路路线设计规范试卷
- 毕业设计-青岛港董家口港区防波堤设计
- 撞背锻炼方法与益处
- 答案
- 计算机组成原理 试 题80
- 安徽重点项目-宣城体育中心项目可行性研究报告
- 湛江市2018年八年级英语上学期期末试卷合集10套word文档含答案
- 5年级上数学基训错题
- 金算盘软件操作手册 第三章应收管理
- 影视鉴赏考卷答案
- 寄生虫习题集
- 应用化学专业英语(课后答案和课文翻译)
- 家委会工作总结
- 陈海琛 浅谈中学化学抽象概念形象化教学方法2014-12-15 16.1.39
- 班级和办公室文化建设
- 大学生宗教知识竞赛题库
- 《网络营销》复习题含答案
- 关于印发建设工程项目廉洁风险的通知
- 校园招聘存在的问题与对策
- 八年级历史下册 第13课 海峡两岸的交往学案(无答案)
- MOLDFLOW模流分析结果解释
- 关于文言文教学有效性的探讨
- 21#楼酒店式公寓施工组织设计
- 【精品】冀教版小学三年级科学上册教案2