ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:20.33KB ,
资源ID:126251      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-126251.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机程序设计语言C++实验报告.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

计算机程序设计语言C++实验报告.docx

1、计算机程序设计语言C+实验报告计算机程序设计语言C+实验报告班 级 工商管理 学 号 20124130 姓 名 沈栋 指导教师 何耀琴 经济管理学院二O一一年六月题目1:输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。#include using namespace std;int main() int n1,n2,n3,i; for (i=100;i=999;i+) n1=i/100; n2=(i%100)/10; n3=i%10; if (n1*n1*n1+n2*n2*n2+n3*n3*n3=i) coutiendl; return 0;题目2:输入一

2、行字符,分别统计出其中英语字母、空格、数字和其他字符的个数#include using namespace std;int main()int l,s,n,o;cout请输入一行字符=a&e=A&e=0&e=9)n+; else if(e= )s+; else o+; printf(l:%dn,l); printf(s:%dn,s); printf(n:%dn,n); printf(o:%dn,o);return 0;题目3:输入两个正整数m和n,求其最大公约数和最小公倍数#include using namespace std;int main() int m,n,a,b,X,Y; cout

3、mn; X=m*n; Y=1; for (a=m*n;a=m&a=n;a-) if(a%m=0&a%n=0&a=1;b-) if(m%b=0&n%b=0&bY) Y=b; cout最小公倍数Xendl; cout最大公约数Yendl; return 0;题目4:输出以“*”表示的正金字塔与倒金字塔模型#include using namespace std;void print(int n) int i,j; for(i=1;i=i;j-)cout ; for(j=1;j=2*i-1;j+)cout*; coutendl; void printstar(int n) int i,j; for(

