大一期末软件编程考试20题_第1页
大一期末软件编程考试20题_第2页
大一期末软件编程考试20题_第3页
大一期末软件编程考试20题_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2. 大一期末C+考试20题1.求100200以内的素数#include<iostream>usingnamespacestd;intmain()inti,m;for(i=100;i<=200;i+)for(m=2;m<=(i/2);m+)if(i%m=0)break;if(m>(i/2)cout<<i<<endl;return0;«C+同步练习及实验指导P31第1题。#include<iostream>#include<cmath>usingnamespacestd;floatfun(floatx)(re

2、turnx*x-5*x+4;)intmain()(cout<<fun(2)<<endl;floatx;cin>>x;3 cout<<fun(x+15)<<endl;cout<<fun(sin(x)<<endl;return0;).C+语言程序设计教程P48编程题第(2)题摄氏温度与华氏温度的转换公式为c=5(f-32)/9,其中c为摄氏温度,f和华氏温度。写出两者互相转换的表达式,将表达式放到程序中,以整数形式输入一种温度值,以整数形式输出转换后温度值。#include<iostream>using

3、namespacestd;intmain()intf,c,i;cout<<"摄氏度-华氏度请输入1,华氏度f摄氏度请输入2"<<endl;cin>>i;cout<<endl;if(i=1)cout<<"请输入摄氏温度"cin>>c;f=9.0/5*c+32;cout<<"对应的华氏温度为"<<f<<endl;if(i=2)cout<<"请输入华氏温度"cin>>f;c=5.0/9*(f

4、-32);cout<<"对应的摄氏温度为"<<c<<endl;return0;4 .C+语言程序设计教程P69(4)百钱百鸡问题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,翁、母、雏各几何?(改写本章百钱百鸡程序,减少循环层数以及循环次数,优化循环。)#include<iostream>usingnamespacestd;intmain()inti,j;for(i=0;i<=20;i+)for(j=0;j<=33;j+)if(5*i+3*j+(100-i-j)/3)=100&&(1

5、00-i-j)%3=0)cout<<"应翁,鸡鸡雏各有:"<<i<<""<<j<<""<<(100-i-j)<<endl;5 return0;.C+语言程序设计教程P69(9)编写一程序,按下列公式求圆周率,精确到最后一项绝对值小于10A(-8)#include<iostream>#include<cmath>usingnamespacestd;intmain()(doublepi=0,i=1,n=1;|while(fabs(1

6、.0/n)>1E-8)/在手机上1e-8运行不出结果,1e-6倒是可以pi=pi+(1.0)/n*i;i=-i;n=n+2;pi=4*pi;cout<<pi<<endl;6,C+同步练习及实验指导P40第1题。doublesum(doublea,doubleb)(returna+b;)intsum(inta,intb,intc)(returna+b+c;)intsum(int*a,intn)(ints=0;for(inti=0;i<n;i+)s+=ai;returns;)7,C+语言程序设计教程P85例4-7。编写3个名为add的重型函数,分别实现两个整数相

7、加,两个实数相加,一个整数和一个实数相加,一个实数和一个整数相加的功能。#include<iostream>usingnamespacestd;intadd(intx,inty)cout<<"(int,int)t"returnx+y;doubleadd(doublex,doubley)(cout<<"(double,doyble)t"returnx+y;intadd(intx,doubley)(cout<<"(int,double)t"cout<<add(9,8)<&l

8、t;endl;cout<<add(9.0,8.0)<<endl;8 cout<<add(9,8.0)<<endl;cout<<add(9.0,8)<<endl;return0;.用递归方法求n!。#include<iostream>usingnamespacestd;doublejiecheng(doublex)(if(x=1)return1;elsereturnx*jiecheng(x-1);intmain()(doublex;9 cin>>x;cout<<jiecheng(x)<

9、;<endl;return0;.通过函数调用(地址调用、引用调用)实现对两个变量值进行交换.输入10个整数,将其中最小的数与第一个数交换,把最大数与最后一个数交换。请10设计3个函数来完成该操作:输入10个整数的函数;交换处理函数;输出个整数的函数。主函数通过上述调用完成程序功能#include<iostream>usingnamespacestd;voidinput(inta口,intn)inti;for(i=0;i<n;i+)cin>>ai;voidchange(inta口,intn)inti,max,min;min=a0;max=a0;for(i=0;

