




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、C+與數據結構基礎簡明教程課后習題答案1-7-1輸出一個數的10倍#include<iostream>usingnamespacestd;intmain()cout<<"Pleaseinputaninterger:n"inta;cin>>a;cout<<"result="<<a*10<<endl;return0;1-7-2輸出兩個數中的較小的#include<iostream>usingnamespacestd;intmain()doublex,y,min;cout<
2、;<"pleaseinputtwonumbers"<<endl;cin>>x>>y;min=(x>y?y:x);cout<<"thesmalleris"<<''<<min<<endl;return0;1-7-3/輸入半徑計算周長和面積#include<iostream>usingnamespacestd;intmain()cout<<"請輸入半徑n"doublerad;cin>>rad;d
3、oublec,s;c=2*3.14*rad;s=3.14*rad*rad;cout<<"周長是"<<c<<endl;cout<<"面積是"<<s<<endl;return0;1-7-4/將10000秒化成小時分鐘秒#include<iostream>usingnamespacestd;intmain()inthour,min,second;hour=10000/3600;min=(10000%3600)/60;second=10000-hour*3600-60*min;c
4、out<<hour<<"hours"<<min<<"minutes"<<second<<"seconds"<<endl;return0;1-7-5/將一個三位數倒敘輸出#include<iostream>usingnamespacestd;intmain()intnum,num_bai,num_shi,num_ge;cout<<"請輸入一個三位數"cin>>num;num_bai=num/100;
5、num_shi=(num-num_bai*100)/10;num_ge=num-num_bai*100-num_shi*10;cout<<num_ge<<endl;cout<<num_shi<<endl;cout<<num_bai<<endl;return0;2-3/簡單的輸入輸出#include<iostream>usingnamespacestd;intmain()doubley,n;cout<<"pleaseinputanumbern"cin>>n;if(n&g
6、t;0)y=n+1;if(n=0)y=0;cout<<"theresultis:"<<''<<y;return0;2-4/輸出學生學號和對應的成績等級#include<iostream>usingnamespacestd;intmain()doublefenshu;intxuehao;chardengji;inti;for(i=1;i<=10;i+)student scoren"dengji='A'dengji='B'dengji='C'dengj
7、i='D'onerror:cout<<"pleaseinputcin>>fenshu;if(fenshu>=90&&fenshu<=100)if(fenshu>=80&&fenshu<90)if(fenshu>=600&&fenshu<80)if(fenshu>=0&&fenshu<60)if(fenshu<0)cout<<"error"gotoonerror;cout<<"
8、error"gotoonerror;cout<<"theidis"<<i<<endl;cout<<"thescoreis"<<dengji<<endl;return0;2-5/判斷輸入字符類別#include<iostream>usingnamespacestd;intmain()charzifu;intascii;cout<<"pleaseinputacharacteristicn"cin>>zifu;ascii=z
9、ifu;if(ascii>=48&&ascii<=57)cout<<"數字n"gotoend;if(ascii>=97&&ascii<=122)cout<<"小寫字母n"gotoend;if(ascii>=65&&ascii<=90)cout<<"大寫字母n"gotoend;cout<<"其他字符"cout<<endl;end:return0;2-6/求圓周率的近似值#in
10、clude<iostream>#include<iomanip>usingnamespacestd;intmain()intxishu=-1;doubledanshu=1.0;inti=1;doublesifenzhipi=0;doxishu=xishu*(-1);danshu=1.0/(2*i-1);sifenzhipi=sifenzhipi+xishu*danshu;i+;while(danshu>=0.000001);cout<<setprecision(15)<<sifenzhipi*4<<endl;return0;)2
11、-7輸出斐波那契數列前40個數,以8*5的格式輸出#include<iostream>#include<iomanip>usingnamespacestd;intmain()intb=2;intfeibo1=0;intfeibo2=1;cout<<setw(9)<<'0'<<setw(9)<<'1'for(inti=1;i<=38;i+)inta=feibo2;feibo2=feibo1+feibo2;feibo1=a;cout<<setw(9)<<feibo2
12、;b=b+1;if(b%8=0)cout<<endl;return0;2-8/統計輸入的元音字母個數#include<iostream>usingnamespacestd;intmain()charzimu;inta,e,i,o,u;a=e=u=i=o=0;begin:cin>>zimu;switch(zimu)case'a':a+;break;case'e':e+;break;case'i':i+;break;case'o':o+;break;case'u':u+;break;
13、case'#':gotoend;)gotobegin;end:cout<<a<<endl<<e<<endl<<i<<endl<<o<<endl<<u<<endl<<a+e+i+o+u;return0;)2-10計算5!+6!+7!usingnamespacestd;intmain()inti,j;intsum=0;for(i=5;i<=7;i+)intjiecheng=1;for(j=1;j<=i;j+)jiecheng=jiechen
14、g*j;sum=sum+jiecheng;cout<<sum;return0;2-11/從2開始100個素數#include<iostream>usingnamespacestd;intmain()intnum=1;intsushu=0;start:;num+;for(inti=2;i<=num;i+)if(num%i=0)break;if(i=num)(cout<<num<<endl;sushu+=1;)if(sushu!=100)gotostart;return0;)2-12/百錢買百雞問題#include<iostream>
15、;usingnamespacestd;intmain()(intx,y,z;for(x=0;x<=100;x+)(for(y=0;y<=100;y+)(cout<<for(z=0;z<=100;z+)if(x+y+z=100&&5*x+3*y+z/3=100&&z%3=0)x<<'t'<<y<<'t'<<z<<endl;)return0;)2-13#include<iostream>usingnamespacestd;intmai
16、n()(inta,b,c,d,e;c=0;cin>>a;cout<<"輸入"<<a<<endl<<"該數的三次方是"<<a<<"個連續奇數"b=1;e=a*a*a;while(c!=e)(d=b;c=0;for(inti=1;i<=a;i+)(c=c+d;d=d+2;b=b+2;/cout<<b-2;intf=b-4;for(intj=1;j<=a;j+)(f=f+2;cout<<f<<''
17、;cout<<"的和n"return0;2-14/輸出四方*形狀#include<iostream>usingnamespacestd;intmain()inti,j;for(i=1;i<=9;i+)j=1;for(j=1;j<=9;j+)if(i+j>=6&&i+j<=14&&j-i<=4&&i-j<=4)cout<<'*'elsecout<<''cout<<endl;return0;3-1-1/向
18、數組a中輸入10個整數,求其中的最大值,最小值和10個數的算術平均值#include<iostream>usingnamespacestd;intmain()inta10;for(inti=0;i<=9;i+)cin>>ai;intmax=a0,min=a0,sum=a0;for(intj=0;j<=9;j+)(sum=sum+aj;max=(max>aj?max:aj);min=(min<aj?min:aj);doubleave=sum/10.00;cout<<max<<endl<<min<<en
19、dl<<ave<<endl;return0;3-1-2#include<iostream>usingnamespacestd;intmain()(intscore10;intsum=0,a=0,b=0;for(inti=0;i<=9;i+)(cin>>scorei;sum=sum+scorei;doubleave=sum/10.0;for(intj=0;j<=9;j+)(if(scorej>ave)a+;if(scorej<60)b+;cout<<"成績大于平均值的人數是"<<a
20、<<endl<<"成績小于60的人數"<<b<<endl;return0;3-3-1#include<iostream>usingnamespacestd;intmain()(inta10,sum=0,min,max;doubleave;int*ptoa=a;for(inti=0;i<=9;i+)(cin>>*(a+i);sum+=*(a+i);min=*(a);max=*(a);for(intj=1;j<=9;j+)min=(min<*(a+j)?min:*(a+j);max=(ma
21、x>*(a+j)?max:*(a+j);cout<<max<<endl<<min<<endl;ave=sum/10.0;cout<<ave<<endl;return0;3-3-2#include<iostream>usingnamespacestd;intmain()/ 定義平均值/ 定義數組 a, sum 是各學生成績之和,inta10,sum=0,j=0,c=0;j是小于60的個數,c是大于平均值的個數doubleave=0;int*ptoa=a;/使用指針for(inti=0;i<=9;i+)
22、/輸入并算和,統計小于60的cin>>*(ptoa+i);sum+=*(ptoa+i);if(*(ptoa+i)<60)j+;/ 計算平均值/ 可以輸出平均值ave=sum/10.0;/cout<<ave<<endl;for(intk=0;k<=9;k+)/計算大于平均值的if(*(ptoa+k)>ave)(c+;)cout<<c<<endl<<j;return0;)3-3-3#include<iostream>usingnamespacestd;intmain()(charstring100
23、;cin>>string;inti=0,an=0,in=0;cout<<"您輸入的字符串"while(stringi!='0')(if(stringi='a')an+;if(stringi='i')in+;cout<<stringi;i+;)cout<<endl<<an<<endl<<in<<endl;3-3-3a#include<iostream>usingnamespacestd;intmain()chara100;
24、/定義存放字符串的數組char *ptoa=a;int i=0,an=0,in=0;cin>>a;while (*(ptoa+i)!='0')cout<<*(ptoa+i);switch (*(ptoa+i)/ 使用指針/an , in 分別為 a, i 的個數/a 【 i 】/ 判斷case'a':an+;break;case'i':in+;break;i+;cout<<endl<<an<<endl<<in;return0;3-3-4#include<iostream
25、>usingnamespacestd;intmain()inta33;for(inti=0;i<=2;i+)(for(intj=0;j<=2;j+)(cin>>*(*(a+i)+j);)cout<<*(*(a+0)+0)+*(*(a+1)+1)+*(*(a+2)+2)<<endl;cout<<*(*(a+0)+2)+*(*(a+1)+1)+*(*(a+2)+0)<<endl;return0;)3-3-5v1#include<iostream>usingnamespacestd;intmain()(inta
26、11=2,4,5,8,12,14,16,18,20,30,0,b,i,m,j;cin>>b;a10=b;if(b<2)m=0;gotoend;if(b>30)for(i=0;i<=9;i+)if(ai+1>b)m=i+1;gotoend;end:;for(j=10;j>=m+1;j-)aj=aj-1;am=b;end2:;for(intk=0;k<=10;k+)cout<<ak<<endl;return0;3-3-5v2#include<iostream>usingnamespacestd;intmain()i
27、nti,j,temp;inta11=2,4,5,8,12,14,16,18,20,30;for(i=0;i<=10;i+)for(j=0;j<=10-i-1;j+)(if(aj>aj+1)temp=aj+1;aj+1=aj;aj=temp;for(intk=0;k<=10;k+)cout<<ak<<'cout<<'n'return0;3-3-5v3#include<iostream>usingnamespacestd;intmain()inta11=2,4,5,8,12,14,16,18,20,30
28、,num,i,j;cout<<"請輸入一個整數"cin>>num;if(num>a9)a10=num;else(for(i=0;i<=11;i+)(if(ai>num)(for(j=9;j>=i;j-)(aj+1=aj;ai=num;break;for(i=0;i<=10;i+)(cout<<ai<<''return0;3-3-5final#include<iostream.h>voidmain()inta11=2,4,5,8,12,14,16,18,20,30,b,i
29、=0,j=10;cin>>b;while(ai<b&&i<=9)i+;while(j>i)aj=aj-1;j-;)ai=b;cout<<"輸入插入后的結果:"for(i=0;i<11;i+)cout<<ai<<""cout<<endl;)3-3-6#include<iostream>usingnamespacestd;intmain()inta53,s5=0,0,0,0,0,temp;for(inti=0;i<=4;i+)cout<
30、<"請輸入第"<<i+1<<"行的數據"<<endl;for(intj=0;j<=2;j+)cin>>*(*(a+i)+j);*(s+i)+=*(*(a+i)+j);/*/注釋掉的部分可以輸出每行數據之和for(intk=0;k<=4;k+)cout<<*(s+k)<<endl;*/for(intm=0;m<=4;m+)for(intn=0;n<=4-m-1;n+)if(*(s+n)>*(s+n+1)temp=*(s+n+1);*(s+n+1)=*
31、(s+n);*(s+n)=temp;for(intl=0;l<=4;l+)cout<<endl<<*(s+l);cout<<endl;system("pause");return0;4-3#include<iostream>usingnamespacestd;intfun1(intx,inty);intfun2(intx,inty);intfun3(intx,inty);intfun4(intx,inty);intmain()inta,b;COUt<V"輸入兩個數cin»a»b;cou
32、t«"兩個數的和的平方是"«fun1(a,b)«endl;cout«"兩個數的平方和是"«fun2(a,b)«endl;cout«"兩個數的差的平方是"«fun3(a,b)«endl;cout«"兩個數平方的差是"«fun4(a,b)«endl;return0;)intfun1(intx,inty)(intz=(x+y)*(x+y);returnz;)intfun2(intx,inty)(intz
33、=x*x+y*y;returnz;intfun3(intx,inty)intz=(x-y)*(x-y);returnz;intfun4(intx,inty)intz=x*x-y*y;returnz;4-4#include<iostream>usingnamespacestd;doublejc(intx);intsm(intx);intmain()intm,n,s2;doubles1;cin>>m>>n;s1=jc(m)/(jc(n)*jc(m-n);s2=sm(m)-sm(n);cout<<s1<<endl<<s2;ret
34、urn0;doublejc(intx)s*=i;s+=i;doubles=1;for(inti=1;i<=x;i+)returns;intsm(intx)ints=0;for(inti=1;i<=x;i+)returns;4-6#include<iostream>#include<cmath>usingnamespacestd;doublejxf(intn);doubletxf(intn);doublef(doublex);/constpi=3.1415927;intmain()intn;doubley1,y2;cin>>n;y1=jxf(n);
35、y2=txf(n);cout<<y1<<endl<<y2;return0;doublejxf(intn)doublesum=0,s;for(inti=0;i<=n-1;i+)s=(i*3.14)/n;sum+=(3.14/n)*f(s);returnsum;doubletxf(intn)doublesum=0,s1,s2;for(inti=0;i<=n-1;i+)s1=i*3.14/n;s2=(i+1)*3.14/n;sum+=3.14/n*(f(s1)+f(s2);sum/=2.0;returnsum;doublef(doublex)doubl
36、ey;y=sin(x)+cos(x);returny;4-6v1#include<iostream>#include<cmath>usingnamespacestd;doublejxf(intn);doubletxf(intn);doublef(doublex);constpi=3.1415927;intmain()intn;doubley1,y2;cin>>n;y1=jxf(n);y2=txf(n);if(abs(y1-2)>abs(y2-2)cout<<"矩形法"elsecout<<"梯形法&q
37、uot;return0;doublejxf(intn)doublesum=0;for(inti=0;i<=n-1;i+)sum+=pi/n*f(i*pi/n);returnsum;doubletxf(intn)doublesum=0;for(inti=0;i<=n-1;i+)sum+=pi/n*(f(i*pi/n)+f(i+1)*pi/n);sum/=2;returnsum;doublef(doublex)doubley;y=sin(x)+cos(x);returny;4-6v2error#include<iostream>#include<cmath>us
38、ingnamespacestd;doublejxf(intn);doubletxf(intn);doublef(doublex);constpi=3.1415927;intmain()intn;doubley1,y2;cin>>n;y1=jxf(n);y2=txf(n);if(abs(y1-2)>abs(y2-2)cout<<"矩形法"elsecout<<"梯形法"return0;doublejxf(intn)doublesum=0;for(inti=0;i<=n-1;i+)sum+=pi/n*f(i*pi
39、/n);returnsum;doubletxf(intn)doublesum=0;for(inti=0;i<=n-1;i+)sum+=pi/n*(f(i*pi/n)+f(i+1)*pi/n);sum/=2;returnsum;doublef(doublex)doubley;y=sin(x)+cos(x);returny;4-7#include<iostream>usingnamespacestd;intmy(intx,inty);intmb(intx,inty);intmain()inta,b,max,min;cin>>a>>b;max=my(a,b)
40、;min=mb(a,b);cout<<max<<endl<<min<<endl;system("pause");return0;intmy(intx,inty)for(inti=(x>y?y:x);i>=1;i-)if(x%i=0&&y%i=0)returni;intmb(intx,inty)for(inti=(x>y?x:y);i>=1;i+)if(i%x=0&&i%y=0)returni;4-11#include<iostream>usingnamespa
41、cestd;voiddelchar(char*s1,chars2);intmain()chars1100;chars2;cin>>s1>>s2;delchar(s1,s2);return0;voiddelchar(char*s1,chars2)for(inti=1;*(s1+i)!='0'i+)if(*(s1+i)=s2)for(intj=0;*(s1+i+j)!='0'j+)*(s1+i+j)=*(s1+i+j+1);cout<<s1;4-12#include<iostream>#include<cmath
42、>usingnamespacestd;intcheck(inta,intb,intc);doubles(doublea,doubleb,doublec);doublea,b,c;cin>>a>>b>>c;if(check(a,b,c)cout<<s(a,b,c);elsecout<<"error"system("pause");return0;intcheck(inta,intb,intc)if(a+b>c&&abs(a-b)<c)return1;elseret
43、urn0;doubles(doublea,doubleb,doublec)doublep=(a+b+c)/2;doublearea=sqrt(p*(p-a)*(p-b)*(p-c);returnarea;4-13#include<iostream>#include<cmath>usingnamespacestd;fun(intn,intk);intmain()intn,k;cin>>n>>k;cout<<fun(n,k)<<endl;system("pause");return0;intfun(intn
44、,intk)0;if(k>n|k<1)returnelseints;s=n/pow10(k-1);s=s%10;returns;intpow10(intx)ints=1;for(inti=1;i<=x;i+)s*=10;returns;4-14#include<iostream>usingnamespacestd;doubleave(intp4,inti);intmain()inta54;for(inti=0;i<=4;i+)for(intj=0;j<=3;j+)cin>>aij;for(i=0;i<=4;i+)cout<<
45、;ave(a,i)<<endl;system("pause");return0;doubleave(intp4,inti)doublesum=0;for(intj=0;j<=3;j+)sum+=pij;sum/=4;returnsum;4-15#include<iostream>usingnamespacestd;intfind(charstr,chara);intmain()charstr100,a;cin>>str>>a;cout<<find(str,a)+1;system("pause&quo
46、t;);return0;intfind(charstr,chara)for(inti=0;stri!='0'i+)if(stri=a)returni;break;if(stri='0')return-1;/4_16#include<iostream>usingnamespacestd;intchange(intn,intR,int*a);intmain()cout<<"PleaseinputnandR(2<=R<=16)"<<endl;intn,R,a10;cin>>n>>
47、;R;inti=change(n,R,a);for(intj=i-1;j>=0;j-)switch(aj)case11:cout<<'A'break;case12:cout<<'B'break;case13:cout<<'C'break;case14:cout<<'D'break;case15:cout<<'E'break;default:cout<<aj;system("pause");return0;intchan
48、ge(intn,intR,int*a)inti=0;while(n!=0)*(a+i)=n%R;n/=R;i+;returni;4-17#include<iostream>usingnamespacestd;constintN=5;intinit(intaN);voidfun1(intaN);voidfun2(intaN);voidfun3(intaN,intsum);voidfun4(intaN);intmain()intsum=0;inta2N;sum=init(a);cout<<"(1)"<<endl;fun1(a);cout<
49、;<"(2)"<<endl;fun2(a);cout<<"(3)"<<endl;fun3(a,sum);cout<<"(4)"<<endl;fun4(a);return0;intinit(intaN)intsum=0;for(inti=0;i<=N-1;i+)a0i=i+1;cin>>a1i;sum+=a1i;returnsum;voidfun1(intaN)for(inti=0;i<=N-1;i+)if(a1i>85)(cout<&
50、lt;a0i<<''<<a1i<<endl;)voidfun2(intaN)(for(inti=0;i<=N-1;i+)if(a1i<60)(cout<<a0i<<''<<a1i<<endl;)voidfun3(intaN,intsum)(intaveplus=0;doubleave=sum/N;for(inti=0;i<=N-1;i+)if(a1i>=ave)aveplus+;cout<<aveplus<<endl;voidfun
51、4(intaN)for(inti=0;i<=N-1;i+)for(intj=0;j<=N-1;j+)if(a1j>a1j+1)inttemp1=a1j+1;a1j+1=a1j;a1j=temp1;inttemp2=a0j+1;a0j+1=a0j;a0j=temp2;for(i=0;i<=N-1;i+)cout<<a0i<<''<<a1i<<endl;5-5/計算當前日期是一年之中的第幾天#include<iostream>usingnamespacestd;/定義日期類private:/y年m月
52、d天nod一年中的第幾天ly是否是閏年inty,m,d,nod,ly;public:Date(intioy=2009,intiom=5,intiod=1)y=ioy;m=iom;d=iod;intcheckdate();intIssleapyear();voidPrint();intNumberOfDays();/是否是閏年intDate:Issleapyear()returnly=(y%400=0)|(y%4=0&&y%100!=0);/計算一年之中的第幾天intDate:NumberOfDays()inta213=0,31,29,31,30,31,30,31,31,30,3
53、1,30,31,0,31,28,31,30,31,30,31,31,30,31,30,31;nod=0;for(inti=0;i<=m-1;i+)nod+=aIssleapyear()i;nod+=d;returnnod;/判斷日期是否合法intDate:checkdate()return(m>0&&m<13)&&(d>0&&d<=31);/輸出voidDate:Print()cout<<y<<"年"<<m<<"月"<<
54、;d<<"日"<<"是該年的第"<<NumberOfDays()<<"天"<<endl;/主函數intmain()Dated1;Dated2(1991,5,2);inty,m,d;cout<<"請依次輸入年月日cin>>y>>m>>d;Dated3(y,m,d);d1.Print();d2.Print();if(d3.checkdate()d3.Print();elsecout<<"Error"system("pause");system(&qu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權】 IEC 60974-4:2025 RLV EN Arc welding equipment - Part 4: Periodic inspection and testing
- 2025至2030中國皮膚美容行業市場發展分析及競爭格局與投資前景報告
- 醫療教育中實施翻轉課堂的策略與方法
- 礦山車隊安全培訓課件
- 飛行檢查培訓課件
- 教育建筑中智能電力系統的安全保障措施
- 當代教育中游玩耍的元素與心理定價策略的結合實踐
- 創新教育心理策略助力學生全面發展
- 教育心理學在學生家庭聯系中的角色
- 提升學生情感智商助力學業成功之路
- 水泥場地改造方案(3篇)
- 資材部安全生產責任制
- 既有建筑節能綜合改造項目可行性研究報告
- 貴州省銅仁市萬山區2024-2025學年部編版七年級下學期6月期末歷史試題(含答案)
- 2025年工程管理基礎知識考試試卷及答案
- 礦山生態修復方案
- 開曼群島公司法2024版中文譯本(含2024年修訂主要內容)
- GB/T 19741-2005液體食品包裝用塑料復合膜、袋
- 礦相學課程設計 -個舊錫礦
- 征信查詢委托書(共4篇)
- 勞動防護用品配備標準(國標)
評論
0/150
提交評論