C++匯總.docx_第1頁(yè)
C++匯總.docx_第2頁(yè)
C++匯總.docx_第3頁(yè)
C++匯總.docx_第4頁(yè)
C++匯總.docx_第5頁(yè)
已閱讀5頁(yè),還剩132頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第1題P17-1.輸入長(zhǎng)、寬(均為整數(shù)),計(jì)算矩形的面積。#includeusing namespace std;int main()int a,b,c;coutPlease input lengtha;coutPlease input widthb;c=a*b;coutThe surface of the square iscendl;return 0;第2題P17-3.輸入半徑(實(shí)數(shù)),計(jì)算圓的周長(zhǎng)和面積。#includeusing namespace std;int main()double r,c,s;coutPlease input the radius of the circler;c=2*3.1415926*r;s=3.1415926*r*r;coutthe circumference of the circle iscendl;coutthe square of the circle issendl;return 0;第3題P17-5.編寫程序,打印矩形* * * * *#includeusing namespace std;int main()cout*endl;cout* *endl;cout* *endl;cout* *endl;cout* *endl;cout*endl;return 0;第4題P17-6.編寫程序,打印如下圖所示的卡片,其中姓名和電話號(hào)碼從鍵盤輸入。* Wang Feng Xian Jiaotong University Add. No.28 West Xianning Road Xian China,710049 Tel.86-29-82668888*#includeusing namespace std;int main()char name30;coutPlease input the name of the ownername;int number;coutPlease input the telephone number of the ownernumber;cout*endl;coutendl;coutnameendl;cout Xian Jiaotong Universityendl;cout Add.endl;cout No.28 West Xianning Roadendl;cout Xian China,710049endl;cout Tel.86-29-numberendl;coutendl;cout*endl;return 0;第5題P18-7.輸入n,計(jì)算y=(1+1/n)n的函數(shù)值。#include#includeusing namespace std;int main()int n;coutPlease input integer nn;double y;y=pow(1.0+1.0/n),n);coutyendl;return 0;第6題P18-10.輸入x,a,計(jì)算y=loga(x+(x2+1)的函數(shù)值。#include#includeusing namespace std;int main()double x,a,y;coutPlease input xx;cout0 and a1a;y=(log(x+sqrt(x*x+1.0)/log(a);coutyendl;return 0;第1題P54-2.溫度轉(zhuǎn)換。輸入華氏溫度,用下列公式將其轉(zhuǎn)換為攝氏溫度并輸出。C=5/9(F-32)#include #includeusing namespace std;int main()double C,F;coutPlease input your Fahrenheit FF;C=(5.0*(F-32.0)/9.0;coutThe Centigrade is Cendl;return 0;第2題P55-3.輸入x,編程試求函數(shù) y=sin(x2)/(1-cosx)的值。#include #includeusing namespace std;int main()double x,y;coutPlease input xx;y=(sin(x*x)/(1-cos(x);couty;return 0;第3題P55-5.編程實(shí)現(xiàn),用戶從鍵盤輸入3個(gè)整數(shù),計(jì)算并打印這三個(gè)數(shù)的和、平均值及平均值的四舍五入整數(shù)值。#include using namespace std;int main()int x,y,z,s,b,d;double a,c;coutPleasen input three integers:x,y,z=xyz;s=x+y+z;a=(x+y+z)/3.0;d=int(a+0.5);cout他們的和是sendl他們的平均數(shù)是aendl平均數(shù)四舍五入的整數(shù)結(jié)果為dendl; return 0;第4題P55-7.小寫轉(zhuǎn)大寫。 用戶輸入小寫字母,程序輸出對(duì)應(yīng)的大寫字母。#include using namespace std;int main()cout請(qǐng)輸入小寫字母str;const int c=32;str0=str0-c;cout對(duì)應(yīng)的大寫字母為strendl; return 0;第5題P55-8.打印ASCII碼。輸入一個(gè)字符(可能為字母、數(shù)字或標(biāo)點(diǎn)符號(hào)等),在一行中打印該字符及該字符的ASCII的十進(jìn)制、十六進(jìn)制形式和八進(jìn)制形式,數(shù)據(jù)之間用t分隔。提示,輸出八進(jìn)制數(shù)使用coutoctv;的格式,其中v是待輸出的整型變量#includeusing namespace std;int main()char x;cout請(qǐng)輸入一個(gè)字符x;cout此字符的ASCII 碼的十進(jìn)制、十六進(jìn)制、八進(jìn)制分別為decxthexxtoctxendl;return 0;第6題P55-9用戶輸入不超過(guò)255的四個(gè)數(shù),將這四個(gè)數(shù)順序保存在一個(gè)整型變量的4個(gè)字節(jié)中,輸出這個(gè)整型變量值的十進(jìn)制和十六進(jìn)制形式。#includeusing namespace std;int main()int a,b,c,d;cout請(qǐng)輸入不超過(guò)255的四個(gè)數(shù)abcd;int x;x=(a24)+(b16)+(c8)+d;cout這個(gè)整型變量的十進(jìn)制和十六進(jìn)制分別為decxthexxendl;return 0;第1題P.5455 4.C+中的庫(kù)函數(shù)sin(x),cos(x)等三角函數(shù),自變量的單位為弧度。請(qǐng)編寫程序,用戶輸入角度,計(jì)算其正弦、余弦、正切(tan)和余切的函數(shù)值并顯示出來(lái)。要求如果用到,請(qǐng)將其定義為符號(hào)常量。#include#includeusing namespace std;int main() double x;const double PI=3.1415926;cout請(qǐng)輸入一個(gè)角度的值x;double r;r=x*PI/180.0; cout此角度的正弦值為sin(r)endl;cout此角度的余弦值為cos(r)endl;cout此角度的正切值為tan(r)endl;cout此角度的余切值為atan(r)endl; return 0;第2題P.5455 6.找零錢。為顧客找零錢時(shí),希望選用的紙幣張數(shù)最少。例如73元,希望零錢的面值為五十元1張,二十元1張,一元3張。設(shè)零錢面值有五十元、二十元、十元、五元和一元,請(qǐng)編寫程序,用戶輸入100以下的數(shù),計(jì)算找給顧客的各面值的紙幣張數(shù)。并在程序中想一個(gè)驗(yàn)證結(jié)果是否正確的辦法。#include#includeusing namespace std;int main() int m;cout請(qǐng)輸入100以下的零錢數(shù)m;int a,b,c,d,e;a=int(m/50.0);b=int(m%50)/20.0);c=int(m-a*50.0-b*20.0)/10.0);d=int(m-a*50.0-b*20.0-c*10.0)/5.0);e=(m%10)-d*5.0; char right20=數(shù)值正確;char wrong20=數(shù)值錯(cuò)誤; cout應(yīng)找零錢a張50元tb張20元tc張10元td張5元te張一元endl;cout(m=(a*50.0+b*20.0+c*10.0+d*5.0+e*1.0)?right:wrong); return 0;第3題P.545511.用戶以字符形式輸入4個(gè)數(shù)字字符,將其組成一個(gè)4位的整數(shù)。例如,用戶輸入:2 0 1 1,輸出結(jié)果為2011。注意,輸入的四個(gè)數(shù)字是字符型,用四個(gè)字符型變量存儲(chǔ),而2011是由它們構(gòu)造出的一個(gè)四位整數(shù),用一個(gè)整型變量表示。#include#includeusing namespace std;int main() char a;char b;char c;char d;cout請(qǐng)輸入四個(gè)數(shù)字abcd;int n;n=0.0;n=n*10.0+(a-48);n=n*10.0+(b-48);n=n*10.0+(c-48);n=n*10.0+(d-48);cout最終的整數(shù)為nendl; return 0;第4題 P.81841.編程求三個(gè)數(shù)的最大數(shù)。#include#includeusing namespace std;int main() double a,b,c;coutPlease input 3 numbersabc;double max;if (ab)if (ac)max=a;elsemax=c;elseif (bc)max=b;elsemax=c;coutThe biggest number is maxendl; return 0;第5題P.8184 2.編程計(jì)算下列分段函數(shù)的值: y=x2,當(dāng)=0時(shí)。#include#includeusing namespace std;int main() double x;coutPlease input xx;double y;if (x0)y=x*x;elsey=x*x*x+2.0*x*x+x;couty=yendl; return 0;第1題P.81-3.編程計(jì)算1+2+3+.+n,n由用戶輸入。#include#includeusing namespace std;int main()int n;coutPlease input nn;int i=0,sum=0;for (i=0;i=n;i=i+1)sum=sum+i;coutsum= sumendl; return 0;第2題P.82-10.輸入n(n13),計(jì)算1!+2!+3!+4!+.+n!#include#includeusing namespace std;int main()int n;coutPlease input n (n13)n;int i,u,sum;for (i=1,u=1,sum=0;i=n;i=i+1)u=u*i;sum=sum+u;cout1!+2!+3!+n!= sumendl; return 0;第3題P.83-13.計(jì)算a+aa+aaa+aaaa+.+aa.a(第n項(xiàng),n個(gè)a),其中a是19的整數(shù)。例如,a=1,n=3時(shí),式子為1+11+111;當(dāng)a=6,n=5時(shí),式子為6+66+666+6666+66666。#include#includeusing namespace std;int main()int a;int n;coutPlease input a (1=a=9) & na;cinn;int u=a;int sum=u;int i=1;dou=u*10.0+a;sum=sum+u;i=i+1;while(in);couta+aa+aaa+= sumendl; return 0;第4題P.83-14.arcsin(x)寫成級(jí)數(shù)形式為:x+x3/(2*3)+1*3*x5/(2*4*5)+.+(2n)!*x(2n+1) / (2(2n)*(n!)2*(2n+1)用戶輸入x,利用該式,計(jì)算反正弦函數(shù)的值。結(jié)束條件可以設(shè)為|u|#include#includeusing namespace std;int main()double x;coutPlease input x,|x|1x;double u=x;double asinx=u;int n=1;dou=u*(2.0*n-1)*(2.0*n-1)*x*x/(2*n*(2*n+1); asinx=asinx+u;n=n+1;while (fabs(u)=pow(10,(-10); /限制結(jié)果的精度coutasinx= asinxendl; return 0;第5題P.83-15.猴子吃桃問(wèn)題。第一天,猴子摘下一堆桃子,當(dāng)天吃了一半,感覺沒(méi)吃夠,又吃了一個(gè)。以后每天如此,到第10天的時(shí)候,發(fā)現(xiàn)只剩下一個(gè)桃子了。編程計(jì)算第一天猴子摘了多少桃子。#include#includeusing namespace std;int main() int n=0;int sum=1;dosum=(sum+1.0)*2;n=n+1;while (n9);coutThe sum of the first day is sum=0,n由用戶輸入。#include#includeusing namespace std;int main() coutPlease input n n; int i=1;int f0=0;int f1=1;int f2=1;int sum=f1;do i=i+1;f0=f1;f1=f2;f2=f0+f1;sum=sum+f1; while (in);coutThe No.n Fibonacci number is f1endl;coutThe sum of the top n Finonacci numbers is sumendl; return 0;第7題P.83-16.誰(shuí)是小偷。某小區(qū)發(fā)生盜竊案,有四個(gè)人嫌疑最大,警察找來(lái)訊問(wèn), A說(shuō):不是我。 B說(shuō):是C。 C說(shuō):是D。 D說(shuō):他冤枉人。四人中有一人說(shuō)了假話,請(qǐng)編程分析誰(shuí)是小偷?#include#includeusing namespace std;int main() int i=0;int thief;int sum;for (i=0;i=4;i=i+1)thief=i;if(thief!=1.0)+(thief=3.0)+(thief=4.0)+(thief!=4.0)=3)coutThe thief is No. iendl; return 0;第8題 附件題1分別使用以下兩種公式計(jì)算圓周率的值:(1) /4=1/1-1/3+1/5-1/7+.+(-1)(n-1) * 1/(2n-1) (2) /2=2/1*2/3*4/3*4/5*6/5*6/7*8/7*8/9*.*(2n)/(2n-1)*(2n)/(2n+1) 精度為10的-8次方。(1).#include#includeusing namespace std;int main() int n=0;double u=1;double sum=0;cout.setf (ios:fixed);cout.precision (10);dou=(1.0-2*n)*u/(2*n+1);sum=sum+u;n=n+1;while (fabs(u)=pow(10,(-8); coutPI= (sum*4.0)endl;return 0;(2).#include#includeusing namespace std;int main() double n=1;double u=(4/3.0);double sum=1;double sum2=100;cout.setf(ios:fixed);cout.precision (10);dosum2=sum;u=4.0*n*n/(2*n-1)*(2*n+1);sum=sum*u;n=n+1;while (fabs(sum-sum2)=1.0E-18);coutPI= (sum*2.0)endl; return 0;第9題 附件題2對(duì)1001000000000之間的數(shù)進(jìn)行如下處理(1) 找出全部回文數(shù)。比如:121、1441、. (2) 找出全部不是7的倍數(shù)和不帶7的數(shù)。 (3) 找出全部的平方數(shù)。比如:121=11*11、10000=100*100、.(1).#include#includeusing namespace std;int main() int n;int g;int rn;int n1; for(n=100;n=1000000000;n+) n1=n; rn=0;while(n1!=0) g=n1%10;/取出個(gè)位數(shù); rn=rn*10+g; n1=n1/10;/去掉個(gè)位數(shù),剩下前面的數(shù);if (rn=n)coutnt; return 0;(2).#include#includeusing namespace std;int main() int n;int g;int n1;for (n=100;n=1000000000;n+) n1=n; g=0;while (n1!=0) if(g!=7)g=n1%10;/ n1=n1/10;/continue; else if (g=7)break;if(g!=7&n%7!=0)/7coutnt; return 0;(3).#include#includeusing namespace std;int main() int n;int m;for(n=10;m=1000000000;n+)m=n*n;coutm=n*nt; return 0;第10題 附件題3正整數(shù)的素因子分解。比如:60=2*2*3*5#include#includeusing namespace std;int main()int A;coutPlease input integer A A;int a=A;int k=2;int m100;int i=0;int N;while(a!=1)if(a%k=0)mi=k;a=a/k;i=i+1;N=i;elsek=k+1;coutA=1;for(i=0;iN;i+)coutxmi;coutendl; return 0;第11題 附件題4有一批正整數(shù),請(qǐng)找出其中值 (最接近平均值的那個(gè)數(shù))。#include#includeusing namespace std;int main()int A1000;int N;int i=0;int j=0;int k=0;double B1000;int sum=0;double av;double b;coutPlease input the number of your integersN;for (i=0;iN;i+)/循環(huán)輸入整數(shù)coutPlease input your No. i+1integerAi;for (i=0;iN;i+)sum=sum+Ai;av=sum/N;/求此數(shù)組數(shù)據(jù)的平均值for(i=0,j=0;iN&jN;j+)Bj=fabs(Ai-av);/將每一個(gè)元素與平均值相減,其差值的絕對(duì)值存入數(shù)組Bi=i+1;for (j=0;jN-1;j+)/運(yùn)用冒泡排序?qū)?shù)組B中的元素由小至大排序for(k=0;kBk+1)double tmp;tmp=Bk;Bk=Bk+1;Bk+1=tmp;for(i=0;iN;i+)/將最小的B中的元素(即最小差值),與平均值相加,找出對(duì)應(yīng)的原數(shù)并輸出if(Ai=B0+av|Ai=av-B0)coutThe midium number is Ai; return 0;第1題1. 由鍵盤輸入一個(gè)正整數(shù)n(=100), 編程推導(dǎo)由五個(gè)5和四則運(yùn)算符組成的表達(dá)式, 這個(gè)表達(dá)式的值應(yīng)正好等于n。舉例:請(qǐng)輸入n的值: 24(5*5)*5)-5)/5=24#include#includeusing namespace std;int main() int n;cout請(qǐng)輸入整數(shù)nn;int i,j,k;int a1000;int c=5;char b1000;/定義一個(gè)字符型數(shù)組存儲(chǔ)運(yùn)算符號(hào); /5個(gè)5,之間有4個(gè)四則運(yùn)算連接,并且每一個(gè)有四種(加減乘除)的可能性,共有44種可能性,利用窮舉法,不斷嘗試for(i=0;i=256;i+)a0=i%4;a1=a0%4;a2=a1%4;a3=a2%4;/將加減乘除用數(shù)字0,1,2,3表示后,再轉(zhuǎn)換回加減乘除符號(hào) for(j=0;j4;j+) switch(aj)case 0:c=c+5;bj=+;break;case 1:c=c-5;bj=-;break;case 2:c=c*5;bj=*;break;case 3:c=c/5;bj=/;break; if(c=n)coutn= (5;for(k=0;k4;k+)coutbk200。 要求顯示全部小數(shù)位,一位都不能少。#include#includeusing namespace std;int main() int n;double u=1;double u1;double u2;int i=0;int max;int j=0;int k=0;double x=0;double tmp; int b;cout200)n;for (i=0;in;i+)u=u*(1.0/2.0);/計(jì)算結(jié)果的值/對(duì)結(jié)果進(jìn)行全部小數(shù)輸出判斷:/先找出小數(shù)點(diǎn)后的0個(gè)數(shù),并保存進(jìn)j;u1=u;while(x=0)u1=u1*10.0;x=int(u1);j=j+1;if(x!=0)break;/計(jì)算小數(shù)部分從j位之后開始的非零數(shù)個(gè)數(shù),并保存進(jìn)k;u2=u*(pow(10.0,(j);while(x!=0)u2=u2*10.0;tmp=u2-int(u2);k=k+1; if(tmp=0)/當(dāng)小數(shù)部分全部為0時(shí),輸出結(jié)果,小數(shù)后位數(shù)為j+k位;max=k-1+j; break;elsecontinue;b=max; cout.setf(ios:fixed); cout.precision(b); cout2(-n)= uendl; return 0;第3題3. P.112-3 打印n行的楊輝三角形。#include#includeusing namespace std;int main() int a500500;int i;int j;int n;cout請(qǐng)輸入行數(shù)nn;a00=1;if (n=1)couta001)couta00endl;for (i=1;in;i+)ai0=1;coutai0t;aii=1;for (j=1;ji;j+)aij=ai-1j-1+ai-1j; coutaijt;coutaiiendl; return 0;第4題4. P.112-5 矩陣用一維數(shù)組表示,判斷這個(gè)矩陣是否為對(duì)稱矩陣。#include#includeusing namespace std;int main() int a1000;int n;int i;int l;int yesorno=0;cout請(qǐng)輸入矩陣的行、列數(shù)n (行數(shù)=列數(shù))n;cout輸入矩陣各元素的值endl;for (i=0;iai;for(i=0;i=0;l-)/對(duì)上三角的元素if(ai*n+l!=an*(n-i)-l-1)/與下三角的元素比較是否一樣yesorno=yesorno+1;break;else yesorno=yesorno+0;if(yesorno=0)cout此矩陣是對(duì)稱矩陣endl;elsecout此矩陣不是對(duì)稱矩陣endl; return 0;第5題5. 編程先由鍵盤輸入一個(gè)浮點(diǎn)一維數(shù)組的值,然后完成以下功能: (1)查詢某個(gè)值是否存在,以及出現(xiàn)的次數(shù)和位置。 (2)計(jì)算其均值、中值、最大值和最小值。#include#includeusing namespace std;int main()int n;int i;float a1000;cout請(qǐng)輸入一位數(shù)組的維數(shù)n;cout請(qǐng)輸入此數(shù)組endl;for(i=0;iai;float x;int m=0;int B1000;int j=0;int jmax;/查詢數(shù)并顯示出現(xiàn)的位置cout請(qǐng)輸入要查詢的數(shù)x;for (i=0;in;i+)if (ai=x)m=m+1;Bj=i;j=j+1;jmax=j;elsem=m+0; if (m!=0)cout該數(shù)存在,數(shù)x在數(shù)組中出現(xiàn)了m次endl; cout分別出現(xiàn)在位置; for(j=0;jjmax;j+) coutBj+1t; coutendl;elsecout該數(shù)在數(shù)組中不存在endl;/計(jì)算均值float sum=0;float average;for(i=0;in;i+)sum=sum+ai;average=sum/n;cout該數(shù)組的均值為averageendl;/計(jì)算中值float C1000;int k,l;for(i=0;in;i+)Ci=fabs(ai-average);for(k=1;k=0;l-)if(tmpCl)Cl+1=Cl;elsebreak;Cl=tmp; if (C0+average)=ai|(average-C0)=ai)cout該數(shù)組的中值為aiendl;/求最大最小值for(i=0;i=0;j-)if(tmp3aj)aj+1=aj;aj=tmp3;cout該數(shù)組的最大值為an-1endl;cout最小值為a0=2)個(gè)連續(xù)正整數(shù)之和,舉例: 15=1+2+3+4+5 15=4+5+6 15=7+8 請(qǐng)編寫程序,根據(jù)輸入的任何一個(gè)正整數(shù),找出符合這種要求的所有連續(xù)正整數(shù)序列。#include#includeusing namespace std;int main() cout1)n;int i,j,k;int s=n;int m=

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論