C语言练习册1-4章答案_第1页
C语言练习册1-4章答案_第2页
C语言练习册1-4章答案_第3页
C语言练习册1-4章答案_第4页
C语言练习册1-4章答案_第5页
已阅读5页,还剩21页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目录 第 1 章 C 语言程序设计概述.1 第 2 章 C 语言的基本数据类型与表达式.2 第 3 章 C 语言程序的控制结构.3 第 1 节 顺序结构程序设计.3 第 2 节 选择结构程序设计.6 第 3 节 循环结构程序设计.15 第 4 章 函数及预处理命令.22 第第 1 章章 C 语言程序设计概述语言程序设计概述 一、选择题一、选择题 题号12345678910 答案A ABDCC DCDC 题号11121314151617181920 答案ADCBACBACC 二、填空题二、填空题 1、 一 _、主 、主 2、.C 、.OBJ 、.EXE 3、“” 、“”、变量说明、执行语句 4、

2、主函数 5、/* 、*/、 运行 三、编程题三、编程题 1、(1) 解: #include “stdio.h” void main() printf(“Programming Languagen”); (2) 解: #include “stdio.h” void main() printf(*n); printf(n); printf( Welcome n); printf(n); printf(*n); 2、解 main() int a,b,x,y,m,n; a=25;b=5; x=a+b; y=a-b; m=a*b; n=a/b; printf(“x=%d,y=%d,m=%d,n=%dn”

3、,x,y,m,n); 第第 2 章章 C 语言的基本数据类型与表达式语言的基本数据类型与表达式 一、选择题一、选择题 题号12345678910 答案D CADCBCBCA 题号11121314151617181920 答案DBDCCBCBDA 题号21222324252627282930 答案CCAACCBDCC 题号31323334353637383940 答案CBBCACACAA 题号4142434445 答案CBCDC 二、填空题二、填空题 1、_ 十 、八 、十六 2、int 、float、double 3、3 4、-16 5、1 6、2 7、10 、6 8、9 9、f 10、(m/

4、10%10)*100+m/100*10+m%10 11、3. 12、1 13、4 14、1. 、 6. 15、1 、 -2 、 1 、 4 三、程序分析题三、程序分析题 1、111 2、4,3 3、1 4、11,19,30,15、65,89 6、 a=%d,b=%d 第第 3 章章 C 语言程序的控制结构语言程序的控制结构 第第 1 节节 顺序结构程序设计顺序结构程序设计 一、选择题一、选择题 题号12345678910 答案BCCCCBCDCD 题号11121314151617181920 答案BCBDABDBCC 题号212223242526272829 答案DBBDACDBC 二、填空题

