《C语言课后题编程答案》由会员分享,可在线阅读,更多相关《C语言课后题编程答案(40页珍藏版)》请在人人文库网上搜索。

1、C 语言课后题编程答案所有章节的课后习题的选择题和填空题大家必须熟练掌握,编程题掌握到第九章即可。 希望大家通过课后的编程题熟悉典型的编程算法,掌握基本的编程思路,注意编程细节。第3章3-17 编写程序,把 560 分钟换算成用小时和分钟表示,然后进行输出。#includemain()int h,m;h=560/60;m=560%60;printf(“560分钟可转换成d小时c分钟” ,h,m);程序总结:(1)只要在程序中用到系统提供的库函数,必须把库函数所在的头文件用#include 命令包含进来。否则库函数的使用无效。输入输出库函数的头文件是: stdio.h; 数学函数的头 文件是: 。

2、math.h; 字符处理函数的头文件是: ctype.h; 字符串处理函数的头文件是: string.h 。(2)注意C语言中的“/”和“ %两种运算符。“/”的运算结果取决于两操作数的类型。比如:1/2=0( 与数学 中不同,结果与操作 数的类型一 致,所以 结果只取商 值)1/2.0=0.5, 1.0/2.0=0.5。“ %”的两个操作数都必须是整数。(3) printf(“560分钟可转换成d小时4分钟”,h,m); printf第一个参数要尽量详细,这样可以提高输出结果的可读性,恰当好处的添加提示性信息,可以提高程序的质量。( 4) int h,m; 变量起名要有艺术性,尽量做到见名知。

3、意。3-18 编写程序,输入两个整数, 1500 和 350,求出它们的商和余数并进行输出。#includemain()int a,b,m,n;printf( “请输入两个整数 :n ” );scanf( “ %d%”d ,&a,&b);m=a/b;n=a%b;printf(“d除以 (商4余%cf ,a,b,m,n);程序总结:(1) printf(请输入两个整数 :n ” ); 这是一个提示信息,避免用户在看到黑屏后不知所(2)scanf( “%d%”d ,&a,&b); scanf的功能是用户要通过键盘输入数据,赋值给各输入项。注意每个输入项前面必须要加 &符号。旳输入项的个数要一致,类。

4、型要匹配。%d与int 一致,f与float 对应,lf与double匹配,0与char对应。3-19 编写程序,读入三个双精度数,求它们的平均值并保留此平均值小数点后一位数, 对小数点后第二位数进行四舍五入,最后输出结果。#includemain()double a,b,c,x;printf( “请输入三个双精度数 :n ”);scanf( “%lf%lf%lf ”,&a,&b,&c);x=(a+b+c)/3;x=x*10;x=x+0.5;x=(int)x;x=x/10;printf(“x=%.1lf ”,x);程序总结:(1) double a,b,c,x; 和 scanf( “%lf%l。

5、f%lf ”,&a,&b,&c); 有直接联系, %lf 与输入项 a,b,c 在定义时所用的类型 double 一致。(2) %.1lf, .1 的意思是结果仅保留小数点后一位小数。3-20 编写程序,读入三个整数给 a、b、c,然后交换他们中的数,把a中原来的值给b,把b中原来的值给c,把c中原来的值给a,然后输出a,b,c。#includemain()int a,b,c,t;printf( “请输入三个整数: n ”);scanf( “ %d%d%”d, &a , & b , &c);printf( “交换之前: a=%d,b=%d,c=%”d ,a,b,c);t=a;a=c;c=b;b。