10、i<(n-1);i+)max=(maxai+1?max:ai+1);min=(min<ai+1?min:ai+1);for(i=0;i<n;i+)if(ai=max)ai=an-1;an-1=max;if(ai=min)ai=a0;a0=min;voidoutput(inta口,intn)inti;for(i=0;i<n;i+)cout<<ai<<""intmain()inta10;input(a,10);change(a,10);output(a,10);return0;.读入20个整数,统计非负数个数、并计算非负数之和#i

11、nclude<iostream>usingnamespacestd;intmain()inta20,i,s=0,m=0;for(i=0;i<20;i+)cin>>ai;if(ai>=0)cout<<"非负数个数是:"<<m<<endl;cout<<"非负数之和为:"<<s<<endl;return0;),求x=1-1/22+1/333-1/4444+1/55555+1/999999999#include<iostream>#includ

12、e<cmath>usingnamespacestd;intmain()1longinta;ints=1,n=1;floatx=0.0,b=1.0,t;-1while(n<9)x=x+b;n+;t=a=n;while(t>1)a=a*10+n;t-;)s=-s;b=(float)s/a;)cout<<x<<endl;10 return0;).设计Sort函数实现冒泡排序,主调函数通过调用该函数实现排序功能。voidsort(inta口,intn)1inti,temp,j;for(i=0;i<n;i+)for(j=i;j<n;j+)if(

13、ai<=aj)(temp=aj;aj=ai;14 ai=aj;).C+同步练习及实验指导P61第3题。#include<iostream>usingnamespacestd;voidmain(void)constintN=10;intaN+1=10,25,36,40,53,62,77,81,90,102,i;intinsert;cout<<"请输入要插入的数据"cin>>insert;for(i=0;i<N;i+)if(ai>insert)break;for(intj=N-1;j>=i;j-)aj+1=aj;15

14、ai=insert;for(i=0;i<N+1;i+)cout<<ai<<endl;.«C+同步练习及实验指导P74第1题。编程实现两字符串的连接,要求使用资费数组保存字符串(要求不使用库函数)#include<iostream>usingnamespacestd;voidmain()inti=0,j=0;chars1200,s2100;cout<<"请输入第一个字符串"cin>>s1;cout<<"请输入第二个字符串"cin>>s2;while(s1i)

15、i+;16 while(s2j)s1i+=s2j+;s1i='0'cout<<"连接后的字符串为:"<<s1<<endl;).求矩阵a的转置矩阵b,并按矩阵形式输出两矩阵。#include<iomanip>#include<iostream>usingnamespacestd;voidmain(void)inta23=1,2,3,4,5,6,b32;int(*p)3=a,(*q)2=b,i,j;for(i=0;i<2;i+)for(j=0;j<3;j+)*(*(q+j)+i)=*(*(p

16、+i)+j);for(i=0;i<2;i+)for(j=0;j<3;j+)cout<<setw(5)<<*(*(p+i)+j);cout<<endl;for(i=0;i<3;i+)for(j=0;j<2;j+)17 cout<<setw(5)<<*(*(q+i)+j);cout<<endl;.编程根据x的值,计算分段函数y的值。y的计算公式为。x(x0)exsinx(0x10)y3x3(10x20)(32x)lnx(x20)#include<iostream>#include<cm

17、ath>usingnamespacestd;voidmain()(intx;cout<<"请输入x的值:";cin>>x;if(x<0)cout<<"y="<<(-x);if(x>=0&&x<10)cout<<"y="<<exp(x)*sin(x);if(x>=10&&x<20)cout<<"y="<<x*x*x;18 if(x>=20)cout&

18、lt;<"y="<<(3+2*x)*log(x);.设有一整型二维数组a45,从键盘上输入数据并求a数组中最大、最小元素值及所以元素的平均值#include<iostream>usingnamespacestd;intmain()Iinta45,i,j,max,min,sum=0;floataverage;|for(i=0;i<4;i+)for(j=0;j<5;j+)cin>>aij;min=a00;max=a00;for(i=0;i<4;i+)for(j=0;j<5;j+)(max=(max>aij?max:aij);min=(min<aij?min:aij);sum=sum+aij;average=sum/20.0;cout<<"最大的数是"<<max<<endl;cout<<"最小的数是"<<min<<endl;cout<<"平均数是"<&

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论