ImageVerifierCode 换一换
格式:DOCX , 页数:47 ,大小:29.87KB ,
资源ID:13118716      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-13118716.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++50题答案.docx)为本站会员(b****8)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

C++50题答案.docx

1、C+50题答案本学期程序设计基础 课程实行上机考核, 现将考核有关事项通知如下: (1)考核时间:本学期最后一次上机时间为机试。(2)考核内容:C+面向过程部分,主要是算法设计与实现。考题来自本学 期布置的作业、部分例题及一些补充的题目。( 3 ) 考 试形式:机试前进入机房时,每人随机抽取一道题 (同一个班的同学 保证不抽到同一题) ,然后上机编程,调试通过后报告监考人员审核, 审核通过后将源程序拷贝到监考人员 U 盘上,然后可以离开机房。源 程序文件明必须是 学号姓名.cpp ”如刘天.cpp ”( 4) 考 试要求:机试时考试规则同课堂考试一致,不允许带书、纸张等。不 能携带任何可用计算

2、机处理的软件或数据 (不允许任何私人携带的 U 盘、 磁盘或计算器 ) ,不能携带任何类型的通讯工具 ,包括无线电接收器、 移动电话。(5) 考试成绩: 本次机试成绩将在 程序设计基础 课程成绩中占 25%的比 重。( 6) 其 它有关事项由主考教师和监考人员负责处理。附:考试题集1. 利用异或运算对输入的文本进行加密解密输出,用户输入一个文本(字符串 ,设不超过20 个字符),然后输入作为密钥的字符,程序输入加密及解密的字符串。/加密字符串#includevoid main()char a21,b,key;int i;couta;coutb;for(i=0;ai!=0;i+)ai=ab;co

3、ut 加密后: ; for(i=0;ai!=0;i+) coutai;coutendlkey;for(i=0;ai!=0;i+)ai=aiFkey;for(i=0;ai!=0;i+) coutai; coutendl;已阅,请放心食用2. 编写一个程序,用户输入年份及月份两个数据,程序输出该月份的天数。 (提示:对 2 月要考虑是否闰年, 闰年年份要么能被 4整除且不能被 100整除,要么能被 400整除, 除次之外都不是闰年) 。#includevoid main()int year,month,days;coutyearmonth;if(month=1|month=3|month=5|mo

4、nth=7|month=8|month=10|month=12)days=31; coutyear 年month 月有days 天n;else if(month=4|month=6|month=9|month=11)days=30; coutyear 年month 月有days 天n;else if(year%4=0&year%100!=0)|year%400=0)days=29;coutyear 年month 月有days 天n;elsedays=28; coutyear 年month 月有days 天n;已阅,请放心食用3. 某大桥按不同型号征收车辆过桥费:自行车免费,摩托车 2 元,小汽

5、车 5 元,大客车 与货车 8元,货柜车 12 元。编写一个程序,按车辆的不同型号计算通过该大桥应征的 过桥费。(提示:可以用整数对不同型号的车辆进行编码)/收过桥费#includevoid main()int kind;cout1. 自行车 n;cout2. 摩托车 n;cout3. 小汽车 n;cout4. 大货车或客车 n;cout5. 货柜车 n;coutkind;switch(kind)case 1:cout 费用 :0 元 endl;break;case 2:cout 费用 :2 元 endl;break;case 3:cout 费用 :5 元 endl;break;case 4:

6、cout 费用 :8 元 endl;break;case 5:cout 费用 :12 元 endl;break;default:cout 错误! endl;已阅,请放心食用4. 输入一位同学的考试成绩,若是90100分,输出“ Excelle nt”,8089输出“ Very good, 7079 输出“ Good”,6069 输出“ PasS, 60 分以下输出“ No PasS。#includevoid main()int marks;coutmarks;switch(marks/10)case 10:case 9:coutExcellentn;break;case 8:coutVery

7、Goodn;break;case 7:coutGoodn;break;case 6:coutPassn;break;default :coutNo Passn;已阅,请放心食用5. 旅行社的订票量小于 10张时,航空公司给予 10%的折扣;订票量大于或等于 10 张且 小于 20张时,航空公司给予 15%的折扣;订票量大于或等于 20 张且小于 30张时,航 空公司给予 30%的折扣;订票量大于或等于 30 张时,航空公司给予最高的 45%的折 扣。编程输入订票张数及单张机票票价,程序输出折扣率及应付款额。/旅行社折扣#includevoid main()int num,price;float

8、 discount,total_price;coutnumprice;switch(num/10)case 0:discount=0.1;break;case 1:discount=0.15;break;case 2:discount=0.3;break;default:discount=0.45;total_price=num*price*(1-discount);cout 总价格为: total_priceendl; 已阅,请放心食用6. 用户输入一个整数流(输入 1000表示数据输入结束) ,如4 1 13 0 6 -5 1 -1 7 -12 19 0 100 编写程序统计输入流中 -1

