2022年最新版c++程序设计_谭浩强_答案 .docx

上传人:C****o 文档编号:64072400 上传时间:2022-11-28 格式:DOCX 页数:95 大小:422.19KB
返回 下载 相关 举报
2022年最新版c++程序设计_谭浩强_答案 .docx_第1页
第1页 / 共95页
2022年最新版c++程序设计_谭浩强_答案 .docx_第2页
第2页 / 共95页
点击查看更多>>
资源描述

《2022年最新版c++程序设计_谭浩强_答案 .docx》由会员分享,可在线阅读,更多相关《2022年最新版c++程序设计_谭浩强_答案 .docx(95页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选学习资料 - - - - - - - - - 最新版: interesting. n; 名师归纳总结 第一章1.8 题return 0; #include using namespace std; 2.7 题1.5 题int main #include #include using namespace std; using namespace std; int a,b,c; int main int main cinab; int i,j,m,n; c=a+b; i=8; coutThisis; couta+b=a+bendl; j=10; coutaC+; return 0; m=+i+

2、j+; coutprogram.; n=+i+j+m; return 0; 1.9 题coutitjtmtnen1.6 题#include #include using namespace std; dl; using namespace std; int main return 0; int main int a,b,c; 2.8 题int a,b,c; int addint x,int y; #include a=10; cinab; using namespace std; b=23; c=adda,b; int main c=a+b; couta+b=cendl; char c1=C,

3、 c2=h, c3=i, c4=n, c5=a; couta+b=; return 0; c1+=4; coutc; c2+=4; coutendl; int addint x,int y c3+=4; return 0; c4+=4; int z; c5+=4; 1.7 七题z=x+y; coutpassword returnz; is:c1c2c3c4c5endl; #include return 0; using namespace std; 2.3 题 int main #include 3.2 题 using namespace std; #include int a,b,c; in

4、t main #include int fint x,int y,int z; char using namespace std; cinabc; c1=a,c2=b,c3=c,c4=101,c5=116; int main c=fa,b,c; coutc1c2c3n; float h,r,l,s,sq,vq,vz; coutcendl; couttbc4tc5n; const float pi=3.1415926; return 0; return 0; coutrh; int fint x,int y,int z 2.4 题l=2*pi*r; #include s=r*r*pi; int

5、m; using namespace std; sq=4*pi*r*r; if xy m=x; int main vq=3.0/4.0*pi*r*r*r; else m=y; char c1=C,c2=+,c3=+; vz=pi*r*r*h; if zm m=z; coutI say: c1c2c3; coutsetiosflagsios:fixedsetiosflagreturnm; coutttHe says: C+ is very 第 1 页,共 48 页- - - - - - -精选学习资料 - - - - - - - - - sios:right 一个字符赋给c1 ifab 名师归纳

6、总结 setprecision2; c2=getchar; / 将输入的第ifbc coutl= setw10lendl; 二个字符赋给c2 coutmax=c; couts= setw10sendl; cout用 putchar 函数输出结果为 :; else coutsq=setw10sqendl; putcharc1; coutmax=b; coutvq=setw10vqendl; putchar44; else if ac coutvz=setw10vzendl; putcharc2; coutmax=c; return 0; coutendl; else cout用 cout 语句输

7、出结果为 :; coutmax=a; 3.3 题coutc1,c2endl; coutendl; #include return 0; return 0; using namespace std; int main 3.5 题3.9 题另一解float c,f; #include cout请输入一个华氏温度:; using namespace std; #include cinf; int main using namespace std; c=5.0/9.0*f-32; / 留意5char c1,c2; int main 和 9 要用实型表示 ,否就 5/9 值为 0 int i1,i2;

8、/ 定义int a,b,c,temp,max ; cout摄氏温度为 :cendl; 为整型coutplease enter three integer return 0; couti1i2; cinabc; 3.4 题c1=i1; temp=ab.a:b; c2=i2; /* 将 a和 b中的大者存入temp 中 */ #include cout按字符输出结果为:c1c.temp:c; using namespace std; c2endl; /* 将 a 和 b 中的大者与c 比较,最int main return 0; 大者存入 max */ char c1,c2; cout请输入两个字

9、符c1,c2:; 3.8 题coutmax=maxendl; c1=getchar; / 将输入的第#include return 0; 一个字符赋给c1 using namespace std; c2=getchar; / 将输入的第int main 3.10 题二个字符赋给c2 int a=3,b=4,c=5,x,y; cout用 putchar 函数输出结果为:; coutc & b=cendl; #include putcharc1; couta|b+c & b-cendl; using namespace std; putcharc2; coutb & .c|1endl; int m

10、ain coutendl; cout.x=a & y=b & 0endl; int x,y; cout用 cout 语句输出结果为:; cout.a+b+c-1 & b+c/2endl; coutenter x:; coutc1c2x; return 0; if x1 3.9 题y=x; 3.4 题另一解include coutx=x, y=x=y; #include using namespace std; using namespace std; int main else if x10 int main int a,b,c; / 1 x10 char c1,c2; coutplease

11、enter three integer y=2*x-1; cout请输入两个字符c1,c2:; numbers:; coutx=xabc; y=2*x-1=y; 第 2 页,共 48 页- - - - - - -精选学习资料 - - - - - - - - - */ case 名师归纳总结 else coutenter an integer099999:; 3:couthundred,ten,num; v9999 coutreverse order:; coutx=x, place=5; coutindivtenhundredendl; y=3*x-11=999 place=4; break;

12、 cout99 case return 0; place=3; 2:coutten,indiv9 coutreverse order:; 3.11 题place=2; coutindivtenendl; #include else place=1; break; using namespace std; coutplace=placeendl; case 1:coutindivendl; int main / 运算各位数字coutreverse order:; float score; ten_thousand=num/10000; coutindivendl; char grade; tho

13、usand=intnum-ten_thousand*100break; coutscore; hundred=intnum-ten_thousand*100 while score100|score0 3.13 题coutdata error,enter data 00-thousand*1000/100; #include again.; ten=intnum-ten_thousand*10000-thusing namespace std; cinscore; int main ousand*1000-hundred*100/10; long i; /iswitchintscore/10

14、indiv=intnum-ten_thousand*10000-t为利润case 10: float case 9: grade=A;break; housand*1000-hundred*100-ten*10; bonus,bon1,bon2,bon4,bon6,bon10; case 8: grade=B;break; coutoriginal order:; bon1=100000*0.1; /case 7: grade=C;break; switchplace 利润为 10 万元时的奖金bon2=bon1+100000*0.075; /case 6: grade=D;break; ca

15、se default:grade=E; 5:coutten_thousand,thousand利润为 20 万元时的奖金bon4=bon2+100000*0.05; / ,hundred,ten,indivcoutscore is score, grade en 利润为 40 万元时的奖金is gradeendl; dl; bon6=bon4+100000*0.03; /return 0; coutreverse order:; 利润为 60 万元时的奖金bon10=bon6+400000*0.015; / coutindivtenhundredthousan3.12 题利润为 100 万元时

16、的奖金coutenter i:; #include dten_thousandi; int main case if i=100000 long int num; 4:coutthousand,hundred,bonus=i*0.1; int ten,indivendl; / 利润在 10 万元以内按10%提成奖金indiv,ten,hundred,thousand,ten_thousacoutreverse order:; else if i=200000 nd,place; coutindivtenhundredthousanbonus=bon1+i-100000*0.075; / 利润在

17、 10 万元至 20 万时的奖金/* 分别代表个位,十位 ,百位 ,千位 ,万位dendl; else if i=400000 和位数break; bonus=bon2+i-200000*0.05; 第 3 页,共 48 页- - - - - - -精选学习资料 - - - - - - - - - / 利润在 20 万元至 40 万时的奖金 while m.=0 / 求 n名师归纳总结 else if i=600000 coutbonus=bonusendl; 和 m 的最大公约数r=n%m; bonus=bon4+i-400000*0.03; return 0; / 利润在 40 万元至 6

18、0 万时的奖金 n=m; else if i=1000000 3.14 题m=r; bonus=bon6+i-600000*0.015; #include / 利润在 60 万元至 100 万时的奖金using namespace std; coutHCF=nendl; else int main coutLCD=p/nendl; bonus=bon10+i-1000000*0.01; int t,a,b,c,d; / p 是原先两个整数的乘积/ 利润在 100 万元以上时的奖金coutenter four numbers:; return 0; coutbonus=bonusabcd; re

19、turn 0; couta=a, b=b, 3.16 题 c=c,d=db #include t=a;a=b;b=t; #include using namespace std; if ac using namespace std; int main t=a; a=c; c=t; int main long i; if ad char c; float t=a; a=d; d=t; int letters=0,space=0,digit=0,other=0; bonus,bon1,bon2,bon4,bon6,bon10; if bc coutenter one line:d if c=a &

20、 c=A & cd else if c= bon6=bon4+200000*0.03; t=c; c=d; d=t; space+; bon10=bon6+400000*0.015; coutthe sorted sequence:=0 & c=9 coutenter i:; couta, b, ci; d10 c=10; switchc 3.15 题coutletter:letters, case 0: bonus=i*0.1; break; #include space:space, digit:digit, case 1: using namespace std; other:other

21、endl; bonus=bon1+i-100000*0.075; break; int main return 0; case 2: int p,r,n,m,temp; case 3: coutnm; #include case 5: if nm using namespace std; bonus=bon4+i-400000*0.03;break; temp=n; int main case 6: n=m; int a,n,i=1,sn=0,tn=0; case 7: m=temp; /coutan; case 9: while i=n bonus=bon6+i-600000*0.015;

22、break; p=n*m; / 先tn=tn+a; / 赋值后的 tn 为 icase 10: 将 n 和 m 的乘积储存在p 中, 以便求个 a 组成数的值最小公倍数时用sn=sn+tn; / 赋值后的sn 为bonus=bon10+i-1000000*0.01; 第 4 页,共 48 页- - - - - - -精选学习资料 - - - - - - - - - 多项式前 i 项之和for a=2;a=m;a+ / a 是case 10: 名师归纳总结 a=a*10; 21000 之间的整数,检查它是否为完k10=i; break; / 找出+i; 数的笫 10 个因子赋给k10 n=0;

23、/ n 用来 couta+aa+aaa+.=snendl; 累计 a 的因子的个数 s=a; / s 用来return 0; if s=0 / s=0 表 存放尚未求出的因子之和,开头时等示全部因子都已找到了3.18 题于 a couta is a 完数 endl; for i=1;ia;i+ / 检查 i 是#include cout1 coutk1,1 表示 a 至少有 2 个因子float s=0,t=1; 是 a 的因子if n2 cout,2n+; / n 加int n; 表示至少有3 个因子,故应再输出一for n=1;n3 cout,3t=t*n; / 求 n. 已找到的因子,

24、s 的新值是尚未求出的表示至少有4 个因子,故应再输出一因子个因子s=s+t; / 将各项累加 之和if n4 cout,k5; cout1.+2.+.+20.=s5 cout,6 cout,7 cout,8 cout,k9; #include case 2: if n9 cout,k10; using namespace std; k2=i; break; / 找出coutendlendl; int main 的笫 2 个因子赋给k2 case 3: int i,j,k,n; coutnarcissus numbers k3=i; break; / 找出return 0; are:endl;

25、 的笫 3 个因子赋给k3 case 4: for n=100;n1000;n+ 3.20 题另一解i=n/100; k4=i; break; / 找出#include j=n/10-i*10; 的笫 4 个因子赋给k4 using namespace std; case 5: k=n%10; int main if n = i*i*i + j*j*j + k*k*k k5=i; break; / 找出int m,s,i; coutn ; 的笫 5 个因子赋给k5 for m=2;m1000;m+ case 6: s=0; coutendl; k6=i; break; / 找出for i=1;

26、im;i+ return 0; 的笫 6 个因子赋给k6 if m%i=0 s=s+i; case 7: ifs=m 3.20 题k7=i; break; / 找出coutm is a 完数 endl; #include 的笫 7 个因子赋给k7 coutits factors are:; case 8: using namespace std; for i=1;im;i+ int main k8=i; break; / 找出if m%i=0 couti ; const int m=1000; / 定义寻的笫 8 个因子赋给k8 coutendl; case 9: 找范畴 int k1,k2,

27、k3,k4,k5,k6,k7,k8,k9,k10; k9=i; break; / 找出 int i,a,n,s; 的笫 9 个因子赋给k9 return 0; 第 5 页,共 48 页- - - - - - -精选学习资料 - - - - - - - - - #include coutendl; / 输名师归纳总结 3.20 题另一解using namespace std; 出完一行 *号后换行 #include int main using namespace std; int day,x1,x2; for i=0;i=2;i+ / 输出int main day=9; 下面 3 行*号for

28、 k=0;k0 cout*; / 输for a=2;a=1000;a+ x1=x2+1*2; / 第 1 天出 *号n=0; 的桃子数是第2 天桃子数加1 后的 2coutendl; / 输倍s=a; 出完一行 *号后换行x2=x1; for i=1;ia;i+ if a%i=0 day-; return 0; n+; s=s-i; couttotal=x1endl; 3.25 题kn=i; / 将找return 0; 到的因子赋给k1 k10 #include using namespace std; 3.23 题if s=0 int main couta is a 完数 endl; #in

29、clude char i,j,k; /* i 是 acoutits factors are:; #include 的对手 ;j 是 b 的对手 ;k 是 c 的对手 */ for i=X;i=Z;i+ for i=1;in;i+ using namespace std; coutki ; int main for j=X;j=Z;j+ coutknendl; float a,x0,x1; if i.=j coutenter a positive number:; for k=X;ka; / 输入 a 的值if i.=k & j.=k return 0; x0=a/2; if i.=X & k.

30、=X & x1=x0+a/x0/2; k.=Z 3.21 题do coutA-i x0=x1; B-j C-kendl; #include x1=x0+a/x0/2; return 0; using namespace std; int main whilefabsx0-x1=1e-5; 4.1 题int i,t,n=20; coutThe square root of a is double a=2,b=1,s=0; x1endl; #include for i=1;i=n;i+ return 0; using namespace std; s=s+a/b; int main t=a; 3.

31、24 题int hcfint,int; a=a+b; / 将前一项int lcdint,int,int; 分子与分母之和作为下一项的分子#include int u,v,h,l; b=t; / 将前一项using namespace std; cinuv; 的分子作为下一项的分母int main h=hcfu,v; int i,k; coutH.C.F=hendl; coutsum=sendl; for i=0;i=3;i+ / 输l=lcdu,v,h; return 0; 出上面 4 行* 号coutL.C.D=lendl; for k=0;k=2*i;k+ return 0; 3.22 题coutu t=u;u=v;v=t; void greater_than_zerofloat a,float b 4.4 题while r=u%v.=0 /* 定义一个函数, 用来求 disc0 时方u=v; 程的根

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

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