6、=t;printf( “交换之后: a=%d,b=%d,c=%”d ,a,b,c);程序总结:语句构成的选择结构交换两个变量的值和三个变量的值,都需要借助另外一个变量。4-21 若 a 的值小于 100,请将以下选择结构改写成由 switch if(a main() int a;printf( “enter a(amain()int yO,mO,dO,y1,m1,d1,age ;printf( “输入一位学生的生日: n ”);scanf( “%d%d%”d,&yO,&mO,&dO);printf( “输入当前日期: n ”);scanf( “%d%d%”d,&y1,&m1,&d1);age=。

7、y1-yO;if(m1main()int x,y;printf( “请输入一个整数 :n ” )scanf( “ %d”,&x);y=x%2;if(y=0)elseprintf(“d是一个奇数! n ” ,x);程序总结:y=x%2;这是判断一个数是奇数还是偶数的一贯表示方式。计算机中的等号是双等号,与数 学中的等号不一样。4-24 编写程序,输入 a,b,c 三个数,打印出最大者。方法一:#includemain()int a,b,c,max;printf( “请输入三个数: n ” );scanf( “%d%d%”d,&a,&b,&c);if(ab)if(ac) max=a;elsemax。

8、=c;elseif(bc)max=b;elsemax=c;printf( “max=%”d ,max);程序总结:利用 if-else 的嵌套,可求出一组数的最大值和最小值。在 if-else 的嵌套中,要格外注意 if 和 else 的配对问题。配对的原则是:从最后一个 else 开始,寻找与其配对的 if ,找的原则是离 else 最近的还没有配对的 if 就是该 else 的配对对象。 if 和 else 的配对一旦出问题, 输出结果全 错。方法二:#includemain()int a,b,c,t;printf( “请输入三个数: n ” );scanf( “%d%d%”d,&a,&b。

9、,&c);if(ab)t=a;a=b;b=t;if(ac)t=a;a=c;c=t;if(bc)t=b;b=c;c=t;printf( “最大值为: %d” ,c);程序总结:) 方法一利用 if-else 的嵌套来进行程序设计,极易容易出错。而方法二采用三个 if 语句的并 列来实现,同样可以求出最大值。) 方法二算法分析: 第一个 if 语句结束后, b 中保存 a 和 b 中的较大值; 第二个 if 语句结束后, c 中保存 a 和 c 中的较大值;第三个 if 语句结束后, c 中保存 b 和 c 中的较大值;三次比较后, c 中的值就是三个数中最大的。)现实生活中, 交换两盆水必须要借。