5、二、填空题 1、_a=5.0,4,c=3 2、 0 3、b、b、b 4、 -14 5、未指明变量 k 的地址、格式控制符与变量类型不匹配 6、scanf(“%d%f%f%c%c”, 36.512.6aA 7、AB8、10 15 10 9、123 、45. 10、不确定值 11、261 12、16 13、 2,1 三、程序分析题三、程序分析题 1、4 、 52、20 3、无正确值 4、x=98 y=765. z=4321. 5、 879 6、 10 , A , 10 四、编程题四、编程题 1、解 #include “stdio.h” main() float c,f; printf(请输入一个华

6、氏温度n); scanf(%f, c=5.0/9.0*(f-32); printf(摄氏温度为:%6.2fn,c); 2、解 #include “stdio.h” main() int a,b,c,x; printf(请输入一个三位整数:); scanf(%d, a=x/100; b=x/10%10; c=x%10; printf(输出结果:%d%d%dn,c,b,a); 3、#include main() int hour,min,tran; printf(Enter time:); scanf(%d%d, printf(before:%dh%dmmn,hour,min); tran=hou

7、r*60+min; printf(after:%dminn,tran); 4、#include main() int a,n,i; float p,result=1; printf(Input a,n,p:); scanf(%d,%d,%f, for(i=1;i=n;i+) result=result*(1+p); /求(1+p)的 n 次方 result=a*result-a; printf(n 到期利息为:%fn,result); 5、#include #define PI 3.14159 main() float r,h,l,s,v; printf(Input r,h:); scanf(

8、%f,%f, l=2*PI*r; s=PI*r*r; v=PI*r*r*h; printf(r=%f,h=%fnl=%f,s=%f,v=%fn,r,h,l,s,v); 6、#include void main() int a,b; long c; scanf(%d%d, c=(b%10)*1000+(b/10)*100+(a%10)*10+a/10; /*将 a 数的十位和个位数依次在 c 数个位和十位上, b 数的十位和个位数依次放在 c 数的百位和千位*/ printf(The result is:%ldn,c); 第第 2 节节 选择结构程序设计选择结构程序设计 一、一、选择题选择题 题

9、号12345678910 答案D B D CCB C DBC A 题号11121314151617181920 答案 B AB C BBCBBCA 题号2122232425262728 答案D B BCCCAA 二、填空题二、填空题 1、 else printf(“%dn”,a+b); 3、 main() float x; int y; printf(n input x:); scanf(%f, switch(x0) case 1:y=-1;break; case 0:switch(x=0) case 1:y=0;break; default:y=1; printf(n y=%d,y); 4、

10、#include #include main() float x,y; printf(Input x:); scanf(%f, if(x0) y=x*x*x; else if(x=0) y=0; else y=sqrt(x); printf(x=%f,y=%fn,x,y); 5、#include main() int n,n1,n2,n3,n4,n5,nn; printf(Enter n(n=0 printf(n 每一位上的数字是(从高到低)%dn,n); nn=n; printf(n 的逆序数为%dn,nn); 6、#include main() float i,r; printf(Inpu

11、t i(万元):); scanf(%f, if(i=10) r=i*0.1; else if(i=20) r=10*0.1+(i-10)*0.075; else if(i=40) r=10*0.1+10*0.075+(i-20)*0.05; else if(i=60) r=10*0.1+10*0.075+20*0.05+(i-40)*0.03; else if(i=100) r=10*0.1+10*0.075+20*0.05+20*0.03+(i-60)*0.015; else r=10*0.1+10*0.075+20*0.05+20*0.03+40*0.015+(i-100)*0.01; p

12、rintf(i=%f,r=%fn,i,r); 7、#include #include void main() double s=0.0; int i,n; scanf(%d, for(i=0; in;i+) if(i%5=0 s=sqrt(s); printf(s=%fn,s); 8、#include main() int n,g,sh; printf(Enter a two-digit number:); scanf(%d, printf(You entered the number ); if(n=10 scanf(%d, while(k0) if(k%3=0 scanf(%d, prin

13、tf(s=%dn,s); 2、#include “stdio.h” void main( ) int sum,n,i,s=0; for(n=200;n=500;n+) sum=0; for(i=1;i=1;n-) x=2*(x+1); printf(n=%d,x); 4、 #include stdio.h void main() int x,y,z; for(x=1;x=19;x+) for(y=1;y=33;y+) for(z=1;z=99;z+) if(x+y+z=100) 5. main() int i,n=0; for(i=100;i=600;i+) a=i/100; b=i%100/

14、10; c=i%10; if(b+c)%10=a) n+; printf(“n=%dn”,n); 6、#include void main() int i,sum=0,a,b,c; for(i=123;i0) printf(%d ,i); printf(n%dn,sum); 7、输出 9*9 口诀表。 #include main() int i,j; for(i=1;i=9;i+) for(j=1;j=i;j+) printf(%4d,i*j); printf(n); 8、1) #include void main() double s=0.0; int i,n; scanf(%d, for(

15、i=1;i=n;i+) s=s+1.0/(2*i-1)+1.0/(2*i); printf(S=%fn,s); 2) #include #include void main() double s=1.0; int i,m; scanf(%d, for(i=1;i=m;i+) s=s-log(double)i); s=s*s; printf(S=%fn,s); 3) #include void main() double d1=1.0,d2=1.0,s=1.0,t,x; int i,f=-1,n; scanf(%d%lf, for(i=1;i=n;i+) d1=d1*x; d2=d2*i; t=

