编程题答案
/*P127: 6-1*/ #include void main() {
int i,j,k;
for(i=1;i
for(j=0;j
for(k=0;k
if(i*i*i+j*j*j+k*k*k==1099)
printf(\"%d \",i*100+j*10+k); }
/*P127(P132): 6-2*/ void reverse(char *s); void main() { char *str=\"abcdefg\";
puts(str);
reverse(str);
puts(str); } void reverse(char *s) { char *p1,*p2,ch;
p1=p2=s;
while(*p2!=\'\\0\')
p2++;
p2--;
while(p1 { ch=*p1; *p1=*p2; *p2=ch; p1++; p2--; } } /*P127: 1*/ void main() { int i,j; for(i=1;i { for(j=0;j printf(\" \"); for(j=1;j printf(\"%2d\",j); for(j=i-1;j>=1;j--) printf(\"%2d\",j); printf(\"\\n\"); } } - 1} /*P135: 8.2.2-1*/ #include void main() { int a[21]={0,1,1},i; for(i=3;i a[i]=a[i-1]+a[i-2]; for(i=1;i { printf(\"%6d\",a[i]); if(i%10==0) printf(\"\\n\"); } printf(\"\\n\"); } /*P135: 8.2.3-1A*/ #include void main() { int total,sum,m,n; total=0; for(m=1;m { sum=0; for(n=1;n sum=sum+n; total=total+sum; } printf(\"total=%d\\n\",total); } /*P143: 1*/ #include #include #define SIZE 20 int findposition(int array[],int n,int data); int insert(int array[],int n,int data,int pos); void main() { int a[SIZE],d,n,*p; printf(\"Input array length:\"); scanf(\"%d\",&n); /* 输入插入前数组长度,n要求小于SIZE */ printf(\"\\nInput array %d element:\\n\",n); for(p=a;p scanf(\"%d\",p); /* 输入插入前已排好序的元素 */ printf(\"\\nBefore insert:\\n\"); for(p=a;p printf(\"%d\\t\",*p); /* 输出插入前的数组元素 */ printf(\"\\nInput insert data:\"); - 3 { if(*s==c) } return(n); } /*P144: 8.3.3-1*/ n++; #include int mychrcmp(char *s,char *t); void main() { char str1[30],str2[30]; int n; gets(str1); gets(str2); n=mychrcmp(str1,str2); printf(\"\\nstr1= %s,str2=%s,n=%d\\n\",str1,str2,n); } int mychrcmp(char *s,char *t) { while(*s++==*t++&&*s!=0); if(*s==\'\\0\'&&*t==\'\\0\') return(*(--s)-*(--t)); else return(*s-*t); } /*P150: 5-1*/ #include void main() { int i; for(i=1;;i++) if((i+3)%5==0&&(i-3)%6==0) { printf(\"n=%d\\n\",i); break; } } /*P150(P132): 5-2*/ #include void reverse(char *s); void main() { char *str=\"abcdefg\"; puts(str); reverse(str); puts(str); } void reverse(char *s) { char *p1,*p2,ch; p1=p2=s; while(*p2!=\'\\0\') - 5 if(a[j]!=a[i-j-1]) { f=0; break; } if(f) printf(\"%ld,YES.\\n\",m); else printf(\"%ld,NO.\\n\",m); } /*P158(P127): 5-1*/ #include void main() { int i,j,k; for(i=1;i for(j=0;j for(k=0;k if(i*i*i+j*j*j+k*k*k==1099) printf(\"%d \",i*100+j*10+k); } /*P158: 5-2*/ #include char *cut(char *s,int m,int n); void main() { char str[50],*p=str; int n0,n; gets(str); scanf(\"%d%d\",&n0,&n); p=cut(str,n0,n); printf(\"str=%s,n0=%d,n=%d\\n\",p,n0,n); } char *cut(char *s,int m,int n) { char *t=s; int i,j=0; for(i=0;i s++; while(*s!=\'\\0\'&&j { *(t+j)=*s; s++; j++; } *(t+j)=\'\\0\'; return t; } /*P158(P127): 1*/ - 78 -