10、助第三个盆子; 在程序设计中, 要想实现两个变量中值的交换,就必须借助第三个变量。25 对于以下函数:Y=x(-5main() int x,y;printf( “请输入 x 的值: n ” );scanf( “%d”,&x);if(x=0)y=x-1;if(x-5&x0&xmain()int x,y;printf( “请输入 x 的值: n ” );scanf( “%d”,&x);if(x-5)if(x0)if(xmain()int x,y;printf( “请输入 x 的值: n ” );scanf( “%d”,&x);if(x-5&xmain()int x,y,i;printf( “请输入。

11、 x 的值: n ” );scanf( “%d”,&x);if(x-5&x0&x main() int s,n,t,j;s=0;n=1;t=1;j=1;while(n#includemain()int a,b,c,s;a=1;b=1;c=1;s=0;while(fabs(c) 加上。5-18 编写程序,求 e 的值,e 1+1/1!+1/2!+1/3!+1/4!+(1) 用 for 循环,计算前 50 项。(2) 用 while 循环,要求直至最后一项的值小于 10的-6 次方(1) 方法一:#includemain()int m,n;float e=1.0,i=1.0,t;for(n=1;n。

12、=1;m-)t=t*m;i=1/t;e=e+i;printf( “ e=%f” ,e);实现的是阶乘的求法程序总结: for(t=1.0;m=1;m-) t=t*m;方法二:#includemain()float a,b,c,e;e=1.0;a=1.0;c=0;for(b=1.0;bmain()float a=1.0,b=1.0,c=1.0,e=1.0;while(c=1e-6) e+=c;b+;c=1.0/(a*b);a=a*b;printf( “e=%fn ”,e);程序总结: 1 乘以 10 的 -6 次方,在 C 语言中表示为 1e-6 。5-19 编写程序,输出从公元 2000年至 。

13、3000 年所有闰年的年号,每输出 10 个年号换一行,判断 公元年是否为闰年的条件是:(1) 公元年数如能被 4整除,而不能被 100 整除,则是闰年(2) 公元年数能被 400 整除也是闰年#includemain() int i,j=0;for(i=2000;imain() int i,j,k;for(i=3;i=0;i-) for(k=1;k main()int n=0;char c;while(c=getchar()!=n )n+;printf( “ ASCII=%d,c=%c”,c,c);if(n%3=0)printf(“n ” );putchar( n );程序总结:(1) 字符。

14、型数据在内存中保存的是与之相对应的 ASCII 码值。大家要牢记的 ASCII 代码值有: 数字字符O的ASCII值是48,字符 a的ASCII值是65,字符 A的ASCII值是 97,字符 的 ASCII 值是 32,这 4个特殊字符的 ASCII 值必须记住。其他的只要在它 们的基础上递推就可以。(2) 在 printf 和 scanf 中所用到的 %后的字母,取决于输入输出项在定义时所用的关键字。Int 与4对应,float 与 f 对应,double 与lf 对应,char 与。对应,long int 与 ld 对应,short int与hd对应。(3) 本题中的语句 char c; 。

15、和 printf( “ASCII=%d,c=%c”,c,c); 貌似与 (2) 中讲的理论相冲 突,其实是可行的,由于字符型数据在内存中保存的是与之相对应的 ASCII 码值, ASCII 码值都是整型数,所以char既可以与。对应,也可以与d对应。(4) 注意语句 while(c=getchar()!= n ) 中括号的用法,很多同学容易把 (c=getchar() 外的这层括号忘掉,变成 while(c=getchar()!= n ) ,由于!=的优先级要高于 =,所以导 致运算顺序的改变,最终引起结果的错误。(5) putchar( n ); 的功能仍然是让黑屏上的 press any 。

16、key to continue 乖乖换行,从而 提高程序输出结果的可读性。与 printf( “n”); 是完全等价的。(6) getchar() 的功能是等待用户从键盘输入一个字符到内存,它的功能决定了它的写法必须 是赋给一个字符型的内存变量,如本题的 c=getchar() 。6-2O 请编写程序,输入一行数字字符(用回车结束) ,每个数字字符的前后都有空格。请编程,把这一行中的数字转换成一个整数。例如,若输入(则输出整数:2483。#includemain()char ch,int i=0;while(ch=getchar()!=n )if(ch= 0&ch= O &ch= O &ch=。

17、 0&chmain()char ch;int i=0;while(ch=getchar()!= ! );if(ch=n ) i+;printf(“%d”,i);putchar(n );程序总结 : 本程序是要统计输入的行数,其实就是统计 n 出现的次数6- 22 请编写程序统计输入的一行中小写字母的个数#includemain()char ch;int i=0;while(ch=getchar()!=n )if(ch= a&ch= a &chmain()int i,j,k,m,n;char ch;printf( “ Enter n:n ”); scanf( “%d”,&n);for(i=1;i=i;k- -)putchar( “ ” );for(j=1;j= 0 &ch= 0&ch#define M 100int fun(int *p,int *q,int n) int i,s=0;for(i=0;iai)p=i;if(p!=j)t=aj;aj=ap;ap=t;第九章的其他编程题难度较大,不做要求。

AB余商c语言编程答案,C语言课后题编程答案相关推荐

  1. 2011计算机等级考试二级c语言公共基础教程.doc,2011年全国计算机等级考试二级c语言公共基础知识复习100题及答案.doc...

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp资格/认证考试&nbsp>&nbsp计算机等级考试 2011年全国计算机等级考试二级c语言公 ...

  2. c语言实训教程课后答案第三版,C语言程序设计实训教程课后题答案.doc

    C语言程序设计实训教程课后题答案 C语言实训教程自测题答案 第一套 判断题 12345678910BABBBBBBAB 单项选择题 123456789101112131415CBACCBDBDAACA ...

  3. 2021年春季学期-信号与系统-第十四次作业参考答案-第八小题参考答案

    本文是 2021年春季学期-信号与系统-第十四次作业参考答案 中各小题的参考答案. §08 第八小题 8. 以下序列的长度为\nN.,求其离散傅里叶变换的闭合表达式. (1) x[n]=sin⁡(ω0 ...

  4. 2021年春季学期-信号与系统-第十四次作业参考答案-第七小题参考答案

    本文是 2021年春季学期-信号与系统-第十四次作业参考答案 中各小题的参考答案. §07 第七小题 7.已知x[n]x\left[ n \right]x[n]是长度为N的序列.X[k]=DFT{x[ ...

  5. 2021年春季学期-信号与系统-第十四次作业参考答案-第六小题参考答案

    本文是 2021年春季学期-信号与系统-第十四次作业参考答案 中各小题的参考答案. §06 第六小题 6.已知序列x[n]x\left[ n \right]x[n]的长度为128,h[n]h\left ...

  6. 2021年春季学期-信号与系统-第十五次作业参考答案-第十一小题参考答案

    本文是 2021年春季学期-信号与系统-第十五次作业参考答案 中各小题的参考答案. §11 第十一小题 11.使用级联结构实现以下传递函数: ▓ 求解 (1)第一小题 X(z)=1−14z−1(1+1 ...

  7. 2021年春季学期-信号与系统-第十五次作业参考答案-第十小题参考答案

    本文是 2021年春季学期-信号与系统-第十五次作业参考答案 中各小题的参考答案. §10 第十小题 10.使用窗函数法设计一个线性相位FIR滤波器,要求的技术指标为: (1) 在Ωp=30πrad/ ...

  8. 2021年春季学期-信号与系统-第十五次作业参考答案-第八小题参考答案

    本文是 2021年春季学期-信号与系统-第十五次作业参考答案 中各小题的参考答案. §08 第八小题 8.已知全通系统的传递函数为:Hap=z−1−z0∗1−z0z−1H_{ap} = {{z^{ - ...

  9. 2021年春季学期-信号与系统-第十五次作业参考答案-第七小题参考答案

    本文是 2021年春季学期-信号与系统-第十五次作业参考答案 中各小题的参考答案. §07 第七小题 7.已知IIR数字滤波器的传递函数为:H(z)=0.28z2+0.192z+0.05z3+0.65 ...

  10. 计算机英语实用教程课后答案,计算机英语实用教程课后题参考答案.pdf

    计算机英语实用教程课后题参考答案 课后 参考答案 unit 1 [Ex. 1]根据课文内容,回答以下问题: 1) It is primarily responsible for executing i ...

最新文章

  1. sync是同步还是非同步_MySQL半同步复制你可能没有注意的点
  2. dubbo k8s 服务发现_工商银行基于 Dubbo 构建金融微服务架构的实践-服务发现篇
  3. WebRTC之noise suppression算法
  4. 处理大并发之一 对异步非阻塞的理解
  5. 统计每日单量MySQL语句
  6. Field XXXX input value is longer than screen field-BDC
  7. java synchronized关键字_Java:手把手教你全面学习神秘的Synchronized关键字
  8. 发现一个好工具RenderDoc
  9. 真香!你的 2019 年终总结已经出 - 请查收
  10. MFC内嵌web页面
  11. ASP.NET下QueryString不同字符编码间强制转换的解决方案
  12. python random模块安装_Python中的For循环和Random模块
  13. Ubuntu下fcitx安装。(ibus不会用)
  14. 父与子python版本,父与子的编程之旅 与小卡特一起学Python(第3版)
  15. Node.js的安装下载和运行JS代码和常用命令和按键
  16. 阮一峰ES6学习-Symbol
  17. ANSYS 有限元分析 几何建模
  18. 【快递100】 物流公司对应编码分享(截止到2021-09-19 最新数据)
  19. 战神笔记本电脑自带access吗_战神GX9系列超享windows10搭载微软office2016
  20. JavavEE中网络编程Socket套接字Ⅱ(TCP)

热门文章

  1. win10 Kafka环境搭建 + 编译C++(librdkafka) 封装库
  2. python制作模型排放清单_四川省人为源大气污染物排放清单及特征
  3. 奥维使用天地图 疑似攻击解决方案、访问上限解决方案
  4. 5.5.49mysql
  5. 笔记:复旦IC卡专用芯片型号 -用于替代进口同类产品 - 草稿
  6. PMP第五章:项目范围管理
  7. c语言如何输出数组最大值和最小值,C语言输出数组中最大和次大的数
  8. RxJava:concat(连接)、 concatDelayError、 concatEager的使用
  9. multisim红绿灯元器件在哪里_实验二Multisim交通灯仿真.ppt
  10. 数字图像处理 DCT变换