9、、0 和+1 的个数。 /输入数流 #include void main()int a100,i,j,x=0,y=0,z=0;coutai; if(ai=1000) break;for(j=0;aj!=1000;j+)if(aj=-1) x+;if(aj=0) y+;if(aj=1) z+;cout 该数流中含 -1: x 项 n;cout 该数流中含 0: y 项 n;cout 该数流中含 1: z 项 n;已阅,请放心食用7. 编写一个程序,求一个自然数中含有多少个 2的因子。如, 6 含 1 个 2 的因子, 8含 3 个 2 的因子, 11 不含 2 的因子。(提示,程序应检查用户输入

10、的合法性) 。 /求 2 因子#includevoid main()int x,i,n;docoutx;while(x=0);n=x;for(i=0;n%2=0;i+)n/=2;cout 整数 x 含有 i 个 2 因子 endl;已阅,请放心食用8. 编写一个程序解决爱因斯坦台阶问题: 有人走以台阶,若以每步走 2 级则最后剩 1 级; 若每步走 3 级则最后剩 2 级;若以每步走 4 级则最后剩 3 级;若以每步走 5级则最后 剩 4 级;若以每步走 6 级则最后剩 5 级;若以每步走 7 级则最后刚好不剩。问台阶共 有几级?#includevoid main()int i;for(i=0

11、;i+) if(i%2=1&i%3=2&i%4=3&i%5=4&i%6=5&i%7=0)break;cout 最小可能值是: iendl; 已阅,请放心食用9. 公鸡 5 元 1 只,母鸡 3 元 1 只,小鸡 1 元 3 只,花了 100 元钱买 100 只鸡,问公鸡、 母鸡、小鸡各多少只?/百元买百鸡#includevoid main()int cock,hen,chicken,price; for(cock=0;cock=20;cock+) for(hen=0;hen=33;hen+) chicken=100-cock-hen; if(chicken%3=0&5*cock+3*hen+c

12、hicken/3=100)cout公鸡cock 只,母鸡hen 只,小鸡chicke*只 n; 已阅,请放心食用10. 编程实现解决下述问题的算法:一位顾客在购物时,如果买 4 个苹果剩下 4角钱如果买 5 个苹果则缺 5角钱,请问,该顾客带了多少钱?多少钱可以头一个苹果? #include void main()int money,money1,money2,i,m,n;for(i=1;i+)if(4+4*i=5*i-5)money=4+4*i;money1=money/10;money2=money-10*money1;cout 顾客带了 money1 元 money2 角,苹果价格为每个

13、 i 角 n; break;已阅,请放心食用11. 编写程序计算 100之内可以被 13 整除的自然数之和。#includevoid main()int i,sum=0;for(i=1;i=100;i+)if(i%13=0)sum+=i;cout100 以内可以被 13 整除的自然数之和为: sumendl;已阅,请放心食用12. 键盘输入m和n (10mn 32000,求出mn间所有素数且按每行8个数形式输出。 / 求 m 到 n 的素数 #include #include int f(int i)int l;for(l=2;li;l+)if(i%l=0)return 0;return 1;

