1、8.79.5.0,4,c=310.i=10,j=200) y=1 else if (x=0) y=0 else y=-13.(1) a0 | b0 (2) x0 & x=10 (3) a=1.5 & b=1.5 & c=1.5 (4)pa | pb | pb?a:b)c?max:6-47185,0,3985 belongs to B10. (1) (a=0) (2) (b=0) (3) (discc & a+cb & b+ca) s=(a+b+c)/2; printf(“%f”,area);2main() int x,y; scanf(“%d,%d”,&x,& if (x*x+y*y1000)
2、 printf(“%dn”,(x*x+y*y)/100); else printf(“%dn”,x+y);3.main() int x, scanf(“%d”,&x); if(x%3=0 & x%5=0 & x%7=0) printf(“yesn”); printf(“non”);4#include “math.h” float x,y; scanf(“%f”,& if(x-2) y=x*x-sin(x); else if (x3000) d=0.15 else if( s=2000) d=0.1; else if(s=1000) d=0.08;=500) d=0.05;=250) d=0.0
3、2; else d=0 f=p*w*s*(1-d); printf(“%f”,f);习题55-1单选题15 CDACB 610 DCAAB 1116 DBDBCB5-2填空题12 02k=5,s=43333 4How Are You52#18#6(1) i10 (2) j%3!=07.(1) flag*(float)k/(k+1) (2) flag=-flag8(1) s=0,t=1; (2) t=t*x/i*pow(-1,i+1); (3) printf(“%f”,s);9(1) max=x (2) x!=-1 (3) scanf(%d, &x)10. (1) n=1 (2) s5-3 编程
4、题1. (1) main() int i; lont s=0; for(i=1;i1e-6)printf(“%f”,s);(4)main() int i=1, flag=1,pi=0; s+=flag*1.0/(2*i-1); i+;while(1.0/(2*i-1)1e-6);printf(”%f”,s);2.main()int m,n,t,a,b;scanf(“%d,%d”m,&n);if (m0y-)s*=x printf(”%d,%d,%dn”,s%10,s/10%10,s/100%10);4.main()int i=1, k=2, sum=0; sum+=k; k=k*2;while
5、(sum=100);printf(”total=%fn”, 0.4*sum/(i-1);5. main() int x,y,z; for( x=120x+) for( y=1y=0 & (5*x+3*y+z/3)-1001e-5) printf(”x=%d,y=%d,z=%dn”,x,y,z)6. main()int j,k for( j=1j=4j+) for(k=1;k=1;j-) for(k=1; for(k=1;=2*j-1; printf(”*”);printf(”n”);7.分析:其实此问题的解法非常简单。从数学上来说,可以用穷举法。比如让x从2开始,判断表达式“(x%3=2 &
6、x%5=3 & x%7=2)”是否成立,若不成立,让x自增1,直到某个x满足条件了,则这个x即为所求。程序如下: #include int x=2; while(!(x%3=2 & x%7=2) x+; printf(x=%dn,x);程序运行结果:x=238分析:定义一个字符变量c和一个整型变量n,c用于接受从键盘输入的非回车行字符,n用于统计从键盘输入的非回车符字符的个数,也就是说,以(c=getchar()!=n为循环条件,反复进行“n+;”的运算。程序代码如下:#include void main()int n=0;char c;printf(input a string:nwhile
7、(c=getchar()!) n+;,n);9. 例如:153是一个“水仙花数”,因为153=1的三次方5的三次方3的三次方。程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。int i,j,k,n;water flowernumber is:for(n=100;n1000;n+)i=n/100;j=n/10%10;k=n%10;if(i*100+j*10+k=i*i*i+j*j*j+k*k*k)printf(%-5d10.main()int x,y,z;x 3*x+2*y+z=50) printf(man=%d, woman=%d,child=%dn”,x,y,z
8、); 习题66-1单选题1-5CBBAD 6-10DBAAC 11-15CCDDC 16-20BBABC6-2填空题1.1202.x3.3,2,2,3 4. /I5.8,176.97.1.0/(i*i) 8.fun-in:30,20,10 fun-end:1015,35,1050 10,20,309.012345 10. 93636 6-3 编程题void zhuan( ) char ch; while(ch=getchar()!=n) if(ch=a & ch=z) ch=ch-32;putchar(ch);float expp(int n) int k, fac=1; float sum=
9、0; kaj3(1) r+bk (2) *x8-3 编程题1#define N 10 int aN=1,2,3,4,5,6,7,8,9,0,osum=0, qsum=0, j; for(j=0;10; if( j%2) qsum+=aj; else osum+=aj; printf(“osum=%d,qsum=%dn”, osum,qsum);2. #define N 10 int aN=10,20,30,40,50,60,70,80,90, j, k, x;N; if (xj; k-) ak=ak-1; aj=x;for(j=0; printf(“%d”,aj); 3#define N 10
10、 int aN=1,2,3,4,5,6,7,8,9,0. bN-1, j; for( j=0;N-1; bj=aj+1-aj; if(j%3=0)printf(“n”); printf(“%d”,bj);4. #define M 3int aMM=1,2,3,4,5,6,7,8,9,j,sum1=0,sum2=0;M; sum1+=ajj; sum2+=ajM-(j+1);printf(“%d,%dn”,sum1,sum2);5. #define M 3int aMM=1,2,3,2,4,5,3,5,6,j,k,flag=1; for(k=0; if (ajk!=akj) flag=0; br
11、eak;if (flag) printf(“ok”);else printf(”NO”);6#include “string.h” char c10,j; gets(c); cj;cj=(cj cj=A & ajk=z) n2+;=0 &=9) n3+; else if (ajk= ) n4+; n5+;5; printf(“%4d”, nj);习题99-1单选题15 DDBAC 610 BADCB 1115 ADCDA 1620 CCABD9-2填空题1 . (1) 2,1 (2) 10#30#5# (3) FOUR,O (4) 602. (1) 49 (2) AC (3)2 (4)2 (5)3,12,39 (6) 7 5 3 1 9 (7)150 1 2 3 45 6 7 8 910 11 12 13 140 5 2 2 7 13 (8)12,10,9,6,5,4,3,2,1 (9)1,1,11,1 3,3,33,3(10)1 0 0 0 10 1 0 1 00 0 1 0 0(11)3. (1) *x (2) t4. (1) 0或0 (2) n+或n+=1或n=n+15. ABCDCD6. 0247. void fun(double b22) 或 void fun(double b022) 或 v