C++程序设计实践教程思考题答案

上传人:新** 文档编号:512130209 上传时间:2023-01-16 格式:DOC 页数:34 大小:66.50KB
返回 下载 相关 举报
C++程序设计实践教程思考题答案_第1页
第1页 / 共34页
C++程序设计实践教程思考题答案_第2页
第2页 / 共34页
C++程序设计实践教程思考题答案_第3页
第3页 / 共34页
C++程序设计实践教程思考题答案_第4页
第4页 / 共34页
C++程序设计实践教程思考题答案_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《C++程序设计实践教程思考题答案》由会员分享,可在线阅读,更多相关《C++程序设计实践教程思考题答案(34页珍藏版)》请在金锄头文库上搜索。

1、.实验1 C+基础6编写程序,输入某大写字母的ASCII码值,输出该字母的对应小写字母。#includeusing namespace std;int main()int i;cini;if(i=65 & 1=90 )coutchar(i-A+a)endl;elsecout输入有误endl; return 0;实验2三、实验思考1.输入直角三角形的两条直角边长,调用平方根库函数sqrt来求斜边的长度#include#includeusing namespace std;int main() float a,b,c;coutab;c=sqrt(a*a+b*b);cout直角三角形的斜边=cend

2、l;return 0;2从键盘输入一个字符,如果输入的是英文大写字母,则将它转换成小写字母后输出,否则输出原来输入的字符。#includeusing namespace std;int main()char c;1coutc;if(c=A& c=Z)c+=a-A;coutcendl;return 0;3输入一个学生的成绩,如高于60分,则输出“pass”;否则,输出“failed”。 #includeusing namespace std;int main()float grade;coutgrade;if(grade=60)coutpassendl;elsecoutfailed;return

3、 0;4. 计算分段函数#include #include using namespace std;int main()double x,y;coutx;if(!x)y=cos(x)-pow(x,2)+3*x;elsey=sin(x)+sqrt(pow(x,2)+1)+3*x;couty=yendl;return 0;25. 从键盘上输入17之间的一个数字,输出其对应星期几的英文表示。 #include using namespace std;int main()char c;coutc;switch(c)case 1:coutMonday;break;case 2:coutTuesdag;b

4、reak;case 3:coutWenesday;break;case 4:coutThursday;break;case 5:coutFriday;break;case 6:coutSaturday;break;case 7:coutSunday;break;default: cout wrong number;coutendl;return 0;6. 设计一个简单的计算器程序,能够进行加、减、乘、除简单运算并显示结果。 #include using namespace std;int main()coutleftOperandOperatorrightOperand;int result;

5、switch(Operator)case +:result=leftOperand+rightOperand;break;case -:result=leftOperand-rightOperand;break;case *:3result=leftOperand*rightOperand;break;case /:if(rightOperand!=0)result=leftOperand/rightOperand;elsecout除数为0,除法不能进行endl;return 0;break;default:coutOperator是本程序不支持的操作。endl; return 0;coutl

6、eftOperandOperatorrightOperand=resultendl; return 0;实验3三、思考题参考程序1n2kn1编程计算表达式k=1的值。#include using namespace std;int main()int n,k=1,sum=0,mean;coutn;while(k0)mean=sum/n;elsemean=0;cout1n个整数平方和的均值=meanendl;return 0;42输入两个正整数,判别它们是否互为互质数。所谓互质数,就是最大公约数是1。 #include using namespace std;int main()int m,n,

7、r;coutmn;coutm”和”n;if(mn) r=m;m=n;n=r;while(r=m%n)m=n;n=r;if(n=1)cout是互质数 endl;elsecout”不是互质数”endl;return 0;3编写程序,输出从公元2000年至3000年间所有闰年的年号。#include using namespace std;int main()int year;cout公元2000年至3000年间闰年的年号:n;for(year=2000;year=3000;year+)if(year%4=0 & year%100 !=0)|(year%400=0)coutyeart;coutend

8、l;return 0;4编写程序模拟猴子吃桃子问题:猴子第1天摘下若干桃子,当即吃了一半,还不过瘾,又多吃了一个。第2天将剩下的桃子又吃了一半,又多吃一个。以后每天都吃了前一天剩下的5一半零1个。到了第10天,只剩下了一个桃子。请问猴子第一天共摘了多少个桃子?方法1:#include using namespace std;int main()int day,qian,hou=1;for(day=9;day=1;day-)qian=(hou+1)*2;hou=qian;coutqianendl;return 0;运行结果:1534方法2:#include using namespace std

9、;int main()int day,number=1;for(day=9;day=1;day-)number=(number+1)*2;coutnumberendl;return 0;方法3:#include using namespace std;int peach(int);int main()cout第1天共摘了peach(1)个endl;return 0;int peach(int day)int number;6if(day=10)number=1;elsenumber=2*(peach(day+1)+1);return number;5计算s=1+(1+2)+(1+2+3)+(1

10、+2+3+4)+ +(1+2+3+ +n)的值。 方法1:#include using namespace std;int main()int i,j,n;long int sum,total(0);coutn;for(i=1;i=n;i+)sum=0;for(j=1;j=i;j+)sum+=j;total+=sum;couts=totalendl;return 0;#include using namespace std;int main()int i,n;long int sum(0),total(0);coutn;for(i=1;i=n;i+)sum+=i;total+=sum;7cou

11、ts=totalendl;return 0;6马克思曾经做过这样一道趣味数学题:有30个人在一家小饭馆用餐,其中有男人、女人和小孩。每个男人花了3先令,每个女人花了2先令,每个小孩花了1先令,一共花了50先令。请问男人、女人以及小孩各有几个人?#include using namespace std;int main()int x,y,z;for(x=1;x=16;x+)for(y=1;y=24;y+)z=30-x-y;if(3*x+2*y+z=50)coutMen are x,women are y ,children are z.endl; return 0;实验4 常用程序设计算法三、实验思考1读入一个整数N,若N为非负数,则计算N到2N之间的整数和;若N为负数,则求2N到N之间的整数和。分别利用for和while写出两个程序。#includeusing namespace std;int main()int N;cinN;int i=N;long sum=0;if(N=0)for(;i=2*N;i-) sum+=i; coutsumendl; return 0;#include using name

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号