版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、50道C/C+編程練習題1、輸入3個數(shù),求最大值int main() int a,b,c,m; cinabc; m=a; if(bm) m=b; if(cm) m=c; coutm; 2、編程序,求方程ax2+bx+c=0的根#include#includeusing namespace std;int main() double a,b,c,d,x1,x2; cinabc; if(a=0) if(b=0) couterrorn; else cout x=-c/bendl; else d=b*b-4*a*c; if(fabs(d)=1e-6) coutx1=x2=-b/(2*a)1e-6) x
2、1=(-b+sqrt(d)/(2*a); x2=(-b-sqrt(d)/(2*a); coutx1=x1,x2=x2endl; else cout a; if(a=90) cout=80) cout=70) cout=60) coutD; else coutabc; if(a+bc & b+ca & c+ab) cout可以構(gòu)成三角形; else couta; max=min=a; s=a; for(i=1;ia; if(amax) max=a; if(amin) min=a; s=s+a; coutmax,min,s/20.0n; cina; m=a; s=a; for(int i=1; i
3、a; s +=a; if(am) m=a; cout平均值:(double)s/n,最大值:mendl; 7、輸入若干個數(shù),輸入-999表示結(jié)束,求平均值及最大值。#include #include#include using namespace std; int main() int n, count, sum, max; double ave; count = 0; cin n; sum = 0; max = n; while( n != -999 ) sum = sum + n; if( n max ) max = n; count+; cin n; if( count != 0 ) a
4、ve=static_cast(sum) / count; coutsetiosflags(ios:fixed) setprecision(2); cout平均值為:ave 最大值為:maxendl; 8、求和 s=1*1 + 2*2 + 3*3 +.+ 100*100int main() int i,t; double s=0; for(i=1; i=100; i+) t=i*i; s=s+t; 9、印度國王的獎勵,求和 s=20 + 21 + 22 +.+ 263 int main() double t=1,s=0; for(int i=0; i=63; i+) s=s+t; t=2*t;
5、couts/1.4e8endl; 10、求和 s=1! + 2! + 3! +.+ 10! int main() int i; long t,s; t=1; s=0; for(i=1; i=1e-7) t=t/i; e=e+t; i=i+1; cout1e-8) pi=pi+t; i=i+2; k=-k; t=double(k)/i; cout4*pi; 13、求PI值,PI/2 = 1 + 1/3 + 1/3*2/5 + 1/3*2/5*3/7 + . #include #include int main() int i,j; double pi,t; i=0; j=1; t=1; pi=0
6、; while(t1e-18) pi=pi+t; i=i+1; j=j+2; t=t*i/j; coutsetprecision(17)2*pi; 14、輸入20個數(shù),統(tǒng)計其中正數(shù)、負數(shù)和零的個數(shù)。int main() int a,n=0,m=0,s=0; for(int i=1; i a; if(a0) n+; else if(a0) m+; else s+; coutn m a; while(a!=0) if(a%2 = 0) n += a; else m += a; cin a; coutn m;16、寫一函數(shù),計算x的y次方(假設(shè)x、y都為正整數(shù))。int pow(int x, int
7、 y) int s=1; for(int i=1; i=y; i+) s = s * x; return s;17、求水仙花數(shù)(一個三位數(shù),其各位數(shù)字立方和等于該數(shù)字本身)int main() int i,a,b,c; for(i=100;i=999;i+) a=i/100; b=i/10%10; c=i%10; if(i=a*a*a+b*b*b+c*c*c) coutiendl; int main() int i,a,b,c; for(a=1;a=9;a+) for(b=0;b=9;b+) for(c=0;c=9;c+) i=a*100+b*10+c; if(i=a*a*a+b*b*b+c*
8、c*c) coutiendl; 18、編寫一個函數(shù),確定一個整數(shù)是否為完全數(shù)(一個數(shù),等于他的因子之和)。用這個函數(shù)確定和打印1到1000之間的所有完全數(shù)。int perfect(int n) int i,s=1; for(i=2;i=n/2;i+) if(n%i=0) s=s+i; if(s=n) return 1; else return 0;int main() int n; for(n=2;n=1000;n+) if perfect(n) coutnendl; 19、寫一函數(shù),求斐波那契數(shù)列的第n項。int fib(int n) int i,f1,f2,f; if(n=1|n=2) r
9、eturn 1; f1=1; f2=1; for(i=3; i=n; i+) f=f1+f2; f1=f2; f2=f; return f;20、寫一個函數(shù),取一個整數(shù)值并返回將此整數(shù)的各數(shù)字反序的數(shù)值int reverse(int n) int s=0; while(n) s = s * 10 + n % 10; n /= 10; ; return s;21、寫一個函數(shù),將一個整數(shù)的各位數(shù)字的反序打印void show(int n) while(n) cout n % 10 ; n /= 10; ;void show(int n) if(n 10) cout n; else cout n %
10、 10 10) k *= 10; m /= 10; while(n) cout n / k =0; j-) coutaj ;void show(int n) if( n 10 ) cout n; else show( n / 10 ); cout n % 10; 23、求一個整數(shù)的各位數(shù)之和的函數(shù)int sum(int n) int s = 0; while(n) s += n % 10; n /= 10; ; return s;24、寫一函數(shù),判斷某個數(shù)是否素數(shù),以及求11000之內(nèi)的素數(shù)#include #include #include using namespace std; bool
11、 isprime(int n) float k=sqrt(float(n); for(int i=2; i=k; i+) if(n%i=0) return false; return true; int main() for(int n=2; n=1000; n+) if(isprime(n) coutsetw(5)n; 25、用篩法求11000之內(nèi)的素數(shù) #include #include #include #include using namespace std; int main() int i,k,a1001; for(i=2; i=1000; i+) ai=1; float s=sq
12、rt(float(1000); for(i=2; i=s; i+) if(ai=1) k=2*i; while(k=1000) ak=0; k=k+i; for(i=2; i=1000; i+) if(ai=1) coutsetw(5)n) m=m-n; else n=n-m; return m; 29、求兩個數(shù)的最小公倍數(shù)int lcm(int m, int n) int t,s; if(mn) t=m; m=n; n=t; s=m; while(s%n != 0) s=s+m; int lcm(int m, int n) return m*n/gcd(m,n); 30、百錢買百雞問題:雞翁
13、一值錢五,雞母一值錢三,雞雛三值錢一,百錢買百雞,問雞翁、母、雛各幾何?int main() int cock,hen,chick; for(cock=0; cock=20; cock+) for(hen=0; hen=33; hen+) chick=100-cock-hen; if(5*cock+3*hen+chick/3.0=100) coutsetw(4)cocksetw(4)hen setw(4)chick=a & si=z) count+; i+; coutcount=A & si=Z) si=si+32; coutsendl;33、打印楊輝三角形(帕斯卡三角形),打印10行。#in
14、clude#include using namespace std;int main() int a1010=0; for(int i=0; i10; i+) ai0=1; aii=1; for(int i=1; i10; i+) for(int j=1; ji; j+) aij = ai-1j-1 + ai-1j; for(int i=0; i10; i+) for(int j=0; j=i; j+) coutsetw(4)aij; coutendl; 34、打印一個九九乘法表#include#include using namespace std;int main() for(int j=
15、1; j=9; j+) for(int i=1; i=j; i+) couti*j=setw(2)i*j ; coutendl; 35、擲骰子10000次,統(tǒng)計得到各點數(shù)的次數(shù)。int main() int a7=0; srand(time(0); for(int i=1; i = 10000 ; +i) +a 1 + rand()%6 ; for(int i=1; i = 6 ; +i) couti: aiendl; 36、編寫函數(shù)distance,計算兩點(x1,y1)和(x2,y2)之間的距離。 double distance(double x1, double y1, double x
16、2, double y2) return sqrt( (x1-x2)*(x1-x2) + (y1-y2)*(y1-y2) );37、寫一個程序,進行體操評分,依次輸入10名評委所評分數(shù),去除一個最高分和一個最低分,再算出平均分作為選手的得分。int main() int i; float max,min,s,x; max = 0; min = 10; s=0; for(i=1;i x; s = s + x; if(xmax) max = x; s = s - min - max; cout s/8; 38、寫一函數(shù),將一數(shù)組中的元素反轉(zhuǎn)。void reverse(int a, int n) f
17、or(int i=0; in/2; i+) swap(ai,an-i-1);39、寫一函數(shù),在一個數(shù)組中找出最大元素的位置int SearchMax(int a, int n) int k = 0; for(int i=1; iak) k = i; return k;40、找出一個二維數(shù)組中的鞍點,即該元素在該行上最大,在該列上最小。41、寫一個字符串拷貝函數(shù) void strcpy(char *p, const char *q) while(*p+=*q+); char *strcpy(char *str1, const char *str2) char *p=str1; while(*st
18、r1+=*str2+); return p; 42、寫一個字符串比較函數(shù)int strcmp(char *str1, const char *str2) while(*str1 & * str2 & *str1=*str2) str1+; str2+; return *str1-*str2; int strcmp(char *str1, const char *str2) while(*str1=*str2) if(*str1=0) return 0; str1+; str2+; return *str1-*str2; 43、寫一個字符串連接函數(shù)char *strcat(char *str1,
19、 char *str2) char *p=str1; while(*str1!=0) str1+; while(*str1+=*str2+); return p; 44、寫一個求字符串長度函數(shù)int strlen(char *str) int n=0; while(*str!=0) n+; str+; return n; 45、寫一函數(shù),在一數(shù)組里查找某個值。int search(int a, int n, int key) for(int i=0; iyearmonthday; for(i=1; i2) s+; cout s; 48、編寫一個幫助小學生學習加法的程序,隨機產(chǎn)生2個數(shù),讓學生輸入答案。 #include#includeusing namespace std;int main() int x,y,z; srand( time(0) ); x = rand() % 1000; y = rand() % 1000; cout x + y z; while( z != 0 ) while( z != x+y ) cout 錯誤!請重做n ; coutx + yz; cout 正確!n ; x = rand()
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024辦公設(shè)備采購合同條款詳解
- 勞務(wù)合同模板
- 合作銷售化肥合同模板
- 公寓廠房出售合同范例
- 2024商標續(xù)展代理合同
- 2024年度跨平臺游戲開發(fā)與授權(quán)發(fā)行合同
- 農(nóng)村股權(quán)轉(zhuǎn)讓合同模板
- 沖壓設(shè)備租賃合同范例
- 代還債務(wù)合同范例
- 商場運營合同范例
- 【語文】寧波市小學四年級上冊期中試卷
- 《埃隆·馬斯克傳》導讀
- 環(huán)保設(shè)施安全風險評估報告
- MOOC創(chuàng)新創(chuàng)業(yè)與管理基礎(chǔ)(東南大學)
- 【基于活動理論的信息技術(shù)課程教學研究8300字(論文)】
- 年產(chǎn)15萬噸PET的生產(chǎn)工藝設(shè)計-畢業(yè)論文
- 車間生產(chǎn)計劃完成情況統(tǒng)計表
- 品管圈(QCC)降低ICU護士床頭交接班缺陷率課件
- 《左道:中國宗教文化中的神與魔》讀書筆記模板
- 施工現(xiàn)場臨時用電安全技術(shù)規(guī)范
- 同仁堂藥品目錄
評論
0/150
提交評論