


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、實驗1C+基礎(chǔ)6編寫程序,輸入某大寫字母的ASCII碼值,輸出該字母的對應(yīng)小寫字母。#include<iostream>usingnamespacestd;intmain()inti;cin>>i;if(i>=65&&1<=90)cout<<char(i-'A'+'a')<<endl;elsecout<<"輸入有誤"<<endl;return0;實驗2三、實驗思考1. 輸入直角三角形的兩條直角邊長,調(diào)用平方根庫函數(shù)sqrt來求斜邊的長度#inc
2、lude<iostream>#include<cmath>usingnamespacestd;intmain()floata,b,c;cout<<"請輸入直角三角形的兩條邊長:"cin>>a>>b;c=sqrt(a*a+b*b);cout<<"直角三角形的斜邊="<<c<<endl;return0;2從鍵盤輸入一個字符,如果輸入的是英文大寫字母,則將它轉(zhuǎn)換成小寫字母后輸出,否則輸出原來輸入的字符。#include<iostream>usingnam
3、espacestd;intmain()charc;cout<<"請輸入一個字符:"cin>>c;if(c>='A'&&c<='Z')c+='a'-'A'cout<<c<<endl;return0;3. 輸入一個學生的成績,如高于60分,則輸出"pass”否則,輸出"failed”#include<iostream>usingnamespacestd;intmain()floatgrade;cout<
4、<"請輸入成績:"cin>>grade;if(grade>=60)cout<<"pass"<<endl;elsecout<<"failed"return0;4. 計算分段函數(shù)#include<iostream>#include<cmath>usingnamespacestd;intmain()doublex,y;cout<<"請輸入一個數(shù)x:"cin>>x;if(!x)y=cos(x)-pow(x,2)+3*
5、x;elsey=sin(x)+sqrt(pow(x,2)+1)+3*x;cout<<"y="<<y<<endl;return0;5. 從鍵盤上輸入17之間的一個數(shù)字,輸出其對應(yīng)星期幾的英文表示。#include<iostream>usingnamespacestd;intmain()charc;cout<<"Enteracharacterofnumbersbetween1and7:"cin>>c;switch(c)case'1':cout<<"M
6、onday"break;case'2':cout<<"Tuesdag"break;case'3':cout<<"Wenesday"break;case'4':cout<<"Thursday"break;case'5':cout<<"Friday"break;case'6':cout<<"Saturday"break;case'7':
7、cout<<"Sunday"break;default:cout<<"wrongnumber"cout<<endl;return0;6. 設(shè)計一個簡單的計算器程序,能夠進行加、減、乘、除簡單運算并顯示結(jié)果。#include<iostream>usingnamespacestd;intmain()cout<<"輸入簡單的算術(shù)表達式:(數(shù)操作符數(shù))"intleftOperand,rightOperand;charOperator;cin>>leftOperand>
8、;>Operator>>rightOperand;intresult;switch(Operator)case'+':result=leftOperand+rightOperand;break;case'-':result=leftOperand-rightOperand;break;case'*':result=leftOperand*rightOperand;break;case'/':if(rightOperand!=0)result=leftOperand/rightOperand;elsecout<
9、;<"除數(shù)為0,除法不能進行"<<endl;return0;break;default:cout<<Operator<<"是本程序不支持的操作。"<<endl;return0;cout<<leftOperand<<Operator<<rightOperand<<'='<<result<<endl;return0;實驗3三、思考題參考程序1.編程計算表達式nki的值。#inelude<iostream>u
10、singnamespacestd;intmain()intn,k=1,sum=0,mean;cout<<"請輸入n的值:";cin»n;while(k<=n)sum+=k*k;k+;if(n>0)mean=sum/n;elsemean=O;cout<<"1n個整數(shù)平方和的均值="<<mean<<endl;return0;2. 輸入兩個正整數(shù),判別它們是否互為互質(zhì)數(shù)。所謂互質(zhì)數(shù),就是最大公約數(shù)是1。#include<iostream>usingnamespacestd;int
11、main()intm,n,r;cout<<"請輸入兩個正整數(shù):"cin»m»n;cout<<m<<'”廿”<<n;if(m<n)r=m;m=n;n=r;while(r=m%n)m=n;n=r;if(n=1)cout<<"是互質(zhì)數(shù)"<<endl;elsecout<<"不是互質(zhì)數(shù)"<<endl;return0;3. 編寫程序,輸出從公元2000年至3000年間所有閏年的年號。#include<iostre
12、am>usingnamespacestd;intmain()intyear;cout<<"公元2000年至3000年間閏年的年號:n"for(year=2000;year<=3000;year+)if(year%4=0&&year%100!=0)|(year%400=0)cout<<year<<'t'cout<<endl;return0;4編寫程序模擬猴子吃桃子問題:猴子第1天摘下若干桃子,當即吃了一半,還不過癮,又多吃了一個。第2天將剩下的桃子又吃了一半,又多吃一個。以后每天都吃了
13、前一天剩下的一半零1個。到了第10天,只剩下了一個桃子。請問猴子第一天共摘了多少個桃子?方法1:#include<iostream>usingnamespacestd;intmain()intday,qian,hou=1;for(day=9;day>=1;day-)qian=(hou+1)*2;hou=qian;cout<<qian<<endl;return0;運行結(jié)果:1534方法2:#include<iostream>usingnamespacestd;intmain()intday,number=1;for(day=9;day>
14、=1;day-)number=(number+1)*2;cout<<number<<endl;return0;方法3:#include<iostream>usingnamespacestd;intpeach(int);intmain()cout<<"第1天共摘了"<<peach<<"個"<<endl;return0;intpeach(intday)intnumber;if(day=10)number=1;elsenumber=2*(peach(day+1)+1);retu
15、rnnumber;5.計算s=1+(1+2)+(1+2+3)+(1+2+3+4)+(1+2+3+n)的值。方法1:#include<iostream>usingnamespacestd;intmain()inti,j,n;longintsum,total(0);cout<<"inputn:"cin>>n;for(i=1;i<=n;i+)sum=0;for(j=1;j<=i;j+)sum+=j;total+=sum;cout<<"s="<<total<<endl;retur
16、n0;#include<iostream>usingnamespacestd;intmain()inti,n;longintsum(0),total(0);cout<<"inputn:"cin>>n;for(i=1;i<=n;i+)sum+=i;total+=sum;cout<<"s="<<total<<endl;return0;6馬克思曾經(jīng)做過這樣一道趣味數(shù)學題:有30個人在一家小飯館用餐,其中有男人、女人和小孩。每個男人花了3先令,每個女人花了2先令,每個小孩花了1先令,一
17、共花了50先令。請問男人、女人以及小孩各有幾個人?#include<iostream>usingnamespacestd;intmain()intx,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)cout<<"Menare"<<x<<",womenare"<<y<<",childrenare"<<z<<"."<<end
18、l;return0;實驗4常用程序設(shè)計算法三、實驗思考1讀入一個整數(shù)N,若N為非負數(shù),則計算N到2XN之間的整數(shù)和;若N為負數(shù),則求2XN到N之間的整數(shù)和。分別利用for和while寫出兩個程序。#include<iostream>usingnamespacestd;intmain()intN;cin>>N;inti=N;longsum=0;if(N>=0)for(;i<=2*N;i+)sum+=i;elsefor(;i>=2*N;i-)sum+=i;cout<<sum<<endl;return0;#include<ios
19、tream>usingnamespacestd;intmain()intN;cin»N;inti=N;longsum=0;if(N>=0)while(i<=2*N)sum+=i;i+;elsewhile(i>=2*N)sum+=i;i-;cout<<sum<<endl;return0;n值。n值。1112.設(shè)s1-,求與8最接近的s的值及與之對應(yīng)的23n#include<iostream>usingnamespacestd;intmain()floats=1.0;intn=1;do+n;s+=1.0/n;while(s<
20、;=8);if(s-8)>(8-(s-1.0/n)cout<<"s="<<s-1.0/n<<''<<"n="<<n-1<<endl;elsecout<<"s="<<s<<''<<"n="<<n<<endl;return0;3. 已知A>B>C,且A+B+C<100,求滿足丄丄的共有多少組。A2B2C2#inelude&
21、lt;iostream>usingnamespacestd;intmain()intA,B,C;intcount=0;for(C=0;C!=33;+C)for(B=100;B>C;-B)for(A=100;A>B;-A)if(A+B+C<100)&&(A*A*B*B)=(A*A+B*B)*C*C)cout<<A<<''<<B<<''<<C<<endl;+count;cout<<"countis:"<<coun
22、t<<endl;return0;4. 一司機出車禍后駕車逃離現(xiàn)場,第一位目擊者記得車牌號前兩位數(shù)字相同,且后兩位數(shù)字也相同;第二位目擊者是一位數(shù)學家,他看出車牌號是四位完全平方數(shù)。試推算肇事車的車牌號。#include<iostream>usingnamespacestd;intmain()intn,i;for(i=32;i<100;i+)n=i*i;if(n%10=n%100/10&&n/1000=n/100%10)cout<<n<<endl;return0;5編程驗證“四方定理”:所有自然數(shù)至多只要用4個數(shù)的平方和就可以
23、表示。#include<iostream>usingnamespacestd;intmain()intnumber,i,j,k,l;cout<<"Pleaseenteranumber:"cin>>number;for(i=1;i<number/2;i+)for(j=0;j<=i;j+)for(k=0;k<=j;k+)for(l=0;l<=k;l+)if(number=i*i+j*j+k*k+l*l)cout<<number<<"="<<i<<&qu
24、ot;*"<<i<<"+"<<j<<"*"<<j<<"+"<<k<<"*"<<k<<"+"<<l<<"*"<<l<<endl;exit(0);return0;6編程驗證“角谷猜想”:任給一個自然數(shù),若為偶數(shù)則除以2,若為奇數(shù)則乘3加1,得到一個新的自然數(shù),然后按同樣的方法繼續(xù)運算,若干次運算后得到的結(jié)
25、果必然為1。#include<iostream>usingnamespacestd;intmain()intn,flag;flag=1;cout<<"pleaseinputn:"<<endl;cin>>n;while(flag)if(n%2=0)n=n/2;elsen=n*3+1;if(n=1)flag=0;cout<<"success!"<<endl;return0;實驗5函數(shù)和編譯預(yù)處理三、實驗思考1. 參考程序如下:#include<iostream>usingna
26、mespacestd;longintFibonacci(intn);voidmain()inti;longintt,t1;cout<<"pleaseinputt:"<<endl;cin>>t;for(i=2;i+)t1=Fibonacci(i);if(t1>t)cout<<"minFibonacci="<<t1<<endl;break;longintFibonacci(intn)if(n=0)return1;elseif(n=1)return1;elsereturnFibona
27、cci(n-1)+Fibonacci(n-2);2. 參考程序如下:#include<iostream>usingnamespacestd;intnum_n(intn,inta)/由n個a組成的多位數(shù)的計算if(n=1)returna;elsereturnnum_n(n-1,a)*10+a;voidmain()inti,n;longintsum=0;cout<<"pleaseinputn:"<<endl;cin>>n;for(i=1;i<=n;i+)cout<<num_n(i,2)<<endl;s
28、um+=num_n(i,2);cout<<"n="<<n<<":sum="<<sum<<endl;3. 參考程序如下:#include<iostream>usingnamespacestd;intisprime(intn)/判斷n是否為素數(shù)的函數(shù)inti;for(i=2;i<n-1;i+)if(n%i=0)return0;/非素數(shù),函數(shù)值返回0return1;/素數(shù),函數(shù)值返回1voidmain()inti,min_prime,max_prime;for(i=1000;i<
29、;=2000;i+)if(isprime(i)=1)cout<<"最小素數(shù)="<<i<<endl;break;for(i=2000;i>=1000;i-)if(isprime(i)=1)cout<<"最大素數(shù)="<<i<<endl;break;4. 參考程序如下:#include<iostream>usingnamespacestd;intsum(intn)statics=0;s=s+n;returns;voidmain()inti,n,s;cout<<
30、"情指定n:"cin>>n;for(i=1;i<=n;i+)s=sum(i);cout<<"1n之和="<<s<<endl;5. 參考程序如下:#include<iostream>usingnamespacestd;intis_h(intn)/判斷參數(shù)n是否為回文n的倒序數(shù)inti,m,fn;/i用來記錄n的某一位數(shù)字,m初值為n,fn用于記錄m=n;fn=0;while(m!=0)i=(m%10);fn=(fn*10+i);m=m/10;if(fn=n)return1;/是回文數(shù)返回1e
31、lsereturn0;/不是回文數(shù)返回0voidmain()inti;intt;cin>>t;for(i=1;i<=t;i+)if(is_h(i)=1)cout<<"回文數(shù):"<<i<<endl;6. 參考程序如下:#include<iostream>usingnamespacestd;#defineX(a+b)/2#defineAREAX*hvoidmain()floata,b,h,s;cout<<"請分別輸入a,b,h的值,用空格分隔!"<<endl;cin&g
32、t;>a>>b>>h;s=AREA;cout<<AREA<<endl;實驗六數(shù)組三、實驗思考題參考源代碼思考題1.shi_6_3_1.cpp#include<iostream.h>#defineN5intlookup(int,int,int);/函數(shù)說明voidmain()inti,aN,index,yLooked;cout<<"請輸入N(=5)個整數(shù):"<<endl;for(i=0;i<N;i+)cin>>ai;cout<<"請輸入您要找的整數(shù)
33、:"<<endl;cin>>yLooked;index=lookup(a,N,yLooked);/函數(shù)調(diào)用if(index!=-1)cout<<"您要找的數(shù)下標為:"<<index<<endl;elsecout<<"沒有找到"<<yLooked<<endl;cout<<"n謝謝使用本程序,再見!"<<endl;cin.get();cin.get();intlookup(intx,intn,inty)/函數(shù)定
34、義/找到了則不必再往后找intflag=-1;inti;for(i=0;i<n;i+)if(xi=y)flag=i;break;returnflag;/首先假設(shè)找不到思考題2.shi_6_3_2.cpp#include<iostream.h>#defineN5intmax(int,int);/函數(shù)說明voidmain()inti,aN,xMax;cout<<"請輸入N(=5)個整數(shù):"<<endl;for(i=0;i<N;i+)cin>>ai;xMax=max(a,N);cout<<"數(shù)組中最
35、大的的整數(shù):"<<xMax<<endl;cout<<"n謝謝使用本程序,再見!"<<endl;cin.get();cin.get();intmax(intx,intn)inti,r=x0;/首先假設(shè)x0最大,且存于r中for(i=1;i<n;i+)/也可寫成for(i=0;i<n;i+)if(xi>r)r=xi;returnr;/發(fā)現(xiàn)了更大的則修改rr中存有最大元素的值思考題3.shi_6_3_3.cpp#include<iostream.h>#defineN5voidinvert(in
36、t,int);/函數(shù)說明voidmain()inti,aN;cout<<"請輸入N(=5)個整數(shù):"<<endl;for(i=0;i<N;i+)cin>>ai;invert(a,N);cout<<"n這些數(shù)逆序輸出如下:n"<<endl;for(i=0;i<N;i+)cout<<ai<<"Jcout<<"n謝謝使用本程序,再見!"<<endl;cin.get();cin.get();voidinvert(i
37、ntx,intn)inti=0,j=n-1,t;/while(i<j)t=xi;xi=xj;xj=t;i+;j-;return;思考題#include<iostream.h>#defineM3#defineN4voidmain()intnumMN;#defineM3#defineN4voidmain()intnumMN;M行/N列=1,6,9,3,5,4,2,7,8;inti,j,it,itt,t,jt,exist=0;cout<<"請輸入3行4列的二維數(shù)組:"<<endl;for(i=0;i<M;+i)for(j=0;j&l
38、t;N;+j)cin»numij;for(i=0;i<M;+i)t=numi0;jt=0;for(j=0;j<N;+j)if(t<numij)t=numij,jt=j;itt=i;for(it=0;it<M;+it)if(t>numitjt)t=numitjt,itt=it;if(i=itt)exist=1;break;if(exist)cout<<"鞍點為"<<t<<endl;elsecout<<"無鞍點"<<endl;cout<<"
39、;n謝謝使用本程序,再見!"<<endl;cin.get();cin.get();思考題改正:題目中添加3字N個數(shù)在數(shù)組5對數(shù)組A中的N個整數(shù)從小到大進行連續(xù)編號,要求不能改變這A中的存放順序,且相同的數(shù)編號也相同。例如,若數(shù)組A中數(shù)為(5,3,4,7,3,5,6),則輸出為(3,1,2,5,1,3,4)。分析:采用3個數(shù)組,它們元素值含義如下:#defineN7#include<iostream>#include<iomanip>usingnamespacestd;intmain()inti,j,t,k,ik;intaN,bN,cN;cout&l
40、t;<"pleaseinputNnumbers:"<<endl;for(i=0;i<N;i+)cin>>ai;/從鍵盤上輸入N個元素,a0保存第一個數(shù)據(jù)cout<<"a數(shù)組各元素的值:"<<'n'for(i=0;i<N;i+)cout<<setw(6)<<ai;cout<<endl;for(i=0;i<N;i+)bi=i;for(i=0;i<N-1;i+)府卡序,使ab0<ab1w、wabN-1k=i;/每輪選擇過程開始時假定abi最小,將下標i保存在k中for(j=i+1;j<N;j+)/abk與abi后面的元素逐個比較if(abk>abj)k=j;若發(fā)現(xiàn)某個abj小于abk,則將k修改為jif(k!=i)t=bi;bi=bk;bk=t;cout<<"b數(shù)組各元素的值:"<<'n'for(i=0;i<N;i+)cout<<
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 加油站服務(wù)合同范例
- 倉儲物流物料訂購合同范例
- 三棟鋪面出租合同范本
- 農(nóng)資商品購銷合同范本
- 環(huán)保沙發(fā)采購合同范本
- 合同范例范例租車
- 企業(yè)購買葡萄合同范本
- 口腔護士用工合同范例
- 卡制作合同范例
- 合同范本自助
- 2025年無線電管理局招聘(10人)高頻重點提升(共500題)附帶答案詳解
- 湖南省長沙市2024年七年級上學期期末數(shù)學試卷【附答案】
- 護苗行動課件
- 《人工授精雞》課件
- 內(nèi)蒙古自治區(qū)商品房買賣合同(現(xiàn)售)示范文本
- 《青少年抑郁癥的人際心理治療》黃滿麗
- 2022部編版道德與法治四年級下冊《我們的好朋友》教學設(shè)計
- 稅務(wù)會計崗位招聘面試題與參考回答2024年
- 心肺復蘇術(shù)課件2024新版
- 道法滋養(yǎng)心靈+課件- 2024-2025學年統(tǒng)編版道德與法治七年級上冊
- 醫(yī)院培訓課件:《嚴重創(chuàng)傷快速轉(zhuǎn)診機制》
評論
0/150
提交評論