最新50道C++编程练习题及解答.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《最新50道C++编程练习题及解答.doc》由会员分享,可在线阅读,更多相关《最新50道C++编程练习题及解答.doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品资料50道C+编程练习题及解答.50道C/C+编程练习题1、输入3个数,求最大值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=
2、x2=-b/(2*a)1e-6) x1=(-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可以构成三角形; 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
3、=a; for(int i=1; ia; s +=a; if(am) m=a; cout平均值:(double)s/n,最大值:mendl; 7、输入若干个数,输入-999表示结束,求平均值及最大值。#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;
4、if( count != 0 ) ave=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;
5、i+) s=s+t; t=2*t; 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
6、=0; j=1; t=1; pi=0; while(t1e-18) pi=pi+t; i=i+1; j=j+2; t=t*i/j; coutsetprecision(17)2*pi; 14、输入20个数,统计其中正数、负数和零的个数。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、写一函数,计算x的y次方(假设x、y都为正整数)。
7、int pow(int x, int y) int s=1; for(int i=1; i=y; i+) s = s * x; return s;17、求水仙花数(一个三位数,其各位数字立方和等于该数字本身)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; i
8、f(i=a*a*a+b*b*b+c*c*c) coutiendl; 18、编写一个函数,确定一个整数是否为完全数(一个数,等于他的因子之和)。用这个函数确定和打印1到1000之间的所有完全数。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、写一函数,求斐波那契数列的第n项。int fib(int n) int i,f1,f
9、2,f; if(n=1|n=2) return 1; f1=1; f2=1; for(i=3; i=n; i+) f=f1+f2; f1=f2; f2=f; return f;20、写一个函数,取一个整数值并返回将此整数的各数字反序的数值int reverse(int n) int s=0; while(n) s = s * 10 + n % 10; n /= 10; ; return s;21、写一个函数,将一个整数的各位数字的反序打印void show(int n) while(n) cout n % 10 ; n /= 10; ;void show(int n) if(n 10) cou
10、t n; else cout n % 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、求一个整数的各位数之和的函数int sum(int n) int s = 0; while(n) s += n % 10; n /= 10; ; return s;24、写一函数,判断某个数是否素数,以及求11000之内的素数#include #include #include using n
11、amespace std; bool 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之内的素数 #include #include #include #include using namespace std; int main() int i,k,a1001; for(i=2; i=1000; i+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 50 C+ 编程 练习题 解答
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内