版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验1C+基础6编写程序,输入某大写字母的ASCII码值,输出该字母的对应小写字母。#include<iostream>usingnamespacestd;intmain()inti;cin>>i;if(i>=65&&1<=90)cout<<char(i-'A'+'a')<<endl;elsecout<<"输入有误"<<endl;return0;实验2三、实验思考1. 输入直角三角形的两条直角边长,调用平方根库函数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从键盘输入一个字符,如果输入的是英文大写字母,则将它转换成小写字母后输出,否则输出原来输入的字符。#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. 计算分段函数#include<iostream>#include<cmath>usingnamespacestd;intmain()doublex,y;cout<<"请输入一个数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之间的一个数字,输出其对应星期几的英文表示。#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. 设计一个简单的计算器程序,能够进行加、减、乘、除简单运算并显示结果。#include<iostream>usingnamespacestd;intmain()cout<<"输入简单的算术表达式:(数操作符数)"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、;<"除数为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个整数平方和的均值="<<mean<<endl;return0;2. 输入两个正整数,判别它们是否互为互质数。所谓互质数,就是最大公约数是1。#include<iostream>usingnamespacestd;int
11、main()intm,n,r;cout<<"请输入两个正整数:"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<<"是互质数"<<endl;elsecout<<"不是互质数"<<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;运行结果: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马克思曾经做过这样一道趣味数学题:有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常用程序设计算法三、实验思考1读入一个整数N,若N为非负数,则计算N到2XN之间的整数和;若N为负数,则求2XN到N之间的整数和。分别利用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.设s1-,求与8最接近的s的值及与之对应的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. 一司机出车祸后驾车逃离现场,第一位目击者记得车牌号前两位数字相同,且后两位数字也相同;第二位目击者是一位数学家,他看出车牌号是四位完全平方数。试推算肇事车的车牌号。#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编程验证“四方定理”:所有自然数至多只要用4个数的平方和就可以
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编程验证“角谷猜想”:任给一个自然数,若为偶数则除以2,若为奇数则乘3加1,得到一个新的自然数,然后按同样的方法继续运算,若干次运算后得到的结
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函数和编译预处理三、实验思考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组成的多位数的计算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是否为素数的函数inti;for(i=2;i<n-1;i+)if(n%i=0)return0;/非素数,函数值返回0return1;/素数,函数值返回1voidmain()inti,min_prime,max_prime;for(i=1000;i<
29、;=2000;i+)if(isprime(i)=1)cout<<"最小素数="<<i<<endl;break;for(i=2000;i>=1000;i-)if(isprime(i)=1)cout<<"最大素数="<<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)/判断参数n是否为回文n的倒序数inti,m,fn;/i用来记录n的某一位数字,m初值为n,fn用于记录m=n;fn=0;while(m!=0)i=(m%10);fn=(fn*10+i);m=m/10;if(fn=n)return1;/是回文数返回1e
31、lsereturn0;/不是回文数返回0voidmain()inti;intt;cin>>t;for(i=1;i<=t;i+)if(is_h(i)=1)cout<<"回文数:"<<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;实验六数组三、实验思考题参考源代码思考题1.shi_6_3_1.cpp#include<iostream.h>#defineN5intlookup(int,int,int);/函数说明voidmain()inti,aN,index,yLooked;cout<<"请输入N(=5)个整数:"<<endl;for(i=0;i<N;i+)cin>>ai;cout<<"请输入您要找的整数
33、:"<<endl;cin>>yLooked;index=lookup(a,N,yLooked);/函数调用if(index!=-1)cout<<"您要找的数下标为:"<<index<<endl;elsecout<<"没有找到"<<yLooked<<endl;cout<<"n谢谢使用本程序,再见!"<<endl;cin.get();cin.get();intlookup(intx,intn,inty)/函数定
34、义/找到了则不必再往后找intflag=-1;inti;for(i=0;i<n;i+)if(xi=y)flag=i;break;returnflag;/首先假设找不到思考题2.shi_6_3_2.cpp#include<iostream.h>#defineN5intmax(int,int);/函数说明voidmain()inti,aN,xMax;cout<<"请输入N(=5)个整数:"<<endl;for(i=0;i<N;i+)cin>>ai;xMax=max(a,N);cout<<"数组中最
35、大的的整数:"<<xMax<<endl;cout<<"n谢谢使用本程序,再见!"<<endl;cin.get();cin.get();intmax(intx,intn)inti,r=x0;/首先假设x0最大,且存于r中for(i=1;i<n;i+)/也可写成for(i=0;i<n;i+)if(xi>r)r=xi;returnr;/发现了更大的则修改rr中存有最大元素的值思考题3.shi_6_3_3.cpp#include<iostream.h>#defineN5voidinvert(in
36、t,int);/函数说明voidmain()inti,aN;cout<<"请输入N(=5)个整数:"<<endl;for(i=0;i<N;i+)cin>>ai;invert(a,N);cout<<"n这些数逆序输出如下: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列的二维数组:"<<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个数在数组5对数组A中的N个整数从小到大进行连续编号,要求不能改变这A中的存放顺序,且相同的数编号也相同。例如,若数组A中数为(5,3,4,7,3,5,6),则输出为(3,1,2,5,1,3,4)。分析:采用3个数组,它们元素值含义如下:#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保存第一个数据cout<<"a数组各元素的值:"<<'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;若发现某个abj小于abk,则将k修改为jif(k!=i)t=bi;bi=bk;bk=t;cout<<"b数组各元素的值:"<<'n'for(i=0;i<N;i+)cout<<
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教版八年级物理上册《3.1温度》同步测试题及答案
- 煤矿开采区域地下水污染防治技术路径
- 2024届四川省成都龙泉中学高考化学三模试卷含解析
- 2024高中地理第二章自然环境中的物质运动和能量交换2-1不断变化的地表形态内力作用与地表形态学案湘教版必修1
- 2024高中生物专题2微生物的培养与应用课题3分解纤维素的微生物的分离课堂演练含解析新人教版选修1
- 2024高中语文第三单元因声求气吟咏诗韵自主赏析苏幕遮学案新人教版选修中国古代诗歌散文欣赏
- 2024高考地理一轮复习第四章地表形态的塑造第一讲营造地表形态的力量学案
- 2024高考化学一轮复习第3章自然界及材料家族中的元素第4讲海水中的化学元素学案鲁科版
- 2024高考化学二轮复习示范卷5含解析
- 2024高考地理一轮复习四地理计算专练含解析
- ITV系列电气比例阀英文说明书
- SL 537-2011 水工建筑物与堰槽测流规范
- 质量管理-AQL抽样基础知识培训课件
- 剧本杀·剧本-四人本《暗船》
- 《普通话》教学讲义课件
- 期货基础知识TXT
- 六年级上册道德与法治课件-第一单元 我们的守护者 复习课件-人教部编版(共12张PPT)
- 陕西省西安市各县区乡镇行政村村庄村名居民村民委员会明细
- 安全管理体系及保证措施
- 启闭机试运行记录-副本
- 人民医院财务科工作流程图
评论
0/150
提交评论