欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    C++程序设计课后习题解析张树粹主编清华大学出社.docx

    • 资源ID:3153738       资源大小:40.64KB        全文页数:11页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C++程序设计课后习题解析张树粹主编清华大学出社.docx

    C+程序设计课后习题解析张树粹主编清华大学出社C/C+程序设计(第二版) 张树粹主编_清华大学出版社 1-9章课后习题解析 第一章P42页 一、选择:1.A 2.A 3.D 4.A 5.C 6.B 7. A 二、填空 1. .C .CPP .OBJ .EXE 2. 主函数 或main函数 3. #include <iostream> #include <stdio.h> 4. 顺序、选择、循环 5. 函数声明 函数执行 不能 void 三、分析理解 1. 解答:C语言程序主要由函数组成,一般包括预处理命令、函数、全局变量声明等等。 2. 解答: 函数由函数首部和函数体组成。函数首部规定函数的返回值类型、函数名、函数的形参及类型;函数体包括用于实现功能的可执行语句,由括起。 3. 解答:基本的C语言语句由简单语句、复合语句、赋值语句、流程控制语句、非限定性转向语句等。 4. 解答:合法的一般标识符有: name,Int,File_name, DATA 5. 解答:源程序需要经过编译程序编译转换成二进制程序,即:目标代码文件,再通过连接程序将目标文件盒其他目标文件及系统所提供的库函数等进行连接生成可执行程序。 6. 解答:两种:单行注释用/. 多行注释采用/* 和*/。 7. 解答:。源程序如图1-1所示: 图1-1 ex1-7源程序 运行结果如下图1-2所示: 图1-2 ex1-7 运行结果 分析: setprecison单独使用时用来输出实数的有效数字,若和fixed联用,则用来输出实数小数点后的数字位数。 (2)-33.7801 /setprecision表示根据当前默认输出精度输出实数。默认精度:实数输出6位有效数字。 (4) 122.1 /为num1输出4位有效数字 8. 解答:源程序如下图1-3所示: 图1-3 ex1-8源程序 运行结果如下图所示: 图1-4 ex1-8 运行结果 第二章P 67页 一、选择 1、B 2、B 3、A 4、B 5、C 6、A 7、B 8、C 9、D 10、D 二、填空 1、 x>20 && x<30 |x<-100 2、 x>y 或者 a>b 3、 1 4、 auto、extern、static、register 5、 函数内部 6、 int、float、double 7、 2,1 8、 为最右边表达式的值 9、 7 10、 前缀:先自增后使用;后缀:先使用后自增 11、 右结合性 12、 变量的数据类型、存储类型、变量名称 13、 是否整除 14、 全局变量,静态局部变量,静态局部变量 15、 const,初始值和数据类型 三、阅读程序 1、解答:输出结果是2,1 2、解答:输出结果是6,8,6,7 3、解答:输出结果是n=1 4、解答:输出结果是x=7,a=3,b=7 5、解答:输出结果是n=-4 6、解答:输出结果是0 7、解答:输出结果是2147483647,-2147483648 8、解答:输出结果是 2 3 1 2 四、编程 1、“china”译成密码问题。 这里分别采用getchar/putchar 、cin/cout、scanf/printf三种方法实现。 getchar/putchar 如下图2-1所示: 图2-1 图2-2 cin/cout 如下图2-3所示: 图2-3 同上图2-2 scanf/printf 实现 如图2-4所示: 图2-4 正常数据键入结果同上图2-2,当用户按如下形式键入,也能得到正确结果: 图2-5 若采用 scanf("%c%c%c%c%c", &ch1, &ch2, &ch3, &ch4, &ch5); 各格式串中格式符%c前没有空格分隔,则按照上图2-5形式输入,空格将会作为有效字符存入变量中。运行结果将不正确,如下图2-6所示。 图2-6 2、华氏温度与摄氏温度转换问题。 图2-7 图2-8 第三章 程序控制结构P97页 一、选择 1、D 2、B 3、B 4、C 5、C 6、D 7、A 8、B 9、C 10、A 二、阅读程序 1、解答:输出结果是120 2、解答:输出结果是s=63 3、解答:输出结果是: 0 1 2 3 4 the loop break out. 4、解答:输出结果是freight=5880000 5、解答:输出结果是 sum=1 sum=3 sum=9 sum=33 三、程序填空 1、i+ i < 10 2、i< 100 i %3 != 0 3、x >= 0 x < min 4、i+ 2*i-1 endl 5、i=1 j<=i j*i 四、编程 1、判断输入的一个字符是否为09之间的阿拉伯数字。 使用cin输入单个字符 能完成除空白字符外的字符判断,但对空白字符作为非阿拉伯数字无法处理。 图3-1 图3-2 程序能完成包括空白字符在内的所有字符判断 图3-3 非空白字符的运行效果同上 图3-6 各种情况运行结果均与方法二效果相同。 采用getchar/putchar函数完成单个字符的输入输出 ch = getchar; putchar(ch); if scanf(“%c”,&ch); printf(“%c”,ch); if 找出符合条件的三位数,即: k2 * 100 + k1 * 10 + k0 = k2 * k2 * k2 + k1 * k1 * k1 + k0 * k0 * k0 图3-13 图3-14 5.输入4个整数,要求按由小到大的顺序输出。 通过两两比较,将最小数交换到前面。 图3-15 图3-16 6.编写程序,按下列公式计算e的值。 这是一个累加算法的典型实例。e=e+k,由于累加次数未知,只要将加数k分解达到要求精度为止,以此作为循环条件,较常用while循环或do-while循环结构。 图3-17 图3-18 7.输出能被11整除且不含有重复数字的所有3位数,并统计其个数。 设num为100999之间的3位数,将其拆分出百位、十位、各位用k2、k1、k0表示,count为计数器,通过循环查找满足条件的数。 图3-19 图3-20 8.每个苹果0.8元,第一天买2个苹果,从第二天开始,每天买的苹果数是前一天的2倍,直到当天购买的苹果个数超过100个,问每天平均花多少钱。 这是一个迭代算法的典型实例。注意找出规律。 图3-21 图3-22 第4章 数组P123页 一、单项选择题 1. A D 3. A 4. B 5. A 6. D 7. B 8. B 9. B 10. A 二、填空题 2. 1、3 2、19 3、a10 4、98 5、7 6、ABCDE 7、12 8、2244 23 三、阅读程序题 1、19 2、,8,5,2 3、10010 4、6521 5、-9是第6个元素 四、程序填空题 1、ai min=ai 2、bi!=0 ai i+ 3、ai!=0 sj=si i+ 五、编程题 1、统计N个学生的成绩并输出低于平均分的人数,在一批结构体数据中查找信息,根据查找情况相应输出。 运行结果: 输入:李方 输出:李方找到了,很高兴为您服务,再见! 输入:张艳燕 输出:张艳燕不再这里,下次再合作,再见! 2、fun函数的功能是输出参数指针所指结构体变量的name成员值。 运行结果:Zhao 3、共用体变量中在每一瞬时只能存放其中一种成员。能够访问的是共用体变量中最后一次被赋值的成员。 运行结果:1000 4、运行结果为0 四、程序填空题 1、score &stu 2、struct comp x.re+y.re x.im+y.im 3、sk.name sk.total smin.total 4、p<=person+2 q->age q->name 五、编程题 1、编写统计选票的程序。设有3个候选人,有10人参加选举,每个选举人只能输入一个候选人的姓名,要求输出各个候选人的得票数。 答: #include <iostream> #include <cstring> using namespace std; struct person char name20; int count; leader3="Li",0,"Zhang",0,"Wang",0; int main int i,j; char leader_name20; for(i=1;i<=10;i+) cin>> leader_name; for(j=0;j<3;j+) if(strcmp(leader_name,leaderj.name)=0)leaderj.count+; for(i=0;i<3;i+) cout<<leaderi.name <<"票数为:" <<leaderi.count << endl; 运行结果: 第八章 文件 一、选择题 1、B 2、D 3、C 4、D 5、A 6、D 7、C 8、B 二、阅读程序题 此程序调用函数fc来完成将文件中的第一个#之前的字符读取出来并显示在屏幕上。其操作顺序是:先在屏幕上上输出文件a1.txt中的#之前的字符,紧接着再输出a2.txt中的#之前的字符。 运行结 第九章 编译预处理 一、选择题 1、C 2、D 3、C 4、D 5、D 二、填空题 1、9 2、2 3、z=0 4、5 5、4 三、编程题 1、定义一个带参的两个参数的值互换。 答: #include <iostream> using namespace std; #define S(x,y) int t; t=x;x=y;y=t; int main int a,b; cin >> a>> b; S(a,b); cout <<"a=" << a <<",b="<< b << endl; 运行结果: 2、给出年份year,定义一个宏,以判定该年份是否闰年。 源程序: #include <iostream> using namespace std; #define LEAP_YEAR(y) (y%4=0&&y%100!=0|y%400=0) int main int year; cin >> year; if(LEAP_YEAR(year) cout << year <<"is a leap year"<< endl; else cout << year <<"is NOT a leap year"<< endl; return 0; 运行结果: 果:121314252627

    注意事项

    本文(C++程序设计课后习题解析张树粹主编清华大学出社.docx)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开