16、f*d1/d2; s=s+t; f=-f; printf(S=%fn,s); 9、#include void main() int t; int a=1,b=1,c=0; /*a 代表第 n-2 项,b 代表第 n-1 项,c 代表第 n 项*/ scanf(%d, do /*如果求得的数 c 比指定比较的数小,则计算下一个 Fibonacci 数,对 a,b 重新置数*/ c=a+b; a=b; b=c; while (ct); /*如果求得的数 c 比指定比较的数大时,退出循环*/ c=a; /*此时数 c 的前一个 Fibonacci 数为小于 t 的最大的数*/ printf(t=%d

17、, f=%dn,t, c); 10、#include void main() int i,n; long s=0; printf(Input n:); scanf(%d, for(i=2;i=n-1;i+) /*从 2n-1 中找 n 的所有因子*/ if(n%i=0) s+=i*i; /*将所有因子求平方相加*/ printf(s=%ldn, s); /*输出平方和*/ 11、打印如下图案 #include main() int i,j; for(i=1;i=4;i+) for(j=0;j0;i=i-2) for(j=1;j=i;j+) printf(*); printf(n); print

18、f(n); for(i=1;i0;j-) printf( ); for(j=1;j=1 3 y- - 4、1 yx for(i=2;isqrt(double)a);i+) if(a%i=0) return 0; return 1; 2. #include main() int fun(int n); int n; printf(Enter a integer n:); scanf(%d, if(fun(n) printf(%d 是奇数n,n); else printf(%d 是偶数n,n); int fun(int n) if(n%2) return 1; else return 0; 3.

19、#include #include main() int fun(int a,int b); int a=1,b=-5,c; c=fun(a,b); printf(c=%dn,c); int fun(int a,int b) int c; c=abs(a-b); return c; 4. #include int fun(); / main() int c; c=fun(); printf(%dn,c); int fun() int i, j, count=0; for(i=0; i20 ; i+) j=i*10+6; if( j % 3 != 0 ) continue; printf(%d,

20、j); count+; 5. #include #include float func(float a) float y; y=a*a*a; return y; main() float a,y; scanf(%f, y=fabs(func(a); printf(y=%fn,y); 6、#include main() float fact(int n); int n,i; float y=0; printf(intput an integer number:); scanf(%d, if(n%2) for(i=1;i=n;i+=2) y=y+fact(i); printf(1!+3!+.+%d

21、!=%.0fn,n,y); else printf(n不是奇数,data error!); float fact(int n) /求n! float f; if(n0) printf(n0,data error!); else if(n=0|n=1) f=1; else f=fact(n-1)*n; return f; 7、int zdgys(int n1,int n2) int y,i; for(i=n2;i=1;i-) if(n1%i=0break; return y; int zxgbs(int n1,int n2) int y,i; for(i=n1;i=n1*n2;i+) if(i%

22、n1=0break; return y; main() int n1,n2,t; scanf(n1=%d n2=%d, if(n1n2) t=n1;n1=n2;n2=t; printf(zdgys=%d zxgbs=%d,zdgys(n1,n2),zxgbs(n1,n2); 8、 #include void itoa (int n,char s); int main() int n; char s100; printf(Input n:n); scanf(%d, printf(the string : n); itoa (n,s); return 0; void itoa (int n,char s) int i,j,sign; if(sign=n)0);/删除该数字 if(sign=0;j-)/生成的数字是逆序的,所以要逆序输出 printf(%c,sj); 9、 #include #define N 10 main() float average(float a,int n); float aN,aver; int i,n; printf(input an integer n:); scanf(%d, printf(i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论