程序总结c++答案.doc_第1页
程序总结c++答案.doc_第2页
程序总结c++答案.doc_第3页
程序总结c++答案.doc_第4页
程序总结c++答案.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

程序总结c+答案 程序总结第三章 1、输入一个年份,判断该年是否为闰年,并输出判断结果。 #includeusing namespacestd;void main()int year;coutyear;if(year%4=0&year%100!=0|year%400=0)cout 2、给学生写评语,需将学生的考试成绩(整数)由百分制转换为4级制,标准如下等级分数段A10090分B8980分C7960分D60分以下#includeusing namespacestd;void main()int grade;char x;cout请输入百分制成绩(要求是整数):grade;switch(grade/10)case10:case9:x=A;break;case8:x=B;break;case7:case6:x=C;break;default:x=D;cout成绩等级为: 3、从键盘任意输入三个数,计算并输出它们的最大数。 #includeusing namespacestd;void main()double a,b,c,max;coutabc;if(ab)if(ac)max=a;else max=c;else if(bc)max=b;else max=c;coutmax= 4、由键盘输入一个四则运算式子,输出该运算式子和运算结果。 方法一ifelse实现#includeusing namespacestd;void main()double x,y;char op;cout请输入算式xopy;if(op=+)cout 2、求Fibonai数列前20项#include#includeusing namespacestd;void main()int i,f20=1,1;for(i=2;i20;i+)fi=fi-2+fi-1;for(i=0;i20;i+)if(i%5=0)cout (5) 3、利用折半查找法,在按从小到大顺序排列的十个数据中查找是否有键盘输入的数值x。 #includeusing namespacestd;void main(void)int a10,i,bot=0,mid,top=9,x,pos;cout请输入10个数(升序):ai;cout请输入欲查找的数:x;while(botx)top=mid-1;else bot=mid+1;if(bottop)cout没有找到 4、使用选择排序法将键盘输入的10个数按从小到大的方式排序并输出。 #includeusing namespacestd;void main()int i,j;double temp;const intN=10;double aN;cout输入需排序的ai;for(i=0;iaj)temp=ai;ai=aj;aj=temp;cout排序后的 5、用交换排序法(冒泡法)按升序对整型数组排序。 #includeusing namespacestd;void main()const intN=10;int i,j;double tmp,aN+1;cout输入需排序的ai;for(i=1;i=N-1;i+)for(j=1;jaj+1)tmp=aj;aj=aj+1;aj+1=tmp;cout结果为: 6、将一个整型数x插入到降序排列的整型数组中。 #includeusing namespacestd;void main(void)const intN=10;int aN+1,i,x;cout请输入10个数(降序):ai;cout请输入欲插入的数:x;for(i=N-1;i=0;i-)if(ai 7、求一个整型数值二维表中的最大值和最小值所在的行列号。 #includevoid main()int m34,i,j;int max_value,max_row=0,max_col=0;int min_value,min_row=0,min_col=0;for(i=0;i3;i+)for(j=0;jmij;max_value=m00;min_value=m00;for(i=0;i3;i+)for(j=0;jmax_value)max_value=mij;max_row=i;max_col=j;if(mijajk;for(j=0;j 9、求两个矩阵的和#include#includeusing namespacestd;void main()const intM=3,N=2;int i,j;float aM+1N+1,bM+1N+1;float cM+1N+1=0.0;coutInput arraya:aij;/输入数组a coutInput arrayb:bij;/输入数组b for(i=1;i=M;i+)for(j=1;j=N;j+)cij=aij+bij;coutoutput Arrayc: (4) 10、输出以下杨辉三角形(输出10行)11112113311464115101051#include#includeusing namespacestd;const intN=10;void main()int i,j,aNN;for(i=0;i (6) 11、找出二维数组中的一个鞍点,即该位置上的元素在该行上最大,在该列上最小。 也可能没有鞍点。 #includeusing namespacestd;const intN=20main()int aNN;int m,n,i,j,k,col,t1,t2;coutmn;coutaij;for(i=0;iakcol)t2=akcol;if(t1=t2)break;if(t1=t2)cout该矩阵其中的一个鞍点为: 12、有一个分数系列2/1,3/2,5/3.(即后一项的分母为前一项的分子,后项的分子为前一项分子与分母之和),求其前n项之和。 #includeusing namespacestd;void main()int n,i;float sum,a100,b100;a0=1.0;b0=2.0;sum=b0/a0;coutn;for(i=1;i 13、设有有序(值从小到大)的两组数据,将这两组数据有序合并(合并过程数据始终保持有序)。 #includeusing namespacestd;void main()int a5,b6,c11,ia,ib,ic=0;cout请输入数组a的5个元素(从小到大):;for(ia=0;iaaia;cout请输入数组b的6个元素(从小到大):;for(ib=0;ibbib;ia=0;ib=0;while(ia5&ib6)if(aia 14、输入n个数,找出所有大于n个数的平均值的那些数及最小数。 #includeusing namespacestd;int main()double average=0;int a100,min,i,n;cout请输入n的值(nn;cout请输入数据ai;cout第 15、有一个3?4的矩阵,要求编程序找出每一行中值最大的那个元素并与该行第1列的元素交换。 #includeusing namespacestd;int main()int a34,i,j,k,max,t;for(i=0;i3;i+)for(j=0;j4;j+)cout请输入第aij;cout (4);cout 1、把一个整数插入到一个由小到大的由十个数组成的有序数列中,并仍然保持由小到大的顺序。 用指针实现。 #includeusing namespacestd;void main(void)const intN=10;int aN+1,i,x,*t;cout请输入10个数(升序):*t;cout请输入欲插入的数:x;for(t=a+N-1;t=a;t-)if(*tx)*(t+1)=*t;else break;*(t+1)=x;cout结果为: (3)*t;cout 2、从键盘输入整数集合a、b的元素个数和各个元素的值,计算并输出其交集。 #include#includevoid main()const intM=20,N=10;int aM,bN,cM;int d,e,f=0,*pa,*pb,*pc;cout输入数组a中元素的个数d;cout输入数组a的*pa;cout输入数组b中元素的个数e;cout输入数组b的*pb;for(pa=a,pc=c;pa (3)*pc;cout 3、从键盘输入整数集合a、b的元素个数和各个元素的值,计算并输出其并集。 #include#includevoid main()const intM=20,N=10;int aM,bN,cM+N;int d,e,f=0,*pa,*pb,*pc;cout输入数组a中元素的个数d;cout输入数组a的*pa;cout输入数组b中元素的个数e;cout输入数组b的*pb;for(pa=a,pc=c;pa=a+d)*pc+=*pb;f+;cout并集c的各个元素依次为: (3)*pc;cout 4、使用指针法在的一组数据中,找出其中最大值所在的位置并输出。 #includeusing namespacestd;int main()int a10=34,3,23,223,14,56,2,0,4,10,*p,*max;max=a;/预定义最大值为数组第一项cout数组a的数值为*max)max=p;cout 1、设计一个程序,用来计算键盘输入的两个整数的和、差。 #includeusing namespacestd;void main()int a=0,b=0,c=0,d=0;coutintput a,b:ab;int add(int,int);int sub(int,int);c=add(a,b);d=sub(a,b);couta+b= 2、编写一个程序,计算x2*y3的结果,存储在变量answer中,并输出该值。 设x和y都为整型数。 #include#includeusing namespacestd;int main()int x=0;int y=0;int answer=0;cout请输入xx;cout请输入yy;answer=pow(x,2)*pow(y,3);cout答案是 3、为小学生出10以内的加减算术题。 #include#include#includeusing namespacestd;void main()int a=0;int b=0;srand(time(NULL);a=0+rand()%(10-0+1);b=0+rand()%(10-0+1);cout 4、调用自定义子函数add(),求5a+4b#includeusing namespacestd;double add(double x,double y)coutx=ab;c=add(5*a,4*b);coutc= 5、定义子函数,完成阶乘运算,计算1!+2!+3!+m!#includeusing namespacestd;int fa(int n)for(int fac=1,i=1;i=n;i+)fac=fac*i;return fac;void main()const intm=8;for(int sum=0,i=1;i=m;i+)sum=sum+fa(i);coutm= 6、编程将6到50之间的偶数分解为两个素数之和。 #include#includeusing namespacestd;void main()int i,j;bool prime(int n);for(i=6;i=50;i+=2)for(j=3;j=i/2;j+=2)if(prime(j)&prime(i-j)cout 7、编写子函数,实现x、y交换。 方法一#includeusing namespacestd;void swap(int&,int&);void main()int x (5),y (10);swap(x,y);coutx= (5),y (10),*p1=&x,*p2=&y;coutx=ai;invert(a,10);coutThe sortednumbers is:ai;invert(a,10);for(i=0;i10;i+)coutb)t=a;a

温馨提示

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

最新文档

评论

0/150

提交评论