14、void main()int m,n,x,i,j;int k=0;docout输入 m,n (其中 10mn mn;while(m=n|n32000);for(i=m;i=n;i+)if(f(i) coutsetw(6)i; k+; if(k%8=0)coutendl;coutendl;已阅,请放心食用13. 编写程序打印乘法口诀表。/打印乘法口诀表#includevoid main()int a,b,t;for(i=1;i=9;i+)for(j=1;j=i;j+) couti*j=i*jt;coutendl;已阅,请放心食用14. 编程实现求解最大公约数的欧几里德算法,用户输入两个任意正整数

15、,程序输出他们 的最大公约数。算法如下:步骤1: 如果p q,则交换p和q。步骤 2: 令 r 是 p / q 的余数。步骤3: 如果r = 0,则令g = q并终止;否则令p = q, q = r并转向步骤214./求最大公约数#includevoid main()int p,q,r;coutpq;if(pq)r=q;q=p;p=r;r=p%q;while(r!=0)p=q;q=r;r=p%q;cout 最大公约数是: qendl;已阅,请放心食用15. 求不超过正整数 n 的 2 的最大幂值,如输入 17,程序应输出 4(24=1617)。 #include void main()int

16、n,t=1,i;coutn;for(i=0;i+,t*=2)if(tn)couti-1n;break;已阅,请放心食用16. 有关专家十分关注珠江渔业资源的问题。 目前珠江中大约有 8000 万条鱼,平均每年以3.5%的速度减少。请编写一个程序,计算在多少年之后鱼的数目下降到目前的一半? 多少年后下降到目前的十分之一?(提示注意整数类型的取值范围) 。 #include void main()double fishnum=8e7,fish;int year;for(year=0,fish=fishnum;year+,fish*=0.965)if(fish=4e7)cout当鱼的数目等于原来的一

17、半时,需要year年n;break;for(year=0,fish=fishnum;year+,fish*=0.965)if(fish=8e6)cout 当鱼的数目等于原来的十分之一时 ,需要 year 年 n;break; 已阅,请放心食用17. 编程求解一元二次方程a?+bx+c=O的根。要求:设计完备的测试数据集,考虑 a, b, c各种取值对根的影响/二次方程求解#include#includevoid main()float a,b,c,x1,x2,t;coutabc;t=b*b-4*a*c;if(a=O&b=O)cout 根为一切实数 n;else if(a=O)cout 根为 -

18、c/bn;else if(tO)cout 无根 n;else if(t=O)cout 根为 -b/(2*a)O)cout根为(-b+sqrt(t)/(2*a) 和(-b-sqrt(t)/(2*a)n: 已阅,请放心食用18. 编写一个程序,输入全班同学某门课考试成绩,计算平均成绩并找出其中最高分与最 低分。(提示:批量数据通常不事先规定输入的数据数量,而是以一个特殊的标志作为 输入结束。程序根据结束标志统计人数)/班级分数#includevoid main()int a1OO,i,max,min,s=O;coutai;if(ai=1000)break;if(i=0)max=a0;min=a0;

19、 max=maxaimax:ai; min=minaimin:ai; s+=ai;cout 该班同学成绩中最高分为: maxn 最低分为 minn 平均分为 s/in; 已阅,请放心食用19. 编一程序模拟整数加、减、乘、除四则运算。当你在键盘上输入5+6 后,程序将输出 =11,当你在键盘上输入 11*7 后,程序将输出 =77。 /模拟四则运算 #include void main()float a,b;char x;cout 请输入算式: axb;if(x=+) cout=a+bendl;else if(x=-) cout=a-bendl;else if(x=*) cout=a*bend

20、l;else if(x=/) cout=a/bendl;elsecouterror!endl;已阅,请放心食用20. 把一张 1 元钞票换成 1 分、2分和 5 分的硬币,每种至少有 1枚,问有多少种换法? #include void main()int i,j,k,m=0;for(i=1;i=20;i+)for(j=1;j=1)m+=1;couti=i j=j k=ke ndl;cout共有m种结果 n;已阅,请放心食用21. 求自然对数底(e)的近似值。e的近似值计算公式为:,11 1e 1 r1! 2! (n 1)!当余项rn 时停止计算。设& =1e-8#in clude#i nclu

21、demain ()int i;double temp=1,sum=0;for(i=1;temp=1e-8;i+)sum+=temp;temp/=i;coute=1+1/1!+1 /2!+1/3!+.=setprecisio n(9)sume ndl; (控制输岀流显示浮点数的有效数字个数 )已阅,请放心食用722. S= i! =1!+2! + +7!#iricludevoid mai n()int sum=0,n=1,i;for(i=1;i=7;i+)n *=i;sum+=n;coutsume ndl;已阅,请放心食用23. S=1 X2 + 3 X4 + 5 X6 + +39 X40/求1

22、X2 + 3X4 + 5X6+-+3 9X4 0#in cludevoid mai n()int i,s=0;for(i=1;i=39;i+=2)s+=i*(i+1);cout结果是:sendl;已阅,请放心食用357 2n 124.Y=X + + (-1)n+1 X +的值,精确到 10-6。3! 5! 7! (2n 1)!求值,精确到 10e-6#in clude#in cludevoid mai n()int i,x;cout x;double temp=x,s=0;for(i=1;fabs(temp)=1e_6;i+=2)s+=temp; temp=temp*(-x*x)/(float

23、)(i+1)*(i+2);cout结果是:sendl;已阅,请放心食用25. 编制一个程序,读入一个正整数,并反向输出。例如,读入 123,输出是321。25.反向输出#in clude#in cludevoid mai n()int x,i,j;cout x;for(i=0;i+) if(x/(i nt)pow(10,i)=0)break;int a100;for(j=0;ji;j+)aj=(x%(int)pow(10,j+1)/(int)pow(10,j);cout 反向输出为: ;for(int b=0;bi;b+)coutab;coutendl;/*#includevoid main()int i;char x100;coutx;for(i=0;xi;)i+;cout=0;i-)coutint(xi-48);coutn;*/已阅,请放心食用26. 水仙花数问题:水仙花数是一种三位数,它的值等于每个数字的立方和。例如, 153=13+53+33。编程输出小于 999 的水仙花数。/水仙花数#includevoid main()int i,a,b,c;for(i=100;i=999;i+)a=i/100;b=(i-100*a)/10;c=i-100*a-10*b;if(i=a*a*a+b*b*b+c*

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2