4、i=1;i=n;i+) for(j=1;j=i-1;j+)cout=i;j-)cout*; cout*; coutendl; int main() int i,m; for(i=1;im; print(m); printstar(m); return 0;题目5:输入十个整数,要求按倒序排列输出#include using namespace std;int main() void daoxu(int *); int a10; cout输入10个数; int i,*p=a; for(i=0;i*(p+i); coutendl; daoxu(p); for(p=a;p(a+10);p+)cout

5、*p ; coutendl; return 0;void daoxu(int *p) void swap(int*,int*); int i; for(i=0;i5;i+)swap(p+i),(p+9-i);void swap(int *p1,int *p2) int temp; temp=*p1; *p1=*p2; *p2=temp;题目6:输入5位学生的5门课成绩,要求计算这5位学生的各自5门课平均成绩及所有5位学生的平均成绩,并输出#include using namespace std;int main() struct Student char name10; int score5;

6、 float average; ; int i,sum; Student stu; coutstu.name; cout输入五门课的成绩:; for(i=0;istu.scorei; sum=0; for(i=0;i5;i+) sum+=stu.scorei; stu.average=(float)sum/5; coutstu.name的平均成绩为stu.averageendl; int a1=stu.average; coutstu.name; cout输入五门课的成绩:; for(i=0;istu.scorei; sum=0; for(i=0;i5;i+) sum+=stu.scorei;

7、 stu.average=(float)sum/5; coutstu.name的平均成绩为stu.averageendl; int a2=stu.average; coutstu.name; cout输入五门课的成绩:; for(i=0;istu.scorei; sum=0; for(i=0;i5;i+) sum+=stu.scorei; stu.average=(float)sum/5; coutstu.name的平均成绩为stu.averageendl; int a3=stu.average;coutstu.name; cout输入五门课的成绩:; for(i=0;istu.scorei;

8、 sum=0; for(i=0;i5;i+) sum+=stu.scorei; stu.average=(float)sum/5; coutstu.name的平均成绩为stu.averageendl; int a4=stu.average; coutstu.name; cout输入五门课的成绩:; for(i=0;istu.scorei; sum=0; for(i=0;i5;i+) sum+=stu.scorei; stu.average=(float)sum/5; coutstu.name的平均成绩为stu.averageendl; int a5=stu.average; cout所有人平均

9、成绩:(a1+a2+a3+a4+a5)/5endl; return 0;题目7:输入5位学生的5门课成绩,要求输出按由高到低排列的这5位学生的各自5门课平均成绩及所有学生的5门课平均成绩。#include#includeusing namespace std;struct Student string name; float score5; float average;int main() float total_average,temp; string c; Student stu5; int i,j; stu0.name=stone; stu1.name=eva; stu2.name=de

10、mon; stu3.name=kevin; stu4.name=lucy; for(i=0;i5;i+) cout输入学生 stui.name 的五门课程成绩:; for(j=0;jstui.scorej; coutendl; for(i=0;i5;i+) stui.average=(stui.score0+stui.score1+stui.score2+stui.score3+stui.score4)/5; for(j=0;j4;j+) for(i=0;i4-j;i+) if(stui.averagestui+1.average) temp=stui.average;stui.average

11、=stui+1.average;stui+1.average=temp; c=stui.name;stui.name=stui+1.name;stui+1.name=c; total_average=(stu0.average+stu1.average+stu2.average+stu3.average+stu4.average)/5; cout排序:endl; for(i=0;i5;i+) coutstui.name:stui.averageendl; cout总平均成绩为:total_averageendl; return 0;题目8:给小学生出100道199范围内的加减乘除题,如果成绩小

12、于90分则再做100题。#include #include #include using namespace std;int main() int i,x1,x2,x,y,n1,n2; srand(time(NULL); cout请输入下面各题的结果:endl;lable:n1=n2=0; for(i=1;i=100;i+) x1=1+rand()%99; x2=1+rand()%99; x=rand()%4; switch(x) case 0:coutx1+x2y; if(y=x1+x2) cout你答对了,继续努力!endl;n1+; else cout你答错了,认真一点!x2)coutx

13、1-x2=?; else coutx2-x1y; if(y=int(fabs(x1-x2) cout你答对了,继续努力!endl;n1+; else cout你答错了,认真一点!endl;n2+; break; case 2:coutx1*x2y; if(y=x1*x2) cout你答对了,继续努力!endl;n1+; else cout你答错了,认真一点!endl;n2+; break; case 3:coutx1/x2y; if(y=x1/x2) cout你答对了,继续努力!endl;n1+; else cout你答错了,认真一点!endl;n2+; break; if(n190) cou

14、t你成绩太差了,还得罚做100题。endl;n1=n2=0;n1=n2=0;n1=n2=0;goto lable; return 0;题目9:输入积分区域的端点值,输出f1,f2,f3,f4,f5的定积分的值#include using namespace std;double integral(double a,double b,int n,double(*fun)(double x);double f1(double x)double fun;fun=1+x;return fun;double f2(double x)double fun;fun=2*x+3;return fun;doub

15、le f3(double x)double fun;fun=(1+x)*(1+x);return fun;double f4(double x)double fun;fun=x*x*x;return fun;double f5(double x)double fun;fun=x*x*x+1;return fun; void main()double s1,s2,s3,s4,s5; double a,b; int n; coutabn;s1= integral(a,b,n,f1);s2= integral(a,b,n,f2); s3=integral(a,b,n,f3);s4=integral(

16、a,b,n,f4);s5=integral(a,b,n,f5);coutf1的定积分的值s1endl;coutf2的定积分的值s2endl;coutf3的定积分的值s3endl;coutf4的定积分的值s4endl;coutf5的定积分的值s5endl;double integral(double a,double b,int n,double(*fun)(double x) int i; double h,x,f1,f2,s; h=(b-a)/n;f1=(*fun)(a);x=a;s=0.0; for(i=1;i=n;i+) x=x+h;f2=(*fun)(x); s=s+(f1+f2)/2

17、*h; f1=f2; return s;题目10:用自己输入的种子产生100000个随机数并求最大值和最小值;#include #include using namespace std;void main() unsigned seed; long int s(-1),n(50000); for(int i=1;is)s=temp; if(tempn)n=temp; couts=sendl;coutn=nendl;题目11:模拟100次掷钱币的过程,输出“f”表示此次钱币正面朝上,输出“b”表示此次钱币反面朝上,并统计这100次中,共有多少次正面朝上,多少次反面朝上。#include #inc

18、lude using namespace std;void main() int i,fac(0),back(0),temp; srand (time(NULL);for(i=0;i100;i+)temp=rand();if(temp%2=1)coutf ;fac+;else coutb ;back+;coutendl正面的次数=facendl;coutendl反面的次数=backendl;题目12:编写一个完成n个数排序的函数sort,凡是需要交换两个元素值都调用swap来完成。分别用指针和引用两种方法做;#include using namespace std;int main()void

19、 sort(int *p); int a10; cout输入10个不同的数:endl; int i,*p=a; for(i=0;i*(p+i); coutendl; sort(p); cout输出新顺序:endl; for (p=a;pa+10;p+) cout*p ; coutendl; return 0;void swap(int *p1,int *p2)int temp;temp=*p1;*p1=*p2;*p2=temp;void sort(int *p)void swap(int *,int *);int i,j,s;for (i=0;i9;i+)s=i;for (j=i+1;j10;

20、j+)if(*(p+j)*(p+s)s=j;swap(p+s),(p+i);题目13:写一个求n!的函数,并通过调用函数求sum=a!+b!+c!。#include using namespace std;int jc(int n);int main() int sum,a,b,c; coutabc; sum=jc(a)+jc(b)+jc(c); coutsum=a!+b!+c!=sumendl;int jc(int n)int s=1,i=1;for(i=1;i=n;i+)s=s*i;return s;题目14:写一个判断素数的函数,并通过调用函数判断2000年至3000年间有哪些是素数年号

21、。#include using namespace std;void fun(int n) int i; for(i=2;i=n;i+) if(n%i=0) break; if(i=n) coutnendl;void main() int j; for(j=2000;j=3000;j+) fun(j);题目15:将汉诺塔程序里三根针用字符a,b,c表示,并统计搬动盘子的次数#include using namespace std;int s=0;int a,b,c;void movedisk(char takeoff,char puton)couttakeoffputon1) movetowe

22、r(n-1,a,c,b); movedisk(a,b); movetower(n-1,c,b,a); else movedisk(a,b); s=s+1;void main()int m;coutm;movetower(m,a,b,c);couts=sendl;题目16:用牛顿迭代法求方程的根#include #include #include using namespace std;double f1(double x) double s; s=x*x*x+2*x*x+3*x+4; return s;double f2(double x) double t; t=3*x*x+4*x+3; r

23、eturn t;double root(double x0) double x,y1,y2; do y1=f1(x); y2=f2(x); x=x0-y1/y2; x0=x; while (fabs(y1)0.00001); return x;int main() double x,x0; cinx0; x=root(x0); coutxendl; return 0;题目17:写一函数验证哥德巴赫猜想#include #include using namespace std;int main() void godbaha(int); int n; coutn; godbaha(n); return 0;void godbaha(int n)int prime(int);int a,b;for (a=3;a=n/2;a=a+2) if(prime(a) b=n-a; if (prime(b) coutn=a+bendl;int prime(int

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2