《C语言程序设计学习指导(第2版)》由会员分享,可在线阅读,更多相关《C语言程序设计学习指导(第2版)(5页珍藏版)》请在人人文库网上搜索。
1、第一章 概述一、选择1.C 2.B 3.C 4.D 5.D 6.A 7.B 8.C 9.A 10.B 11.C 12.D 13.B 14.B 第二章 数据类型一、选择1.D 2.A 3.C 4.D 5.A 6.B 7.A 8.B 9.A 10.D 11.B 12.C 13.C 14.D 15.C 16.B 17.D 18.A 19.C 20.B 21.B 22.D 23.A 24.B 25.B 26.B 27.C第三章 运算符和表达式一、 选择1.A 2.D 3.D 4.D 5.D 6.A 7.C 8.C 9.B 10.B 11.C 12.C 13.A 14.A 15.A 16.A 17.B 。
2、18.C 19.C 20.D 21.A 22.A 23.C 24.C 25.A 26.B 27.D 28.A29.B 30.C 31.D 32.D 33.D 34.B 35.A 36.A 37.B 38.C 39.D 40.B 41.B 42.C 43.B 第四章 输入和输出一、 选择1.C 2.D 3.C 4.C 5.C 6.B 7.B 8.C 9.D 10.D 11.D 12.D 13.B 14.A 15.B 16.B 二、编程1.double fun(double m) float n;n=(5.0/9.0)*(m-32); return n; 2. char fun(char c)c=。
3、c+32;return c;3.double fun(int m) double y=0;y=sin(m)*10;return(y);4.float fun ( float h )return (long)( h * 100 + 0.5 )/ 100.0;第五章 选择结构一、选择1.D 2. B 3.A 4.C 5.C 6.B 7.B 8.A 9.C 10.C 11.D 12.A 13.D 14.A 15.A 16.B 17.D 18.C 19.A 20.A 21.A 22.B 23.A 24. D二、编程1.int fun(int n)int bw,sw,gw;bw=n/100;sw=(n-。
4、bw*100)/10;gw=n%10;if(n=bw*bw*bw+sw*sw*sw+gw*gw*gw) return 1;else return 0;2.double y(float x)double z;if(x10) z=exp(x);else if(x-3) z=log(x+3);else z=sin(x)/(cos(x)+4);return(z);3.int fun(int x) int k;k=x*x;if(k%10=x)|(k%100=x)return 1;elsereturn 0;第六章 循环结构一、选择1.C 2.A 3.A 4.B 5.C 6.B 7.C 8.A 9.D 10。
5、.B 11.A 12.C 13.C 14.A 15.D 16.D 17.D 18.A 19.C 20.A 21.C 22.B 23.B 24.C 25.A 26.D 二、填空1.位置 1:r!=0 【或】 0!=r 【或】 r位置 2:r=m%n 【或】 r=m-m/n*n位置 3:n位置 4:gcd,lcm 【或】 n,lcm2.位置 1:k=0位置 2:n%10 【或】 n-n/10*10 【或】 n-10*(n/10)位置 3:while(n0) 【或】 while(0=i 【或】 300i位置 3:i%7=0|i%17=0 【或】 !(i%7)|!(i%17) 【或】 !(i%17)|。
6、!(i%7) 【或】 !(i%7&i%17) 【或】 i%17=0|i%7=0位置 4:n%5=0 【或】 !(n%5) 【或】 n/5*5=n5.位置 1:s=0位置 2:i+=2 【或】 i=i+2 【或】 i=2+i 【或】 i+,i+位置 3:j=j 【或】 jj 【或】 jj位置 4:f=f*j 【或】 f=j*f三、改错1.位置 1:#include math.h 【或】 #include 位置 2:float s=0,t=1,p=1; 【或】 float s=0,p=1,t=1; 【或】 float p=1,s=0,t=1; 【或】 float p=1,t=1,s=0; 【或】 。
7、float t=1,p=1,s=0; 【或】 float t=1,s=0,p=1;位置 3:while(fabs(t)1e-4) 【或】 while(0.00010.0001)位置 4:printf(pi=%fn,s*4); 【或】 printf(pi=%fn,4*s);2.位置 1:printf(%8.0f,f1); 【或】 printf(%f,f1); 【或】 printf(%8f,f1);位置 2:for(i=1;ii;i+) 【或】 for(i=2;i=i;i+) 【或】 for(i=1;i=i;i+)位置 3:f1=f2;位置 4:f2=f3;3.位置 1:long k=1;位置 2。
8、: scanf(%ld,&n);位置 3: n/=10; 【或】 n=n/10;4.位置 1:scanf(%d,&n);位置 2:for(i=1;i=i;i+) 【或】 for(i=1;ii;i+)位置 3:s+=1.0/t; 【或】 s=s+1.0/(float)t; 【或】 s=1.0/(float)t+s; 【或】 s=s+1.0/t; 【或】 s=1.0/t+s; 【或】 s+=1.0/(float)t; 【或】 s+=1.0/(double)t; 【或】 s=s+1.0/(double)t; 【或】 s=1.0/(double)t+s;5.位置 1:sum=1.0; 【或】 sum=。
9、1;位置 2:s2=1.0; 【或】 s2=1;位置 3:for(k=4;k=k;k+) 【或】 for(k=4;kk;k+) 【或】 for(k=4;1+nk;k+)6.位置 1:t=1; 【或】 t=1.0;位置 2:t=t*j; 【或】 t=j*t; 【或】 t*=j;位置 3:s=s+t; 【或】 s=t+s; 【或】 s+=t;位置 4:printf(jiecheng=%fn,s);四、编程1.int fun(int n) int d,s=0;while (n0)d=n%10;s+=d*d*d;n/=10;return s;2.int fun(int n)int i,s=0;for (i=2;i 0) s = s/100; t = s%10*sl + t;sl = sl * 10;7.double fun(int n)double m=1.0;int i;double p=1.0;for(i=1;im)m=x1+x2;x1=x2;x2=m;return m。